GraphQL MCP Server
# Graphql MCP Server
An model context protocol adapted to running and list graphql queries
| Environment Variable | Description | Default |
|----------|-------------|---------|
| `ENDPOINT` | GraphQL endpoint URL | `http://localhost:4000/graphql` |
| `HEADERS` | JSON string containing headers for requests | `{}` |
| `ALLOW_MUTATIONS` | Enable mutation operations (disabled by default) | `false` |
## Resources
- **schema**: exposes the GraphQL Schema to easy use by the IA
## Available Tools
1. **introspect**: This tool retrieves the GraphQL schema. used to index or get a new funciton by the LLM
2. **query**: Execute GraphQL queries.
## Installation
### Installing Manually
start with installing the dependencies
```
npm i
```
after run the build of the package
```
npm run build
```
It can be manually installed to cursor:
```json
{
"mcpServers": {
"gql-mcp-server": {
"command": "npx",
"args": ["mcp-graphql"],
"env": {
"ENDPOINT": "https://localhost",
"HEADERS": "{\"x-api-key\":\"apikey\"}"
}
}
}
}
```
You can also test the mpc using the MPC inspector
```
npx -y @modelcontextprotocol/inspector node dist/index.js inspect
```
TDQS
Scored across 3 tools
The three tools have distinct primary purposes: inspect for server metadata, introspect for schema discovery, and query for executing operations. However, inspect and introspect could be slightly confused as both provide information about the server, though their specific focuses differ enough for agents to distinguish them with careful reading of descriptions.
All tool names follow a consistent, simple verb-based pattern (inspect, introspect, query) without any mixing of conventions like camelCase or snake_case. The naming is straightforward and predictable across the set.
With only 3 tools, this server feels minimal for a GraphQL domain, which typically involves operations like mutations and subscriptions beyond just queries. While it covers basic introspection and querying, the count is borderline thin for a full-featured GraphQL interface.
The tool set is significantly incomplete for GraphQL operations. It lacks mutation tools for data modification and subscription tools for real-time updates, which are core parts of the GraphQL specification. This gap will likely cause agent failures when trying to perform common GraphQL workflows beyond read-only queries.