GitHub操作协议

一个用于全面操作GitHub的MCP服务器,提供Issue、Pull Request、分支和Git操作,具有强大的认证系统和模块化架构。

  • by Takatoshi-Miura
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 Takatoshi-Miura/MCP-GitHub

使用说明

mcp github

GitHub 进行全面的操作MCP (Model Context Protocol) 服务器。Issue、Pull Request、分支Git在强大的认证系统和模块化体系结构中提供操作。

Claude Code 等的MCP 直接从兼容客户机GitHub 管理工作流—Issue创建PR管理、分支操作、Git可无缝执行操作。

✨ 机能

核心功能

Issue管理(4工具)

  • create_issue -新的Issue创建
  • get_issue - Issue获取详细信息和注释
  • update_issue - Issue的更新(标题、正文、状态)
  • add_issue_comment - Issue添加注释

Pull Request管理(4工具)

  • create_pull_request -新的Pull Request创建
  • get_pull_request - PR获取详细信息和注释
  • update_pull_request - PR的更新(标题、正文、状态、基本分支)
  • get_pr_diff - PR差分检索

提交管理(1个工具)

  • get_code_changes_by_date -获取指定期间内的代码更改

高级功能

  • 🔐 简单身份验证: GitHub CLI验证
  • 🏗️ 模块化设计:明确关注事项的分离
  • 🚀 零配置: GitHub CLI立即运行
  • ⚡ TypeScript:完整的模具安全性和现代的ES模块

🚀 快速启动

安装

cd mcp-github
npm install
npm run build

认证设定

GitHub 命令行界面

# 一度だけ実行
gh auth login

# サーバーは自動的にGitHub CLI認証を使用します

设定

MCP 客户端设置(例如:Claude Code)添加到:

{
  "mcpServers": {
    "mcp-github": {
      "command": "node",
      "args": ["/path/to/MCP-GitHub/mcp-github/build/index.js"]
    }
  }
}

🏗️ 体系结构

目录结构

MCP-GitHub/
├── README.md                    # このファイル
├── .gitignore                   # Git除外設定
└── mcp-github/                  # サーバー実装
    ├── src/
    │   ├── index.ts             # MCPサーバーエントリーポイント(9ツール)
    │   ├── api/
    │   │   ├── github-api.ts    # GitHub REST APIクライアント
    │   │   └── types.ts         # TypeScript型定義
    │   ├── auth/
    │   │   └── github-cli-auth.ts # 認証(GitHub CLI)
    │   └── utils/
    │       ├── logger.ts        # ログシステム
    │       └── helpers.ts       # ヘルパー関数
    ├── build/                   # コンパイル済みJavaScript
    ├── package.json
    └── tsconfig.json

主要组件

  • 整合GitHub API客户机:所有GitHub API操作集成API活动
  • GitHub CLI认证: GitHub CLI简化认证
  • 完整的模具安全性:所有GitHub API完整响应TypeScript定义

🔧 开発

构建命令

# 依存関係をインストール
npm install

# TypeScriptをJavaScriptにビルド
npm run build

# ウォッチモード(変更時に自動リビルド)
npm run watch

# ビルドディレクトリをクリーン
npm run clean

🐛 故障排除

认证问题

问题:“GitHub身份验证失败”

解决方法:

  1. GitHub CLI验证: gh auth login
  2. 验证验证状态: gh auth status
  3. 根据需要重新认证: gh auth refresh

构建错误

问题: TypeScript编译错误

解决方法:

npm run clean
npm install
npm run build

API汇率限制

问题:“超过API费率限制”

解决方法:

  • 经验证的请求具有较高的速率限制(5000/小时vs 60/时间)
  • 检查汇率限制: gh api rate_limit
  • 等待速率限制重置