Github MCP サーバー
Github 用のモデル コンテキスト プロトコルサーバー。
MCP を介して Github との統合を提供し、LLM が Github と対話できるようにします。
インストール
手動インストール
Githubアカウントのアクセストークンを作成または取得する: ガイド
Claude Desktop にサーバー設定を追加します。
MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows:このガイドを確認してください
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "github-mcp-server"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "your_personal_github_access_token"
}
}
}
}Related MCP server: GitHub MCP Server
コンポーネント
ツール
search_repositories: GitHub でリポジトリを検索します。必要な入力:
query(文字列): リポジトリを検索するためのクエリ。page(数値、デフォルト: 30、最大: 100): ページ区切りのページ番号。per_page(数値、デフォルト: 30、最大: 100): ページあたりの結果数。
search_issues: リポジトリから問題を検索します。必要な入力:
query(文字列): リポジトリを検索するためのクエリ。page(数値、デフォルト: 1): ページ区切りのページ番号。per_page(数値、デフォルト: 30、最大: 100): ページあたりの結果数。order(オプションの文字列、デフォルト:desc): 並べ替え順序 (ascまたはdesc)。sort(オプションの文字列、デフォルト:best match): 並べ替えフィールド (comments、reactions、reactions-+1、reactions--1、reactions-smile、reactions-thinking_face、reactions-heart、reactions-tada、interactions、createdまたはupdatedいずれかになります)。
search_commits: リポジトリからコミットを検索します。必要な入力:
query(文字列): リポジトリを検索するためのクエリ。page(数値、デフォルト: 1): ページ区切りのページ番号。per_page(数値、デフォルト: 30、最大: 100): ページあたりの結果数。order(オプションの文字列、デフォルト:desc): 並べ替え順序 (ascまたはdesc)。sort(オプションの文字列、デフォルト:best match): ソートフィールド (committer-dateまたはauthor-dateのいずれかになります)。
search_code: リポジトリからコードを検索します。必要な入力:
query(文字列): リポジトリを検索するためのクエリ。page(数値、デフォルト: 1): ページ区切りのページ番号。per_page(数値、デフォルト: 30、最大: 100): ページあたりの結果数。
search_users: リポジトリからユーザーを検索します。必要な入力:
query(文字列): リポジトリを検索するためのクエリ。page(数値、デフォルト: 1): ページ区切りのページ番号。per_page(数値、デフォルト: 30、最大: 100): ページあたりの結果数。order(オプションの文字列、デフォルト:desc): 並べ替え順序 (ascまたはdesc)。sort(オプションの文字列、デフォルト:best match): 並べ替えフィールド (followers、repositories、joinedいずれかになります)。
search_topics: トピックを検索します。必要な入力:
query(文字列): リポジトリを検索するためのクエリ。page(数値、デフォルト: 1): ページ区切りのページ番号。per_page(数値、デフォルト: 30、最大: 100): ページあたりの結果数。
search_labels: リポジトリ内のラベルを検索します。必要な入力:
query(文字列): リポジトリを検索するためのクエリ。page(数値、デフォルト: 1): ページ区切りのページ番号。per_page(数値、デフォルト: 30、最大: 100): ページあたりの結果数。order(オプションの文字列、デフォルト:desc): 並べ替え順序 (ascまたはdesc)。sort(オプションの文字列、デフォルト:best match): 並べ替えフィールド (createdまたはupdatedいずれかになります)。
list_repositories_issues: リポジトリから問題を一覧表示します。必要な入力:
owner(文字列): リポジトリの所有者。repo(文字列): リポジトリ名。page(オプションの数値、デフォルト: 1): ページ区切りのページ番号。per_page(オプションの数値、デフォルト: 30、最大: 100): ページあたりの結果数。direction(オプションの文字列、デフォルト:desc): 並べ替えの方向 (ascまたはdesc)。sort(オプションの文字列、デフォルト:created): ソートフィールド (created、comments、updatedいずれかになります)。since(オプションの文字列): 指定された時間以降に最後に更新された結果 (ISO 8601 形式: YYYY-MM-DDTHH:MM:SSZ)。labels(オプションの文字列):カンマ区切りのラベル名。例:bug、ui、@high。milestone(オプションの文字列): マイルストーン番号。assignee(オプションの文字列): 担当者ユーザーの名前 (全員の場合は*)。creator(オプションの文字列): 問題を作成したユーザー。(全員の場合は*)。mentioned(オプションの文字列): 問題で言及されたユーザー。
get_issue: リポジトリから問題を取得します。必要な入力:
owner(文字列): リポジトリの所有者。repo(文字列): リポジトリ名。issue_number(数値): 問題番号。
list_repositories_pull_requests: リポジトリからのプルリクエストを一覧表示します。
必要な入力:
owner(文字列): リポジトリの所有者。repo(文字列): リポジトリ名。page(オプションの数値、デフォルト: 1): ページ区切りのページ番号。per_page(オプションの数値、デフォルト: 30、最大: 100): ページあたりの結果数。direction(オプションの文字列、デフォルト:desc): 並べ替えの方向 (ascまたはdesc)。sort(オプションの文字列、デフォルト:created): 並べ替えフィールド (created、popularity、long-running、updatedのいずれかになります)。head(オプションの文字列): user:ref-name または organization:ref-name の形式で、head ユーザーまたは head 組織とブランチ名でプルをフィルターします (例: github:new-script-format または octocat:test-branch)。base(オプションの文字列): ベースブランチ名でプルをフィルタリングします。(例: gh-pages)。
get_pull_request: リポジトリからプルリクエストを取得します。
必要な入力:
owner(文字列): リポジトリの所有者。repo(文字列): リポジトリ名。pull_request_number(number): プルリクエスト番号。
使用例
Github と対話するために使用できるプロンプトの例をいくつか示します。
「modelcontextprotocol」→
search_repositoriesツールを実行して、modelcontextprotocol が記述されているリポジトリを見つけます。「modelcontextprotocol サーバー リポジトリの 739 の問題とは何ですか」→
get_issueツールを実行して、modelcontextprotocol サーバー リポジトリから 739 の問題を見つけます。「modelcontextprotocol サーバー リポジトリの 717 PR とは何ですか」→
get_pull_requestツールを実行して、modelcontextprotocol サーバー リポジトリから 717 PR を見つけます。
発達
依存関係をインストールします:
pnpm install.envで Github アクセス トークンを設定します。
GITHUB_PERSONAL_ACCESS_TOKEN=<your_personal_github_access_token>watch を使用してローカルで実行します。
pnpm devサーバーを構築します。
pnpm buildインスペクタを使用したローカルデバッグ:
pnpm inspectorThis server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.