Github MCP サーバー
Github 用のモデル コンテキスト プロトコルサーバー。
MCP を介して Github との統合を提供し、LLM が Github と対話できるようにします。
インストール
手動インストール
Githubアカウントのアクセストークンを作成または取得する: ガイド
Claude Desktop にサーバー設定を追加します。
MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows:このガイドを確認してください
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 を見つけます。
発達
依存関係をインストールします:
.envで Github アクセス トークンを設定します。
watch を使用してローカルで実行します。
サーバーを構築します。
インスペクタを使用したローカルデバッグ: