Skip to content

Commit b4f65d6

Browse files
authored
Merge pull request #269 from apollographql/add-docker-deployment
docs: Add quickstart variant for Docker
2 parents 56fd054 + 5bfee63 commit b4f65d6

File tree

1 file changed

+54
-5
lines changed

1 file changed

+54
-5
lines changed

docs/source/quickstart.mdx

Lines changed: 54 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,12 @@ The example files located in `graphql/TheSpaceDevs/` include:
6161

6262
## Step 2: Run the MCP Server
6363

64+
You can run the MCP Server using the Rover CLI or Docker.
65+
66+
> **Note**: We recommend using Docker if you typically use it in your developer workflow. Otherwise, use Rover.
67+
68+
### Run with Rover
69+
6470
1. From the root directory of your local repo, run `rover dev` to start a local graph with an MCP Server:
6571
```sh showLineNumbers=false
6672
rover dev --supergraph-config ./graphql/TheSpaceDevs/supergraph.yaml \
@@ -74,22 +80,65 @@ The example files located in `graphql/TheSpaceDevs/` include:
7480

7581
See the [command reference](/apollo-mcp-server/command-reference#config-options) for a list of available configuration options.
7682

77-
2. Start MCP Inspector to verify the server is running:
83+
### Run with Docker
84+
85+
1. Modify the MCP server configuration in `graphql/TheSpaceDevs/config.yaml`. Update the paths to point to the `/data` directory, as the Docker container expects:
86+
```yaml title="graphql/TheSpaceDevs/config.yaml" {7, 10}
87+
endpoint: https://thespacedevs-production.up.railway.app/
88+
transport:
89+
type: streamable_http
90+
operations:
91+
source: local
92+
paths:
93+
- /data/operations
94+
schema:
95+
source: local
96+
path: /data/api.graphql
97+
overrides:
98+
mutation_mode: all
99+
introspection:
100+
execute:
101+
enabled: true
102+
introspect:
103+
enabled: true
104+
search:
105+
enabled: true
106+
```
107+
108+
1. In a new terminal, from the root directory of your local repo, run this Docker command to start the MCP Server:
109+
```sh showLineNumbers=false
110+
docker run \
111+
-it --rm \
112+
--name apollo-mcp-server \
113+
-p 5000:5000 \
114+
-v $PWD/graphql/TheSpaceDevs/config.yaml:/config.yaml \
115+
-v $PWD/graphql/TheSpaceDevs:/data \
116+
ghcr.io/apollographql/apollo-mcp-server:latest /config.yaml
117+
```
118+
119+
This command:
120+
- Starts an MCP Server in a Docker container
121+
- Maps configuration files into the proper place for the Apollo MCP Server container
122+
- Forwards port 5000 for accessing the MCP Server
123+
124+
## Step 3: Verify the MCP Server with MCP Inspector
125+
126+
1. Start MCP Inspector to verify the server is running:
78127

79128
```sh
80129
npx @modelcontextprotocol/inspector
81130
```
82131

83-
3. Open a browser and go to [`http://127.0.0.1:6274`](http://127.0.0.1:6274)
132+
1. Open a browser and go to [`http://127.0.0.1:6274`](http://127.0.0.1:6274)
84133

85-
4. In Inspector:
134+
1. In Inspector:
86135
- Select `Streamable HTTP` as the Transport Type
87136
- Enter `http://127.0.0.1:5000/mcp` as the URL
88137
- Click **Connect**, then **List Tools**
89138

90139
You should see the tools from your server listed.
91140

92-
## Step 3: Connect Claude Desktop
141+
## Step 4: Connect Claude Desktop
93142

94143
We're using [Claude](https://claude.ai/download) as our AI Assistant (acting as our MCP Client).
95144

@@ -124,7 +173,7 @@ You need Node v18 or later installed for `mcp-remote` to work. If you have an ol
124173

125174
2. Restart Claude.
126175

127-
## Step 4: Test Your Setup
176+
## Step 5: Test Your Setup with Claude
128177

129178
Let's verify everything is working:
130179

0 commit comments

Comments
 (0)