-
Notifications
You must be signed in to change notification settings - Fork 48
[Docs] Re-organizing docs pages #308
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
e5b0ec3
0729869
bb5d72a
d160f3d
d6b1005
875fb86
a205020
819cb82
59ea222
1ade199
bf69c58
3a856c9
802faa7
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
| @@ -0,0 +1,21 @@ | ||||||
| --- | ||||||
| title: Authorization with Apollo MCP Server | ||||||
| redirectFrom: | ||||||
| - /apollo-mcp-server/guides/auth | ||||||
| --- | ||||||
|
|
||||||
| 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). | ||||||
|
|
||||||
| 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. | ||||||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
We've had some confusion around the token passthrough, so I think it would be good to call out that the tokens we do pass to the graphql API have been validated by the MCP server using their configured oauth provider.
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Thank you! I've added this note to a separate ticket where we tackle updating the Auth pages |
||||||
|
|
||||||
| ## Implement authorization with Apollo MCP Server | ||||||
|
|
||||||
| 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: | ||||||
|
|
||||||
| - **URL**: The base URL of your Identity Provider, which is used to validate the JSON Web Tokens (JWTs) issued by it. | ||||||
| - **Audience**: Identifies the intended recipient of the token, typically a resource server or API. Represented by the `aud` claim in the JWT. | ||||||
| - **Scopes**: The scopes that the client will request. These scopes define the permissions granted to the client when it accesses the API. | ||||||
|
|
||||||
| 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. | ||||||
|
|
||||||
| For an example of how to configure Apollo MCP Server with Auth0, see [Authorization with Auth0](/apollo-mcp-server/guides/auth-auth0). | ||||||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice catches on the readme!