MCP Generic
Access requirements
| Pre-Requisites | Status | Comment |
|---|---|---|
| MCP-compatible server | ✅ | Server must support OAuth 2.0 with dynamic discovery (RFC 8414, RFC 9728). |
| OAuth endpoints | ✅ | Server must expose /.well-known/oauth-authorization-server endpoint. |
| PKCE support | ✅ | Required for secure public client authentication. |
Setup guide
No setup guide yet.
Need help getting started? Get help in the community.
Contribute improvements to the setup guide by editing this page
GitHub's remote MCP doesn't follow the specification exactly, so won't work with this provider.
Useful links
- Model Context Protocol Specification
- MCP GitHub Repository
- RFC 8414: OAuth 2.0 Authorization Server Metadata
- RFC 9728: OAuth 2.0 Protected Resource Metadata Discovery
- MCP Server Examples
Contribute useful links by editing this page
API gotchas
- Dynamic Discovery: MCP Generic automatically discovers OAuth endpoints from the MCP server's
/.well-known/oauth-authorization-serverendpoint. - No Pre-configuration: No need to pre-configure OAuth client credentials. Tenklo identifies itself to the authorization server automatically, picking the first supported method in this order:
- Client ID metadata documents (CIMD): used when the authorization server advertises
client_id_metadata_document_supportedin its metadata. The client ID is a URL pointing to a metadata document Tenklo hosts athttps://<nango-host>/oauth/client-metadata/<environment-uuid>/<integration-id>. The integration's client name, URI, and logo fields populate this document and appear on consent screens. - Dynamic client registration (RFC 7591): used when the authorization server exposes a
registration_endpoint. - A static placeholder client ID as a last resort.
- Client ID metadata documents (CIMD): used when the authorization server advertises
- PKCE Required: All MCP Generic flows use PKCE for security. Client secrets are not used.
- Server URL Format: Always provide the full MCP server URL (e.g.,
https://api.example.com/mcp, notapi.example.com). - Automatic Scopes: OAuth scopes are automatically discovered from MCP server metadata.
- Self-hosting: CIMD requires the Tenklo instance to be reachable at a public https URL (
NANGO_SERVER_URL). Instances without one automatically fall back to dynamic client registration.
Contribute API gotchas by editing this page