mcpField
G
GitHub GraphQL MCP Server

GitHub GraphQL MCP Server

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

GitHub GraphQL MCP Server について

GitHub GraphQL MCP Serverは、単一のクエリ・ミューテーション用ツールを通じて、GitHubのGraphQL APIを開発者やアシスタントに提供します。操作変数とエラー報告に対応し、GitHub Personal Access Tokenで認証します。

主な機能

  1. 01GitHub GraphQLクエリとミューテーションの実行
  2. 02操作変数の指定
  3. 03エラー処理と報告
  4. 04クエリ例とドキュメント

活用シーン

  1. 01GitHubリポジトリの詳細を取得する
  2. 02GraphQLでリポジトリを検索する
  3. 03GitHubユーザー情報を照会する

MCP 対応

MCPサーバーは、GitHub APIに対するGraphQLクエリとミューテーションを実行するツールを提供します。MCPクライアントは操作変数を渡せます。利用にはGitHub Personal Access Tokenが必要です。

設定

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

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

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

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

詳細

GitHub GraphQL MCP Server

QuentinCody/github-graphql-mcp-server context

GitHub の GraphQL API にアクセスするための Model Context Protocol(MCP)サーバーです。このサーバーは、GitHub の API に対して任意の GraphQL クエリやミューテーションを実行できるツールを 1 つ公開します。

機能

  • GitHub の API に対するあらゆる GraphQL クエリの実行
  • 包括的なエラー処理と報告
  • クエリ例を含む詳細なドキュメント
  • GraphQL の操作における変数のサポート

前提条件

  • Python 3.10 以降
  • GitHub のパーソナルアクセストークン(PAT)

インストール

  1. このリポジトリをクローンします
  2. 仮想環境をセットアップします(推奨):
    # On macOS/Linux
    python3 -m venv .venv
    source .venv/bin/activate
    
    # On Windows
    python -m venv .venv
    .venv\Scripts\activate
    
  3. 依存関係をインストールします:
    pip install -r requirements.txt
    

使い方

サーバーの実行
# If using a virtual environment, make sure it's activated
source .venv/bin/activate  # On Windows: .venv\Scripts\activate

# Run the server with your GitHub token
GITHUB_TOKEN=your_github_token_here python github_graphql_mcp_server.py
Claude for Desktop の設定

以下を Claude Desktop の設定ファイルに追加します:

{
  "github-graphql": {
    "command": "/absolute/path/to/your/.venv/bin/python",
    "args": [
        "/absolute/path/to/github_graphql_mcp_server.py"
    ],
    "options": {
        "cwd": "/absolute/path/to/repository"
    },
    "env": {
        "GITHUB_TOKEN": "your_github_token_here"
    }
  }
}

/absolute/path/to/ をサーバーファイルの実際のパスに置き換え、GitHub トークンを追加します。

クエリの例
リポジトリ情報の取得
query GetRepo($owner: String!, $name: String!) {
  repository(owner: $owner, name: $name) {
    name
    description
    stargazerCount
    url
    createdAt
    owner {
      login
      avatarUrl
    }
  }
}

変数:

{
  "owner": "octocat",
  "name": "Hello-World"
}
リポジトリの検索
query SearchRepos($query: String!, $first: Int!) {
  search(query: $query, type: REPOSITORY, first: $first) {
    repositoryCount
    edges {
      node {
        ... on Repository {
          name
          owner { login }
          description
          stargazerCount
          url
        }
      }
    }
  }
}

変数:

{
  "query": "language:python stars:1000",
  "first": 5
}
ユーザー情報の取得
query GetUserInfo($login: String!) {
  user(login: $login) {
    name
    login
    bio
    avatarUrl
    followers {
      totalCount
    }
    repositories(first: 5, orderBy: {field: STARGAZERS, direction: DESC}) {
      nodes {
        name
        description
        stargazerCount
      }
    }
  }
}

変数:

{
  "login": "octocat"
}

GitHub API のレート制限

GitHub の API レート制限に注意してください:

  • 認証済みリクエスト:1 時間あたり 5,000 件
  • 未認証リクエスト:1 時間あたり 60 件

トラブルシューティング

問題が発生した場合:

  1. GitHub トークンに適切な権限があることを確認します
  2. 仮想環境が適切にセットアップされ、有効化されていることを確認します
  3. トークンが環境変数に正しく設定されていることを確認します
  4. Claude Desktop を使用している場合は、Python へのパスが正しいことを確認します(仮想環境の Python への絶対パスを使用してください)
  5. サーバーログでエラーメッセージを確認します
  6. GraphQL クエリが GitHub のスキーマに対して有効であることを確認します
  7. 設定を変更した後は Claude for Desktop を再起動します
よくあるエラー

spawn python ENOENT

  • このエラーは、Python 実行ファイルが見つからなかったことを意味します
  • 解決策:仮想環境内の Python 実行ファイルへのフルパスを使用します(例:/path/to/your/.venv/bin/python)

ModuleNotFoundError: No module named 'httpx'(またはその他のパッケージ)

  • Python 環境に必要な依存関係がインストールされていません
  • 解決策:仮想環境を有効化して、pip install -r requirements.txt を実行してください

Error: GitHub token not found in environment variables

  • サーバーが GitHub トークンを見つけられませんでした

  • 解決策:GITHUB_TOKEN 環境変数が設定されていることを確認してください

ライセンス

MIT

コメント

MCP は初めてですか?

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

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