mcpField
G
GitHub MCP Server

GitHub MCP Server

ローカル
github.com/yamagaiバージョン管理082 週間前に更新

GitHub MCP Server について

GitHub MCP Serverは、LLMアプリケーションにGitHub APIへの標準インターフェースを提供するGo製サーバーです。リポジトリやファイルの操作に加え、Pull Requestの作成とレビューに対応し、stdioまたはSSEで動作します。

主な機能

  1. 01リポジトリの検索と作成
  2. 02ファイルの読み取り・作成・更新
  3. 03複数ファイルのプッシュ
  4. 04リポジトリのフォーク
  5. 05Pull Requestの作成と詳細取得
  6. 06Pull Requestレビューの追加

活用シーン

  1. 01条件に合うリポジトリの検索
  2. 02GitHubリポジトリ内のファイル更新
  3. 03複数ファイルの変更をまとめて送信
  4. 04Pull Requestの作成とレビュー

MCP 対応

GitHubのリポジトリ、ファイル、Pull Requestの操作をMCPツールとして提供します。stdioとSSEのトランスポートに対応し、GitHubトークンで認証します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"github-mcp-server-sse": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"build"
]
}
}
}
起動コマンドdocker run -i --rm build

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
ocibuild

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

プロジェクトの README より

GitHub MCP Server

Model Context Protocol (MCP) を使用したGitHub統合サーバーです。このサーバーはLLM(大規模言語モデル)アプリケーションがGitHub APIと通信するための標準化されたインターフェースを提供します。

機能

このサーバーは以下の機能を提供します:

  • リポジトリの検索
  • リポジトリの作成
  • ファイルの内容の取得
  • ファイルの作成・更新
  • 複数ファイルの一括プッシュ
  • リポジトリのフォーク
  • Pull Requestの作成
  • Pull Requestの詳細取得
  • Pull Requestへのレビュー追加

インストール

go get github.com/yamagai/github-mcp-server-sse

使用方法

標準入出力モード (Stdio)
# 環境変数でGitHubトークンを設定
export GITHUB_TOKEN=your_github_token

# サーバーを起動(デフォルトは標準入出力モード)
github-mcp

# または明示的に標準入出力モードを指定
github-mcp -t stdio
SSEモード
# 環境変数でGitHubトークンを設定(または各リクエストのAuthorizationヘッダーで指定)
export GITHUB_TOKEN=your_github_token

# デフォルトポート(8080)でSSEサーバーを起動
github-mcp -t sse

# カスタムポートでSSEサーバーを起動
github-mcp -t sse -p 3000

SSEモードでは、HTTPリクエストのAuthorizationヘッダーにGitHubトークンを含めることもできます:

curl -H "Authorization: Bearer YOUR_GITHUB_TOKEN" http://localhost:8080/events
Dockerコンテナでの使用

SSEモードでサーバーを実行するDockerコンテナが提供されています。

ビルド方法
# Dockerイメージをビルド
docker build -t github-mcp-server-sse .
実行方法
# 環境変数でGitHubトークンを指定して実行
docker run -p 8080:8080 -e GITHUB_TOKEN=your_github_token github-mcp-server-sse

# カスタムポートで実行(環境変数でポートを指定)
docker run -p 3000:3000 -e GITHUB_TOKEN=your_github_token -e PORT=3000 github-mcp-server-sse

ツール一覧

ツール名説明
search_repositoriesGitHubリポジトリを検索します
create_repository新しいGitHubリポジトリを作成します
get_file_contentsGitHubリポジトリからファイルの内容を取得します
create_or_update_fileGitHubリポジトリにファイルを作成または更新します
push_files複数のファイルを一度にGitHubリポジトリにプッシュします
fork_repositoryGitHubリポジトリをフォークします
create_pull_requestGitHubリポジトリに新しいPull Requestを作成します
get_pull_requestGitHubリポジトリからPull Requestの詳細を取得します
create_pull_request_reviewPull Requestにレビューを作成します

開発

# 依存関係の解決
go mod tidy

# ビルド
go build

# テスト
go test ./...

コマンドラインオプション

オプション短縮形説明デフォルト値
--transport-t使用するトランスポートタイプ (stdio または sse)stdio
--port-pSSEサーバーのポート番号8080

参考

このプロジェクトはMCP-Goライブラリを使用しています。詳細なドキュメントについては、そちらを参照してください。

ライセンス

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。