Skip to content

Commit 2de84bf

Browse files
authored
Merge pull request #308 from apollographql/DXM-203
[Docs] Re-organizing docs pages
2 parents ab4d549 + 802faa7 commit 2de84bf

15 files changed

+703
-552
lines changed

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,22 +18,22 @@ See [the documentation](https://www.apollographql.com/docs/apollo-mcp-server/) f
1818

1919
## Installation
2020

21-
You can either build this server from source, if you have Rust installed on your workstation, or you can follow the [installation guide](https://www.apollographql.com/docs/apollo-mcp-server/install). To build from source, run `cargo build` from the root of this repository and the server will be built in the `target/debug` directory.
21+
You can either build this server from source, if you have Rust installed on your workstation, or you can follow the [installation guide](https://www.apollographql.com/docs/apollo-mcp-server/run). To build from source, run `cargo build` from the root of this repository and the server will be built in the `target/debug` directory.
2222

2323
## Getting started
2424

2525
Follow the [quickstart tutorial](https://www.apollographql.com/docs/apollo-mcp-server/quickstart) to get started with this server.
2626

2727
## Usage
2828

29-
Full usage of Apollo MCP Server is documented on the [user guide](https://www.apollographql.com/docs/apollo-mcp-server/guides). There are a few items that are necessary for this server to function. Specifically, the following things must be configured:
29+
Full usage of Apollo MCP Server is documented on the [user guide](https://www.apollographql.com/docs/apollo-mcp-server/run). There are a few items that are necessary for this server to function. Specifically, the following things must be configured:
3030

3131
1. A graph for the MCP server to sit in front of.
3232
2. Definitions for the GraphQL operations that should be exposed as MCP tools.
3333
3. A configuration file describing how the MCP server should run.
3434
4. A connection to an MCP client, such as an LLM or [MCP inspector](https://modelcontextprotocol.io/legacy/tools/inspector).
3535

36-
These are all described on the user guide. Specific configuration options for the configuration file are documented in the [command reference](https://www.apollographql.com/docs/apollo-mcp-server/command-reference).
36+
These are all described on the user guide. Specific configuration options for the configuration file are documented in the [config file reference](https://www.apollographql.com/docs/apollo-mcp-server/config-file).
3737

3838
## Contributions
3939

docs/source/_sidebar.yaml

Lines changed: 25 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,22 +4,39 @@ switcher:
44
- label: v0
55
latest: true
66
href: ./
7+
defaultOpenDepth: 2
78
items:
8-
- label: "Welcome"
9+
- label: "Overview"
910
href: "."
1011
- label: "Quickstart"
1112
href: "./quickstart"
12-
- label: "Install"
13-
href: "./install"
14-
- label: "User Guide"
15-
href: "./guides"
13+
- label: "Define tools"
14+
href: "./define-tools"
15+
- label: "Configuration"
16+
children:
17+
- label: "YAML Config Reference"
18+
href: "./config-file"
19+
- label: "Custom Scalars"
20+
href: "./custom-scalars"
21+
- label: "Run the MCP Server"
22+
href: "./run"
23+
- label: "Debugging"
24+
href: "./debugging"
25+
- label: "Deployment"
26+
children:
27+
- label: "Overview"
28+
href: "./deploy"
29+
- label: "Health Checks"
30+
href: "./health-checks"
1631
- label: "Authorization"
17-
href: "./guides/auth"
18-
- label: "Command Reference"
19-
href: "./command-reference"
32+
href: "./auth"
2033
- label: "Best Practices"
2134
href: "./best-practices"
2235
- label: "Licensing"
2336
href: "./licensing"
2437
- label: "Limitations"
2538
href: "./limitations"
39+
- label: "Guides"
40+
children:
41+
- label: "Authorization with Auth0"
42+
href: "./guides/auth-auth0"

docs/source/auth.mdx

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
---
2+
title: Authorization with Apollo MCP Server
3+
redirectFrom:
4+
- /apollo-mcp-server/guides/auth
5+
---
6+
7+
The Apollo MCP server supports authorizing clients (e.g., LLMs) in accordance with [the MCP specification](https://modelcontextprotocol.io/specification/2025-06-18/basic/authorization).
8+
9+
The current implementation passes through OAuth tokens from MCP clients directly to upstream GraphQL APIs. You can read more about [security considerations](/apollo-mcp-server/limitations#oauth-token-passthrough) when using this feature.
10+
11+
## Implement authorization with Apollo MCP Server
12+
13+
To implement authorization, you need an [OAuth 2.1-compliant](https://oauth.net/2.1/) Identity Provider (for example, your own in-house IdP or a third-party IdP such as Auth0, Okta, or Keycloak). You need the following values from your IdP:
14+
15+
- **URL**: The base URL of your Identity Provider, which is used to validate the JSON Web Tokens (JWTs) issued by it.
16+
- **Audience**: Identifies the intended recipient of the token, typically a resource server or API. Represented by the `aud` claim in the JWT.
17+
- **Scopes**: The scopes that the client will request. These scopes define the permissions granted to the client when it accesses the API.
18+
19+
Then, you [configure the MCP server with `auth` settings](/apollo-mcp-server/config-file#auth) and the [GraphOS Router for JWT authentication](/graphos/routing/security/jwt) using those IdP values.
20+
21+
For an example of how to configure Apollo MCP Server with Auth0, see [Authorization with Auth0](/apollo-mcp-server/guides/auth-auth0).

docs/source/best-practices.mdx

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,14 @@ This feature is in [preview](/graphos/resources/feature-launch-stages#preview).
99

1010
</PreviewFeature>
1111

12+
## Writing your schema for efficient MCP tools
13+
14+
The schema is required for:
15+
16+
- **Tool Descriptions**: The schema provides type information used to generate tool descriptions. You can override these descriptions by adding comments to your operation files.
17+
- **Input Validation**: The schema is used to translate GraphQL input types into JSON Schema, ensuring that AI models provide correctly formatted inputs.
18+
- **Introspection Support**: If you enable the `introspection` option, the schema is used to provide information about available types and operations to AI models.
19+
1220
## Use contract variants to control AI access to graphs
1321

1422
GraphOS [contract variants](/graphos/platform/schema-management/delivery/contracts/overview) let you deliver different subsets of your graph to different consumers.
@@ -17,8 +25,8 @@ When running Apollo MCP Server with GraphOS, use contract variants whenever poss
1725

1826
In particular, we strongly recommend contract variants when using:
1927

20-
- [GraphOS-managed persisted queries](/apollo-mcp-server/guides#from-graphos-managed-persisted-queries)
21-
- [Introspection](/apollo-mcp-server/guides#introspection-tools)
28+
- [GraphOS-managed persisted queries](/apollo-mcp-server/define-tools#from-graphos-managed-persisted-queries)
29+
- [Introspection](/apollo-mcp-server/define-tools#introspection-tools)
2230

2331
## Send client name header when using persisted queries
2432

@@ -38,4 +46,4 @@ According to [MCP security best practices](https://modelcontextprotocol.io/speci
3846
To maintain clear trust boundaries, MCP servers must only accept tokens explicitly issued for themselves and must act as independent OAuth clients when calling upstream services.
3947
Forwarding client tokens downstream is not allowed.
4048

41-
Apollo MCP Server supports OAuth 2.1 authentication that follows best practices and aligns with the MCP authorization model. See our [authorization guide](/apollo-mcp-server/guides/auth) for implementation details.
49+
Apollo MCP Server supports OAuth 2.1 authentication that follows best practices and aligns with the MCP authorization model. See our [authorization guide](/apollo-mcp-server/auth) for implementation details.

0 commit comments

Comments
 (0)