基本能力
产品定位
GitHub Actions MCP Server 是一个专为GitHub Actions API设计的服务,旨在帮助AI助手管理和操作GitHub Actions的工作流。
核心功能
- 完整的工作流管理:列出、查看、触发、取消和重新运行工作流
- 工作流运行分析:获取工作流运行及其作业的详细信息
- 全面的错误处理:提供清晰的错误消息和增强的细节
- 灵活的类型验证:强大的类型检查,优雅处理API变化
- 安全设计:超时处理、速率限制和严格的URL验证
适用场景
- 自动化CI/CD流程
- 监控和分析工作流运行
- 管理和触发GitHub Actions工作流
工具列表
list_workflows
:列出GitHub仓库中的工作流get_workflow
:获取特定工作流的详细信息get_workflow_usage
:获取工作流的使用统计list_workflow_runs
:列出仓库或特定工作流的所有运行get_workflow_run
:获取特定工作流运行的详细信息get_workflow_run_jobs
:获取特定工作流运行的作业trigger_workflow
:触发工作流运行cancel_workflow_run
:取消工作流运行rerun_workflow
:重新运行工作流
常见问题解答
- 认证错误:确保GitHub令牌具有正确的权限,并正确设置为环境变量
- 速率限制:服务器实现了速率限制以避免达到GitHub API限制
- 类型验证错误:GitHub API响应可能与预期模式不同,服务器实现了灵活验证
使用教程
使用依赖
确保已安装Node.js和npm。
安装教程
bash
git clone https://github.com/ko1ynnky/github-actions-mcp-server.git
cd github-actions-mcp-server
npm install
npm run build
调试方式
在claude_desktop_config.json
中添加以下配置:
json
{
"mcpServers": {
"github-actions": {
"command": "node",
"args": [
"<path-to-mcp-server>/dist/index.js"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>"
}
}
}
}
示例用法
列出仓库中的工作流:
javascript
const result = await listWorkflows({
owner: "your-username",
repo: "your-repository"
});
触发工作流:
javascript
const result = await triggerWorkflow({
owner: "your-username",
repo: "your-repository",
workflowId: "ci.yml",
ref: "main",
inputs: {
environment: "production"
}
});