BigQuery
By Google. How it meets the 23 requirements of MCP Authorization.
- Supported
- 9
- Unsupported
- 3
- Unknown, recorded
- 2
- Not observed yet
- 9
- Endpoint
https://bigquery.googleapis.com/mcp- Transport
- Streamable HTTP
- Access
- Public Anyone can connect; where an account is needed, anyone can create one by self-service sign-up. Manual check · jbspeakr (documentation pass with Claude Code) · · evidence · All Google Cloud identities can authenticate; the caller needs the MCP Tool User role and BigQuery roles on a project, which a self-service Google Cloud project grants its owner.
- Auth
- OAuth An OAuth 2.x authorization obtained through the server's authorization server. Manual check · jbspeakr (documentation pass with Claude Code) · · evidence · OAuth 2.0 with IAM: Application Default Credentials, a client ID and secret the user creates in their project, or an OAuth bearer token. No dynamic client registration.
- Why it is listed
- Listed because it appears in a public directory of MCP servers. Source
- Homepage
- https://cloud.google.com/bigquery
- Notes
- The directory labels this server API Key; Google's own pages describe OAuth 2.0 with a pre-registered client, so the atlas records OAuth. It stands for Google's managed remote MCP servers (Compute Engine, GKE, Maps), which share the same authorization model.
Against MCP Authorization 2026-07-28current
- Supported 9
- Unsupported 3
- Unknown 11
Passive scan · Requests
- MUST7 supported, 1 unsupported
- SHOULD2 supported, 1 unsupported, 1 unknown
- MAY1 supported, 1 unsupported
Older revisions of the matrix: 2025-11-25
MCP server features 13
| Feature | Level | Status | Observed | Evidence |
|---|---|---|---|---|
| Protected Resource Metadata served | MUST | Supported | source | |
| PRM lists an authorization server | MUST | Supported | source | |
| PRM lists scopes_supported | MAY | Supported | source | |
| PRM reachable at a well-known URI | MUST | Supported | source | |
| resource_metadata in the 401 challenge | MUST | Unknown | source | |
| 403 insufficient_scope for step-up | SHOULD | Unknown no observation | no observation yet | |
| Scope in the WWW-Authenticate challenge | SHOULD | Unknown | source | |
| No offline_access in advertised scopes | SHOULD | Supported | source | |
| 401 for missing or invalid tokens | MUST | Unknown no observation | no observation yet | |
| Audience validation | MUST | Unknown no observation | no observation yet | |
| Bearer token only in the Authorization header | MUST | Unknown no observation | no observation yet | |
| No token passthrough to upstream APIs | MUST | Unknown no observation | no observation yet | |
| Per-client consent on proxy servers | MUST | Unknown no observation | no observation yet |
Authorization server features 10
| Feature | Level | Status | Observed | Evidence |
|---|---|---|---|---|
| Metadata issuer matches the discovery URL | MUST | Unsupported | source | |
| Authorization server metadata discoverable | MUST | Supported | source | |
| Client ID Metadata Documents supported | SHOULD | Unsupported | source | |
| Dynamic Client Registration offered | MAY | Unsupported | source | |
| Documented pre-registration path | SHOULD | Unknown no observation | no observation yet | |
| Issuer identifier in authorization responses | SHOULD | Supported | source | |
| PKCE with S256 advertised | MUST | Supported | source | |
| Refresh token rotation for public clients | MUST | Unknown no observation | no observation yet | |
| Resource indicators honoured | MUST | Unknown no observation | no observation yet | |
| All endpoints served over HTTPS | MUST | Supported | source |
This server's ledger
No status change on recordEvery cell of this server still shows the status of its first observation.
What the scanner asked
The requests behind the rows marked passive scan above, in the order the scanner makes them, each with the newest answer recorded. None carries a credential or a message.
- GEThttps://bigquery.googleapis.com/.well-known/oauth-protected-resource/mcpHTTP 200read resource, authorization_servers, scopes_supported
- GEThttps://bigquery.googleapis.com/mcpHTTP 405read status, WWW-Authenticate
- POSThttps://bigquery.googleapis.com/mcpHTTP 400read status, WWW-Authenticate
- GEThttps://accounts.google.com/.well-known/oauth-authorization-serverHTTP 200read issuer, client_id_metadata_document_supported, registration_endpoint, authorization_response_iss_parameter_supported, code_challenge_methods_supported
- 14 checks, read into the tables above
resource_metadata in the 401 challenge counts as supported because PRM reachable at a well-known URI is supported; the specification asks for one of the two.
Newest scanner observation · letsauth-scanner/0.4.0 · reproduce with pnpm scan google-bigquery · scan JSON · data file · how the scanner works