mcp-graphql mcp

v1.0.1 · MCP Tool · networking · registry.pascalai.org

Execute GraphQL queries and mutations against any GraphQL endpoint. Supports introspection, batch operations and multiple auth methods.

graphqlapiqueriesmutationswebrest

Input Parameters

ParameterTypeDescription
operationrequired string Operation to perform. One of: query, mutation, introspect, introspect_type, list_queries, list_mutations, batch, ping.
endpointrequired string GraphQL endpoint URL e.g. https://api.example.com/graphql.
graphQLQueryoptional string GraphQL query or mutation string. Required for: query, mutation.
variablesoptional string Variables as JSON string e.g. {"id":"123"} (optional).
typeNameoptional string Type name to inspect. Required for: introspect_type.
batchOperationsoptional string JSON array string of batch operations: [{"query":"...","variables":{}}]. Required for: batch.
bearerTokenoptional string Bearer token for Authorization: Bearer {token} header.
apiKeyoptional string API key value (sent as apiKeyHeader: {apiKey}).
apiKeyHeaderoptional string Header name for the API key (default: X-Api-Key). Default: X-Api-Key.
usernameoptional string Username for Basic auth.
passwordoptional string Password for Basic auth.
extraHeadersoptional string Additional headers as JSON object e.g. {"X-Custom":"value"}.

Output Fields

FieldTypeDescription
data object
errors array[object]
http_status integer
ok boolean
error string

Examples

Execute a GraphQL query

// Input
{
  "operation": "query",
  "endpoint": "https://api.github.com/graphql",
  "graphQLQuery": "query { viewer { login } }",
  "bearerToken": "ghp_xxx"
}

// Output
{
  "data": {
    "viewer": {
      "login": "octocat"
    }
  }
}

Ping endpoint

// Input
{
  "operation": "ping",
  "endpoint": "https://api.example.com/graphql"
}

// Output
{
  "ok": true
}

Install & Discovery

Install

ppm install mcp-graphql

Get JSON Schema

GET /v1/packages/mcp-graphql/1.0.1/schema

Discover by keyword

GET /v1/mcp/discover?q=graphql
Discovery hint: Install with ppm install mcp-graphql or invoke remotely via POST /v1/invoke/mcp-graphql on the MCP Service.

PascalAI Usage

uses toolslib;
var Tool := LoadTool('mcp-graphql');
var R := Tool.Call(JsonObj(['operation','ping','endpoint','https://api.example.com/graphql']));
Writeln(R.ToJSON);