PropelAuth MCP authentication: known deviations
The audience check is manual and off by default whenever resource is unset — which is the default.
How PropelAuth deviates from the MCP authorization spec
- Introspection uses a versioned path and AS metadata lives at the path-suffixed form.
- Audience validation is a manual option that is disabled by default when no `resource` parameter is configured.
How to spot it without credentials
The MCP server proxies /.well-known/oauth-authorization-server from the path-suffixed upstream.
What it breaks in production
Any PropelAuth token from any co-tenant server is accepted — the same cross-server replay class as Cognito, reached through a default instead of a token shape.
Check a PropelAuth-backed MCP server
The free scanner runs the discovery and client-compatibility checks with no credentials, and every finding cites the spec requirement it violates:
npx mcpcomp https://your-mcp-server.example/mcp