使用说明
GithubMilestoneMCP
用于管理GitHub里程碑的模型上下文协议(MCP)服务器。
先决条件
- Node.js 20+
- 一个 个人访问令牌GitHub 有权限
repo - 码头工人 (容器可选)
安装
npm install
配置
设置以下环境变量:
export GITHUB_PERSONAL_ACCESS_TOKEN=ghp_xxxxxxxxxxxx
发射
开发模式(STDIO)
npm run dev
生产模式(构建后)
npm run build
npm start
使用Docker
塑造形象:
docker build -t github-milestone-mcp .
集装箱启动:
docker run -e GITHUB_PERSONAL_ACCESS_TOKEN github-milestone-mcp
与Claude Code集成
有两种方法可以将此MCP服务器集成到Claude代码中。
选项1-通过Docker(推荐)
1.构建镜像Docker:
docker build -t github-milestone-mcp .
2.将配置添加到 ~/.claude.json (全局配置,适用于所有项目):
{
"mcpServers": {
"github-milestone-mcp": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GITHUB_PERSONAL_ACCESS_TOKEN",
"github-milestone-mcp"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "${GITHUB_PERSONAL_ACCESS_TOKEN}"
}
}
}
}
注: La变量
GITHUB_PERSONAL_ACCESS_TOKEN必须在运行Claude代码的shell环境中定义。
选项2——通过Node.js(无Docker)
添加到 .mcp.json 在项目的根源:
{
"mcpServers": {
"github-milestone-mcp": {
"type": "stdio",
"command": "npx",
"args": ["tsx", "/chemin/vers/GithubMilestoneMCP/src/index.ts"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "${GITHUB_PERSONAL_ACCESS_TOKEN}"
}
}
}
}
自动容器清洁(可选)
Docker容器启动时 --rm但是,如果Claude代码突然关闭,它可能会保持活动状态。要在每次Claude代码停止时自动删除它,请添加钩子 Stop 在 ~/.claude/settings.json :
{
"hooks": {
"Stop": [
{
"matcher": "",
"hooks": [
{
"type": "command",
"command": "docker rm -f $(docker ps -q --filter ancestor=github-milestone-mcp) 2>/dev/null || true"
}
]
}
]
}
}
核查
配置后,重新启动Claude代码。工具 list_milestones, create_milestone等必须显示为可用。
可用工具
| 输出 | 描述 |
|---|---|
list_milestones |
列出存储库的里程碑 |
get_milestone |
获取里程碑的详细信息 |
create_milestone |
创造新的里程碑 |
update_milestone |
更新现有里程碑 |
delete_milestone |
移除里程碑 |