Graphql について
Graphqlは、AIアシスタントがGraphQL APIを利用するためのMCPサーバーです。クエリ実行とスキーマ introspectionに対応し、リクエスト設定やmutationの許可を指定できます。
主な機能
- 01GraphQLクエリの実行
- 02変数、ヘッダー、エンドポイントの指定
- 03GraphQLスキーマの調査
- 04mutationの任意許可
活用シーン
- 01GraphQL APIからのデータ取得
- 02利用可能な型とフィールドの調査
MCP 対応
クエリ実行とスキーマ introspectionをMCPクライアント向けのツールとして公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
2掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| endpoint | string | いいえ | GraphQL エンドポイント URL(省略するとデフォルト値を使用) |
| query | string | はい | 実行する GraphQL クエリ |
| variables | object | いいえ | クエリで使用する変数(JSON オブジェクト) |
| headers | object | いいえ | リクエストに含める追加ヘッダー(デフォルトのヘッダーと統合されます) |
| timeout | number | いいえ | リクエストのタイムアウト時間(ミリ秒) |
詳細
GraphQL MCP ツール
GraphQL API とのやり取り機能を提供する、Model Context Protocol(MCP)サーバーの実装です。このサーバーにより、AI アシスタントは標準化された一連のツールを通じて GraphQL API とやり取りできます。
コンポーネント
ツール
-
graphql_query
- 任意のエンドポイントに対して GraphQL クエリを実行します
- 入力:
query(string):実行する GraphQL クエリvariables(object、任意):クエリ用の変数endpoint(string、任意):GraphQL エンドポイント URLheaders(object、任意):リクエスト用の HTTP ヘッダーtimeout(number、任意):リクエストのタイムアウト(ミリ秒)allowMutations(boolean、任意):ミューテーション操作を許可するかどうか
-
graphql_introspect
- GraphQL スキーマ情報を取得して調査します
- 入力:
endpoint(string、任意):GraphQL エンドポイント URLheaders(object、任意):リクエスト用の HTTP ヘッダーincludeDeprecated(boolean、任意):非推奨の型/フィールドを含めるかどうか
Claude Desktop での使用方法
NPX
{
"mcpServers": {
"graphql": {
"command": "npx",
"args": [
"-y",
"mcp-graphql-tools",
"--endpoint=https://api.github.com/graphql",
"--headers={\"Authorization\":\"Bearer YOUR_GITHUB_TOKEN\"}",
"--timeout=30000",
"--maxComplexity=100"
]
}
}
}
設定オプション
このサーバーは、次のコマンドライン引数を受け付けます。
- --endpoint (-e):デフォルトの GraphQL エンドポイント URL(デフォルト:http://localhost:4000/graphql)
- --headers (-H):すべてのリクエストに使用するデフォルトのヘッダーを JSON 文字列で指定します
- --timeout (-t):デフォルトのリクエストタイムアウト(ミリ秒、デフォルト:30000)
- --maxComplexity (-m):許容されるクエリの最大複雑度(デフォルト:100)
ライセンス
この MCP サーバーは MIT ライセンスの下でライセンスされています。これは、MIT ライセンスの利用規約に従うことを条件に、ソフトウェアを自由に使用、変更、配布できることを意味します。詳しくは、プロジェクトリポジトリ内の LICENSE ファイルをご覧ください。
コメント
Markdown 対応
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。