Command Reference


EXPERIMENTAL
This feature is experimental. Your questions and feedback are highly valued—don't hesitate to get in touch with your Apollo contact or post in the Apollo Community MCP Server Category.

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:

Bash
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):

Bash
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:

Bash
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
note
The container sets a few defaults for ease of use:
  • 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:

sh
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):

Bash
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:

Bash
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):

Bash
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.

sh
apollo-mcp-server [OPTIONS] <PATH/TO/CONFIG/FILE>

CLI options

OptionDescription
-h, --helpPrint help information
-V, --versionPrint version information

Config options

All fields are optional and have sensible default values.

OptionTypeDefaultDescription
custom_scalarsFilePathPath to a custom scalar map
endpointURLhttp://localhost:4000/The target GraphQL endpoint
graphosGraphOSApollo-specific credential overrides
headersMap<string, string>{}List of hard-coded headers to include in all GraphQL requests
introspectionIntrospectionIntrospection configuration
loggingLoggingLogging configuration
operationsOperationSourceOperations configuration
overridesOverridesOverrides for server behavior
schemaSchemaSourceSchema configuration
transportTransportThe type of server transport to use

GraphOS configuration

These fields are under the top-level graphos key.

OptionTypeDefaultDescription
apollo_keystringThe Apollo GraphOS key. You can also provide this with the APOLLO_KEY environment variable
apollo_graph_refstringThe Apollo GraphOS graph reference. You can also provide this with the APOLLO_GRAPH_REF environment variable
apollo_registry_urlURLThe URL to use for Apollo's registry
apollo_uplink_endpointsURLList 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.

OptionTypeDefaultDescription
executeobjectExecution configuration for introspection
execute.enabledboolfalseEnable introspection for execution
introspectobjectIntrospection configuration for allowing clients to run introspection
introspect.enabledboolfalseEnable introspection requests
searchobjectSearch tool configuration
search.enabledboolfalseEnable search tool

Logging configuration

These fields are under the top-level logging key.

OptionTypeDefaultDescription
leveloneOf ["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".

SourceOptionTypeDefaultDescription
GraphOS Collectionsource"collection"Load operations from a GraphOS collection
GraphOS CollectionidstringThe collection ID to use in GraphOS. Use default for the default collection. Learn more
Introspectionsource"introspect"Load operations by introspecting the schema. Note: You must enable introspection to use this source
Localsource"local"Load operations from local GraphQL files or directories
LocalpathsList<FilePath>Paths to GraphQL files or directories to search
Manifestsource"manifest"Load operations from a persisted queries manifest file
ManifestpathFilePathThe path to the persisted query manifest
Uplinksource"uplink"Load operations from an uplink manifest. Note: This source requires an Apollo key and graph reference
Infersource"infer"*Infer where to load operations based on other configuration options.

Overrides configuration

These fields are under the top-level overrides key.

OptionTypeDefaultDescription
disable_type_descriptionboolfalseDisable type descriptions to save on context-window space
disable_schema_descriptionboolfalseDisable schema descriptions to save on context-window space
enable_explorerboolfalseExpose a tool that returns the URL to open a GraphQL operation in Apollo Explorer. Note: This requires a GraphOS graph reference
mutation_modeoneOf ["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".

SourceOptionTypeDefaultDescription
Localsource"local"Load schema from local file
LocalpathFilePathPath to the GraphQL schema
Uplinksource"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".

TypeOptionTypeDefaultDescription
stdiotype"stdio"*Use standard IO for communication between the server and client
SSEtype"sse"Host the MCP server on the supplied configuration, using SSE for communication. Note: Deprecated in favor of StreamableHTTP
SSEaddressIpAddr127.0.0.1The IP address to bind to
SSEportu165000The port to bind to
StreamableHTTPtype"streamable_http"Host the MCP server on the configuration, using streamable HTTP messages.
StreamableHTTPaddressIpAddr127.0.0.1The IP address to bind to
StreamableHTTPportu165000The 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 optionEquivalent MCP Server optionDescription
--mcp-config <PATH/TO/CONFIG><PATH/TO/CONFIG>Path to the MCP server configuration file
Feedback

Edit on GitHub

Ask Community