GitHub Actions MCP 服务器
一个用于与GitHub Actions工作流、密钥、环境等进行交互的模型上下文协议(MCP)服务器。
概述
GitHub Actions MCP 服务器提供了工具,帮助 AI 助手与 GitHub Actions 工作流进行交互。它支持:
- 列出、查看和管理 GitHub Actions 工作流
- 验证工作流YAML语法
- 获取工作流运行历史和状态
- 管理GitHub Actions的密钥和环境
- 为常见使用场景生成工作流模板
安装
先决条件
- Python 3.10 或更高版本
- 具有适当权限的GitHub个人访问令牌
- 与MCP兼容的客户端(Amazon Q Developer CLI、Cursor、Cline等)
从源代码安装
目前,此软件包仅支持从源代码安装:
git clone https://github.com/aws-samples/sample-github-actions-mcp-server.git
cd sample-github-actions-mcp-server
pip install -e .注这个包尚未发布到PyPI(Python包索引)。未来版本中将支持从PyPI进行安装。
配置
环境变量
GITHUB_TOKENGitHub 个人访问令牌(如果在工具调用中未提供,则为必需)
MCP客户端配置
在您的MCP客户端配置文件中添加以下内容:
{
"mcpServers": {
"awslabs.github-actions-mcp-server": {
"command": "uvx",
"args": ["your-github-repo"],
"env": {
"GITHUB_TOKEN": "your-github-token",
"FASTMCP_LOG_LEVEL": "ERROR"
}
}
}
}使用方法
可用工具
listWorkflows列出仓库中的 GitHub Actions 工作流getWorkflow获取特定工作流的详细信息和内容listWorkflowRuns列出工作流运行历史createOrUpdateWorkflow创建或更新工作流文件listSecrets列出 GitHub Actions 密钥(仅名称,不包括值)listEnvironments列出 GitHub Actions 环境validateWorkflow验证工作流YAML内容getWorkflowTemplates获取常用工作流程模板
示例提示
- “列出我仓库中的所有GitHub Actions工作流”
- “向我展示我的持续集成(CI)工作流的详细信息”
- “创建一个用于部署到AWS的新工作流”
- “验证此GitHub Actions工作流YAML文件”
- “显示我仓库的最近工作流运行情况”
- “生成一个Python包工作流模板”
安全
此MCP服务器需要GitHub个人访问令牌才能与GitHub仓库进行交互。出于安全考虑:
- 使用具有最低必要权限的令牌
- 安全存储令牌(使用环境变量或密钥管理)
- 永远不要将令牌提交到版本控制系统
- 对于仓库密钥,仅会暴露名称(而非值)
发展
设置开发环境
# Clone the repository
git clone https://github.com/aws-samples/sample-github-actions-mcp-server.git
cd sample-github-actions-mcp-server
# Create and activate virtual environment
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
# Install development dependencies
pip install -e ".[dev]"运行测试
pytest许可证
此项目采用Apache-2.0许可证授权。
做出贡献
见 CONTRIBUTING.md(贡献指南文件) 有关如何为该项目做出贡献的详细信息。
