Contentful GraphQL MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SPACE_ID | Yes | Your Contentful space ID (required) | |
| HTTP_HOST | No | Host for HTTP server (default: localhost) | localhost |
| HTTP_PORT | No | Port for HTTP server (default: 3000) | 3000 |
| ENVIRONMENT_ID | No | Environment ID (defaults to "master") | master |
| ENABLE_HTTP_SERVER | No | Set to "true" to enable HTTP/SSE mode | false |
| CONTENTFUL_DELIVERY_ACCESS_TOKEN | Yes | Your Content Delivery API token (required) |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
| prompts | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| graphql_queryA | IMPORTANT: Before using this tool, you MUST first use graphql_list_content_types and graphql_get_content_type_schema to understand the available content types and their structure. Execute a GraphQL query against the Contentful GraphQL API. This tool allows you to use Contentful's powerful GraphQL interface to retrieve content in a more flexible and efficient way than REST API calls. The space ID and CDA token are automatically retrieved from environment variables. |
| graphql_list_content_typesA | IMPORTANT: Use this tool FIRST before attempting to write any GraphQL queries. This tool lists all available content types in the Contentful space's GraphQL schema. You should always use this tool to understand what content types are available before formulating GraphQL queries. The space ID and CDA token are automatically retrieved from environment variables. |
| graphql_get_content_type_schemaA | IMPORTANT: Use this tool AFTER using graphql_list_content_types to get a detailed schema for a specific content type. This tool provides all fields, their types, and relationships for a content type. You should ALWAYS use this tool to understand the structure of a content type before creating a query for it. The space ID and CDA token are automatically retrieved from environment variables. |
| graphql_get_exampleA | IMPORTANT: Use this tool AFTER using graphql_get_content_type_schema to see example GraphQL queries for a specific content type. Learning from these examples will help you construct valid queries. The space ID and CDA token are automatically retrieved from environment variables. |
| smart_searchA | Perform intelligent search across multiple content types using cached metadata. This tool automatically searches all text fields in your content types for the given query term. Much faster and easier than manually chaining multiple GraphQL calls. |
| build_search_queryA | Generate a GraphQL search query for a specific content type based on cached schema information. Returns the query string and variables needed to search text fields in the content type. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| explore-graphql-schema | Explore the GraphQL schema for this Contentful space and get guidance on querying content |
| build-graphql-query | Build a custom GraphQL query for a specific content need |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 6 tools
Each tool has a clearly distinct purpose: listing content types, getting schema, getting examples, executing queries, generating a search query, and performing intelligent search. The descriptions explicitly outline the workflow, eliminating ambiguity.
Most tools follow a 'graphql_' prefix with verbs like list, get, and query. However, 'build_search_query' and 'smart_search' break the pattern, introducing inconsistency despite individual clarity.
With six tools, the set is well-scoped for a GraphQL content exploration and search server. Each tool provides core functionality without unnecessary bloat, making it easy to navigate.
The tools cover discovery, schema understanding, example learning, and query execution comprehensively. A minor gap is the lack of a direct tool for fetching a single entry by ID, but 'graphql_query' can handle it. The cached schema might not update automatically, but that's a design choice.