Command Reference
Installation Methods
Download container image
A container is built for the Apollo MCP Server with every release at ghcr.io/apollographql/apollo-mcp-server
.
To download the latest release Docker container of Apollo MCP Server:
1docker image pull ghcr.io/apollographql/apollo-mcp-server:latest
To download a specific version of Apollo MCP Server (recommended for CI environments to ensure predictable behavior):
1# Note the `v` prefixing the version number
2docker image pull ghcr.io/apollographql/apollo-mcp-server:v0.6.0
To download a specific version of Apollo MCP Server that is a release candidate:
1# Note the `v` prefixing the version number and the `-rc` suffix
2docker image pull ghcr.io/apollographql/apollo-mcp-server:v0.6.0-rc.1
- Working Directory is
/data
: Make sure to mount static schemas / operations to this location using the volume flag when running (-v
/--version
). - HTTP Streamable Transport on port 5000: Make sure to export container port 5000 for HTTP Streamable connections to
the MCP server using the port flag when running (
-p
/--port
)
Apollo Runtime Container
The Apollo Runtime Container runs both the MCP Server and the Apollo Router in a single container. It's useful for local development, testing, and production deployments.
Learn more about deploying and configuring this container in the Runtime Container repository.
Linux / MacOS installer
To install or upgrade to the latest release of Apollo MCP Server:
curl -sSL https://mcp.apollo.dev/download/nix/latest | sh
To install or upgrade to a specific version of Apollo MCP Server (recommended for CI environments to ensure predictable behavior):
1# Note the `v` prefixing the version number
2curl -sSL https://mcp.apollo.dev/download/nix/v0.6.0 | sh
If your machine doesn't have the curl
command, you can get the latest version from the curl
downloads page.
Windows PowerShell installer
To install or upgrade to the latest release of Apollo MCP Server:
1iwr 'https://mcp.apollo.dev/download/win/latest' | iex
To install or upgrade to a specific version of Apollo MCP Server (recommended for CI environments to ensure predictable behavior):
1# Note the `v` prefixing the version number
2iwr 'https://mcp.apollo.dev/download/win/v0.6.0' | iex
Usage
Configure the Apollo MCP server with a configuration file. The path to this file is the only argument.
apollo-mcp-server [OPTIONS] <PATH/TO/CONFIG/FILE>
CLI options
Option | Description |
---|---|
-h, --help | Print help information |
-V, --version | Print version information |
Config options
All fields are optional and have sensible default values.
Option | Type | Default | Description |
---|---|---|---|
custom_scalars | FilePath | Path to a custom scalar map | |
endpoint | URL | http://localhost:4000/ | The target GraphQL endpoint |
graphos | GraphOS | Apollo-specific credential overrides | |
headers | Map<string, string> | {} | List of hard-coded headers to include in all GraphQL requests |
introspection | Introspection | Introspection configuration | |
logging | Logging | Logging configuration | |
operations | OperationSource | Operations configuration | |
overrides | Overrides | Overrides for server behavior | |
schema | SchemaSource | Schema configuration | |
transport | Transport | The type of server transport to use |
GraphOS configuration
These fields are under the top-level graphos
key.
Option | Type | Default | Description |
---|---|---|---|
apollo_key | string | The Apollo GraphOS key. You can also provide this with the APOLLO_KEY environment variable | |
apollo_graph_ref | string | The Apollo GraphOS graph reference. You can also provide this with the APOLLO_GRAPH_REF environment variable | |
apollo_registry_url | URL | The URL to use for Apollo's registry | |
apollo_uplink_endpoints | URL | List of uplink URL overrides. You can also provide this with the APOLLO_UPLINK_ENDPOINTS environment variable |
Introspection configuration
These fields are under the top-level introspection
key.
Option | Type | Default | Description |
---|---|---|---|
execute | object | Execution configuration for introspection | |
execute.enabled | bool | false | Enable introspection for execution |
introspect | object | Introspection configuration for allowing clients to run introspection | |
introspect.enabled | bool | false | Enable introspection requests |
search | object | Search tool configuration | |
search.enabled | bool | false | Enable search tool |
Logging configuration
These fields are under the top-level logging
key.
Option | Type | Default | Description |
---|---|---|---|
level | oneOf ["trace", "debug", "info", "warn", "error"] | "info" | The minimum log level to record |
Operation source configuration
These fields are under the top-level operations
key. The available fields depend on the value of the nested source
key.
The default value for source
is "infer"
.
Source | Option | Type | Default | Description |
---|---|---|---|---|
GraphOS Collection | source | "collection" | Load operations from a GraphOS collection | |
GraphOS Collection | id | string | The collection ID to use in GraphOS. Use default for the default collection. Learn more | |
Introspection | source | "introspect" | Load operations by introspecting the schema. Note: You must enable introspection to use this source | |
Local | source | "local" | Load operations from local GraphQL files or directories | |
Local | paths | List<FilePath> | Paths to GraphQL files or directories to search | |
Manifest | source | "manifest" | Load operations from a persisted queries manifest file | |
Manifest | path | FilePath | The path to the persisted query manifest | |
Uplink | source | "uplink" | Load operations from an uplink manifest. Note: This source requires an Apollo key and graph reference | |
Infer | source | "infer" | * | Infer where to load operations based on other configuration options. |
Overrides configuration
These fields are under the top-level overrides
key.
Option | Type | Default | Description |
---|---|---|---|
disable_type_description | bool | false | Disable type descriptions to save on context-window space |
disable_schema_description | bool | false | Disable schema descriptions to save on context-window space |
enable_explorer | bool | false | Expose a tool that returns the URL to open a GraphQL operation in Apollo Explorer. Note: This requires a GraphOS graph reference |
mutation_mode | oneOf ["none", "explicit", "all"] | "none" | Defines the mutation access level for the MCP server |
Schema source configuration
These fields are under the top-level schema
key. The available fields depend on the value of the nested source
key.
The default value for source
is "uplink"
.
Source | Option | Type | Default | Description |
---|---|---|---|---|
Local | source | "local" | Load schema from local file | |
Local | path | FilePath | Path to the GraphQL schema | |
Uplink | source | "uplink" | * | Fetch the schema from uplink. Note: This requires an Apollo key and graph reference |
Transport configuration
These fields are under the top-level transport
key. The available fields depend on the value of the nested type
key.
The default value for type
is "stdio"
.
Type | Option | Type | Default | Description |
---|---|---|---|---|
stdio | type | "stdio" | * | Use standard IO for communication between the server and client |
SSE | type | "sse" | Host the MCP server on the supplied configuration, using SSE for communication. Note: Deprecated in favor of StreamableHTTP | |
SSE | address | IpAddr | 127.0.0.1 | The IP address to bind to |
SSE | port | u16 | 5000 | The port to bind to |
StreamableHTTP | type | "streamable_http" | Host the MCP server on the configuration, using streamable HTTP messages. | |
StreamableHTTP | address | IpAddr | 127.0.0.1 | The IP address to bind to |
StreamableHTTP | port | u16 | 5000 | The port to bind to |
Mapping rover dev options
You can use the rover dev
command of Rover CLI v0.32 or later to run an Apollo MCP Server instance for local development.
Running rover dev --mcp
starts an MCP Server. Additional options, --mcp*
, directly configure the MCP Server.
The mapping of rover dev
options to MCP Server options:
rover dev option | Equivalent MCP Server option | Description |
---|---|---|
--mcp-config <PATH/TO/CONFIG> | <PATH/TO/CONFIG> | Path to the MCP server configuration file |