GitHub里程碑管理协议

一个用于管理GitHub里程碑的模型上下文协议(MCP)服务器。

  • by Kalteew
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 Kalteew/GithubMilestoneMCP

使用说明

GithubMilestoneMCP

用于管理GitHub里程碑的模型上下文协议(MCP)服务器。

先决条件

安装

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 移除里程碑