使用说明
Github 依赖 MCP 服务器
获取指定存储库的Github Dependabot警报。
需求
- 紫外线:一个快速的Python包安装程序和解析器。用于运行脚本和管理依赖关系。
- Github个人访问令牌:需要使用Github API进行身份验证。确保它具有必要的权限(例如。,
repo,security_events).
设置
-
安装
uv: 按照操作系统的官方安装说明进行操作:- macOS/Linux:
- 使用Homebrew(macOS):
brew install uv - 或者使用curl:
curl -LsSf https://astral.sh/uv/install.sh | sh
- 使用Homebrew(macOS):
- Windows(PowerShell):
irm https://astral.sh/uv/install.ps1 | iex - 其他的方法:参见 紫外线文件.
- macOS/Linux:
-
克隆存储库:
git clone git@github.com:avarant/github-dependabot-mcp-server.git cd github-dependabot-mcp-server -
设置Github身份验证:
首先,如果你还没有Github个人访问令牌(PAT),你需要生成一个PAT:
- 转到Github设置->开发人员设置->个人访问令牌->令牌(经典)。
- 点击“生成新令牌”(或“生成新的令牌(经典)”)。
- 给您的代币一个描述性名称(例如“MCP Dependabot Server”)。
- 设置过期日期。
- 选择必要的范围:
repo(完全控制私有存储库)-访问存储库数据所需。security_events(读取安全事件)-读取Dependabot警报所需。
- 点击“生成令牌”并立即复制生成的令牌。你将无法再看到它。
一旦您有了令牌,此服务器就要求它使用Github API进行身份验证。有两种方法可以提供它:
-
选项1:使用macOS钥匙串(建议在macOS上使用): 该脚本将自动尝试使用
keyring图书馆。-
通过命令行: 在终端中运行以下命令,替换
<your token>使用您的实际Github令牌:# Make sure you are in the project's virtual environment if you have one active # Or install keyring globally if needed: pip install keyring keyring set github_mcp_server personal_access_token # It will prompt you to enter the token securely.或者,使用Python模块:
python -m keyring set github_mcp_server personal_access_token -
通过钥匙链访问UI:
- 打开“钥匙链访问”(应用程序->实用程序)。
- 选择
login钥匙扣和Passwords类别。 - 点击
+按钮添加新项目。 - 输入以下详细信息:
- 钥匙扣项目名称:
personal_access_token - 帐户名称:
github_mcp_server - 密码: 粘贴您的Github令牌。
- 钥匙扣项目名称:
- 单击“添加”。
-
-
选项2:使用环境变量: 如果在钥匙串中找不到令牌,脚本将退回使用
GITHUB_PERSONAL_ACCESS_TOKEN环境变量。如果您使用此方法,脚本将尝试将令牌存储在您的Keychain中以供将来使用(如果keyring功能)。
-
更新您的MCP配置:
编辑您的全局
~/.cursor/mcp.json或创建本地.cursor/mcp.json项目中的文件:{ "mcpServers": { "github": { "command": "docker", "args": [ "run", "-i", "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", "mcp/github" ], "env": { // Optional: Set if NOT using Keychain, or as a fallback. // "GITHUB_PERSONAL_ACCESS_TOKEN": "<your github token>" } }, "github-dependabot": { "command": "uv", "args": [ "--directory", "<absolute path to github-dependabot-mcp-server directory>", "run", "mcp", "run", "main.py" ], "env": { // Optional: Set if NOT using Keychain, or as a fallback. // "GITHUB_PERSONAL_ACCESS_TOKEN": "<your github token>" } } } }注: 替换
<absolute path to github-dependabot-mcp-server directory>你的实际路径。
提供的工具
此MCP服务器提供以下工具:
get_dependabot_alerts(repo_owner: str, repo_name: str):- 获取指定存储库的Dependabot警报。
repo_owner:存储库的所有者(用户名或组织)。repo_name:存储库的名称。- 返回来自Github API的警报对象列表。
用法示例
示例提示
Fetch all dependabot alerts for https://github.com/avarant/github-dependabot-mcp-server