mcp-graphql

by blurrah
Verified
MIT License
279
97
  • Apple

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Enables LLMs to interact with GraphQL APIs by providing schema introspection and query execution capabilities, allowing models to discover and use GraphQL APIs dynamically

mcp-graphql

LLMがGraphQL APIと連携できるようにするモデルコンテキストプロトコルサーバー。この実装はスキーマイントロスペクションとクエリ実行機能を提供し、モデルがGraphQL APIを動的に検出して使用できるようにします。

使用法

正しいエンドポイントでmcp-graphql実行すると、クエリのイントロスペクションが自動的に試行されます。

環境変数(1.0.0 での重大な変更)

**注:**バージョン 1.0.0 以降、コマンド ライン引数は環境変数に置き換えられました。

環境変数説明デフォルト
ENDPOINTGraphQLエンドポイントURLhttp://localhost:4000/graphql
HEADERSリクエストのヘッダーを含むJSON文字列{}
ALLOW_MUTATIONS突然変異操作を有効にする(デフォルトでは無効)false
NAMEMCPサーバーの名前mcp-graphql
SCHEMAローカル GraphQL スキーマ ファイルへのパス (オプション)-

# Basic usage with a local GraphQL server ENDPOINT=http://localhost:3000/graphql npx mcp-graphql # Using with custom headers ENDPOINT=https://api.example.com/graphql HEADERS='{"Authorization":"Bearer token123"}' npx mcp-graphql # Enable mutation operations ENDPOINT=http://localhost:3000/graphql ALLOW_MUTATIONS=true npx mcp-graphql # Using a local schema file instead of introspection ENDPOINT=http://localhost:3000/graphql SCHEMA=./schema.graphql npx mcp-graphql

リソース

  • graphql-schema : サーバーは、GraphQLスキーマをクライアントがアクセスできるリソースとして公開します。これは、ローカルスキーマファイルまたはイントロスペクションクエリに基づいて実行されます。

利用可能なツール

サーバーは主に 2 つのツールを提供します。

  1. introspect-schema : このツールはGraphQLスキーマを取得します。スキーマをリソースとしてアクセスできない場合は、まずこのツールを使用してください。このツールは、ローカルスキーマファイルまたはイントロスペクションクエリのいずれかを使用します。
  2. query-graphql : エンドポイントに対してGraphQLクエリを実行します。デフォルトでは、 ALLOW_MUTATIONStrueに設定されていない限り、ミューテーションは無効になっています。

インストール

Smithery経由でインストール

Smithery経由で Claude Desktop 用の GraphQL MCP Server を自動的にインストールするには:

npx -y @smithery/cli install mcp-graphql --client claude

手動でインストールする

Claude に手動でインストールできます:

{ "mcpServers": { "mcp-graphql": { "command": "npx", "args": ["mcp-graphql"], "env": { "ENDPOINT": "http://localhost:3000/graphql" } } } }

セキュリティに関する考慮事項

LLMによるデータベースやサービスデータの変更を防ぐためのセキュリティ対策として、ミューテーションはデフォルトで無効になっています。本番環境でミューテーションを有効にする前に、慎重に検討してください。

独自のサーバーに合わせてカスタマイズ

これは非常に汎用的な実装で、完全なイントロスペクションが可能で、ユーザーは自由に操作できます(ミューテーションも含む)。より具体的な実装が必要な場合は、独自のMCPを作成し、クライアントが特定のクエリフィールドや変数のみを入力するように制限するツールを作成することをお勧めします。こちらを参考にしてください。

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

GraphQL サーバーを操作するための MCP。

  1. Usage
    1. Environment Variables (Breaking change in 1.0.0)
    2. Examples
  2. Resources
    1. Available Tools
      1. Installation
        1. Installing via Smithery
        2. Installing Manually
      2. Security Considerations
        1. Customize for your own server
          ID: 4zwa4l8utf