GitHub Actions MCP 服务器
适用于 GitHub Actions API 的 MCP 服务器,使 AI 助手能够管理和操作 GitHub Actions 工作流程。兼容多种 AI 编码助手,包括 Claude Desktop、Codeium 和 Windsurf。
特征
- 完整的工作流管理:列出、查看、触发、取消和重新运行工作流
- 工作流运行分析:获取有关工作流运行及其作业的详细信息
- 全面的错误处理:清晰的错误信息,增强详细信息
- 灵活的类型验证:强大的类型检查,优雅地处理 API 变化
- 以安全为中心的设计:超时处理、速率限制和严格的 URL 验证
工具
list_workflows
- 列出 GitHub 存储库中的工作流程
- 输入:
owner
(字符串):存储库所有者(用户名或组织)repo
(字符串):存储库名称page
(可选数字):分页的页码perPage
(可选数字):每页结果数(最多 100 条)
- 返回:存储库中的工作流列表
get_workflow
- 获取特定工作流的详细信息
- 输入:
owner
(字符串):存储库所有者(用户名或组织)repo
(字符串):存储库名称workflowId
(字符串或数字):工作流程或文件名的 ID
- 返回:有关工作流程的详细信息
get_workflow_usage
- 获取工作流的使用情况统计信息
- 输入:
owner
(字符串):存储库所有者(用户名或组织)repo
(字符串):存储库名称workflowId
(字符串或数字):工作流程或文件名的 ID
- 返回:使用情况统计数据,包括计费分钟数
list_workflow_runs
- 列出存储库或特定工作流程的所有工作流程运行
- 输入:
owner
(字符串):存储库所有者(用户名或组织)repo
(字符串):存储库名称workflowId
(可选字符串或数字):工作流程或文件名的 IDactor
(可选字符串):按触发工作流程的用户进行过滤branch
(可选字符串):按分支过滤event
(可选字符串):按事件类型过滤status
(可选字符串):按状态过滤created
(可选字符串):按创建日期过滤(YYYY-MM-DD)excludePullRequests
(可选布尔值):排除 PR 触发的运行checkSuiteId
(可选数字):按检查套件 ID 进行过滤page
(可选数字):分页的页码perPage
(可选数字):每页结果数(最多 100 条)
- 返回:符合条件的工作流运行列表
get_workflow_run
- 获取特定工作流程运行的详细信息
- 输入:
owner
(字符串):存储库所有者(用户名或组织)repo
(字符串):存储库名称runId
(数字):工作流程运行的 ID
- 返回:有关特定工作流程运行的详细信息
get_workflow_run_jobs
- 获取特定工作流程运行的作业
- 输入:
owner
(字符串):存储库所有者(用户名或组织)repo
(字符串):存储库名称runId
(数字):工作流程运行的 IDfilter
(可选字符串):按完成状态过滤作业(‘最新’,‘全部’)page
(可选数字):分页的页码perPage
(可选数字):每页结果数(最多 100 条)
- 返回:工作流程运行中的作业列表
trigger_workflow
- 触发工作流程运行
- 输入:
owner
(字符串):存储库所有者(用户名或组织)repo
(字符串):存储库名称workflowId
(字符串或数字):工作流程或文件名的 IDref
(字符串):运行工作流的引用(分支、标签或 SHA)inputs
(可选对象):工作流的输入参数
- 返回:有关触发的工作流程运行的信息
cancel_workflow_run
- 取消工作流程运行
- 输入:
owner
(字符串):存储库所有者(用户名或组织)repo
(字符串):存储库名称runId
(数字):工作流程运行的 ID
- 返回:取消操作的状态
rerun_workflow
- 重新运行工作流程
- 输入:
owner
(字符串):存储库所有者(用户名或组织)repo
(字符串):存储库名称runId
(数字):工作流程运行的 ID
- 返回:重新运行操作的状态
与 AI 编码助手一起使用
该 MCP 服务器兼容多种 AI 编码助手,包括 Claude Desktop、Codeium 和 Windsurf。
克劳德桌面
首先,确保你已经构建了项目(参见下面的“构建”部分)。然后,将以下内容添加到你的claude_desktop_config.json
中:
Codeium
将以下配置添加到您的 Codeium MCP 配置文件(通常在基于 Unix 的系统上为~/.codeium/windsurf/mcp_config.json
或在 Windows 上%USERPROFILE%\.codeium\windsurf\mcp_config.json
):
风帆冲浪
Windsurf 使用与 Codeium 相同的配置格式。请按照上图所示,将服务器添加到 Windsurf MCP 配置中。
建造
Unix/Linux/macOS
克隆存储库并构建:
视窗
对于 Windows 系统,使用 Windows 特定的构建命令:
或者,您可以使用附带的批处理文件:
这将在dist
目录中创建运行 MCP 服务器所需的必要文件。
Windows 特定说明
先决条件
- Node.js(v14 或更高版本)
- npm(v6 或更高版本)
在 Windows 上运行服务器
- 使用批处理文件(最简单的方法):这将检查构建是否存在,如果需要则构建,然后启动服务器。
- 直接使用 npm:
在 Windows 上设置 GitHub 个人访问令牌
为了获得完整的功能并避免速率限制,您需要设置您的 GitHub 个人访问令牌。
选项:
- 将其作为参数传递给批处理文件:
- 将其设置为环境变量:
解决 Windows 问题
如果您遇到问题:
- 构建错误:确保 TypeScript 已正确安装。
- 权限问题:确保您在命令提示符中以适当的权限运行命令。
- Node.js 错误:验证您是否使用了兼容的 Node.js 版本。
使用示例
列出存储库中的工作流程:
触发工作流程:
故障排除
常见问题
- 身份验证错误:
- 确保您的 GitHub 令牌具有正确的权限
- 检查令牌是否正确设置为环境变量
- 速率限制:
- 服务器实施速率限制以避免达到 GitHub API 限制
- 如果遇到速率限制错误,请降低请求频率
- 类型验证错误:
- GitHub API 响应有时可能与预期模式不同
- 服务器实现灵活的验证来处理大多数变化
- 如果您遇到持续性错误,请打开一个问题
执照
此 MCP 服务器根据 MIT 许可证获得许可。
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Tools
MCP 服务器通过 GitHub API 提供列出、查看、触发、取消和重新运行工作流的工具,使 AI 助手能够管理 GitHub Actions 工作流。
Related MCP Servers
- AsecurityFlicenseAqualityMCP Server for the GitHub API, providing features for file operations, repository management, and advanced search, with automatic branch creation and comprehensive error handling.Last updated -1843TypeScript
- AsecurityFlicenseAqualityThe Git MCP Server allows AI assistants to perform enhanced Git operations via the Model Context Protocol, supporting core Git functions, branch and tag management, GitHub integration, and more.Last updated -21554TypeScript
- -securityAlicense-qualityAn MCP server that enables AI assistants like Claude to help users manage their GitHub notifications through natural language commands.Last updated -5511TypeScriptMIT License
- -securityAlicense-qualityAn MCP server that wraps around the GitHub CLI tool, allowing AI assistants to interact with GitHub repositories through commands for pull requests, issues, and repository operations.Last updated -123TypeScriptMIT License