Skip to content

claude.ai PagerDuty connector: OAuth authorize rejected — PagerDuty returns "Invalid or missing value for redirect_uri" for https://claude.ai/api/mcp/auth_callback #431

Description

@gzub-resonate

MCP server URL or name

claude.ai PagerDuty connector → https://mcp.pagerduty.com/mcp (PagerDuty MCP Server v3.1.1)

How are you connecting to this server?

From browsing the MCP server directory — it is the built-in/directory PagerDuty connector. I trigger auth from Claude Code via /mcp → "claude.ai PagerDuty", which opens the standard claude.ai connector OAuth flow.

Where does the issue occur?

In the authorization screen (PagerDuty's authorize endpoint, before any login or consent).

When did you last reproduce this?

2026-06-11, ~2:40 PM ET (also reproduced repeatedly over the preceding several weeks).

Browser and OS

Google Chrome on macOS (Darwin 25.5.0).

Describe the issue

Authorizing the claude.ai PagerDuty connector fails at the OAuth authorize step, before any login or consent. /mcp → "claude.ai PagerDuty" opens PagerDuty's authorization URL, and PagerDuty immediately returns "Bad request — Invalid or missing value for redirect_uri parameter."

The redirect_uri Claude.ai sends is the standard, well-formed connector callback:

https://claude.ai/api/mcp/auth_callback

This is the same callback my other working claude.ai connectors use (Atlassian, Slack, Microsoft 365, and two internal connectors all authorize successfully through https://claude.ai/api/mcp/auth_callback). So the value Claude.ai sends is correct and unchanged across connectors — PagerDuty's OAuth app rejects it, which indicates https://claude.ai/api/mcp/auth_callback is not on the registered redirect-URI allowlist of the PagerDuty OAuth client backing this connector (client_id=5fd41121-b38c-4ae7-8e22-425f4aa3f665).

Because the grant can never complete, the claude.ai proxy holds no token and every subsequent request to the connector returns mcp_unauthorized_no_token, so the connector shows its tool schema (from a cached projection) but no tool ever works.

The authorize request itself is well-formed OAuth 2.1 (PKCE S256, state present, RFC 8707 resource=https://mcp.pagerduty.com/mcp). The failure is purely the redirect_uri allowlist check.

This looks closely related to #48957 (BigQuery connector on claude.ai rejecting the same https://claude.ai/api/mcp/auth_callback callback), but for the PagerDuty connector specifically — which I could not find reported anywhere on the Anthropic or PagerDuty side.

Error details

PagerDuty authorization screen:

PagerDuty
Bad request
The request could not be processed.
Invalid or missing value for redirect_uri parameter.
Error identifier: 0VpwKaNG   (also reproduced: ld8LW8D5)

Claude Code /mcp after the browser flow:

Tried reconnecting, but claude.ai PagerDuty is still unauthorized.
Make sure the browser sign-in completed, then try again from /mcp.

Claude.ai proxy connection error (MCP debug log):

Connection error: Streamable HTTP error: Error POSTing to endpoint:
{"type":"error","error":{"type":"authentication_error",
"message":"MCP server requires authentication but no OAuth token is configured.",
"details":{"error_code":"mcp_unauthorized_no_token"}}}

Expected behavior

Selecting the claude.ai PagerDuty connector should open PagerDuty's authorization/consent screen and, after I approve, redirect back to https://claude.ai/api/mcp/auth_callback, store the OAuth token, and make the PagerDuty MCP tools available — the same way the Atlassian/Slack/Microsoft 365 connectors work. PagerDuty's OAuth client should have https://claude.ai/api/mcp/auth_callback registered as an allowed redirect URI.

Additional context

Full authorize URL Claude.ai opened (per-session code_challenge/state redacted; everything else verbatim):

https://app.pagerduty.com/global/oauth/authorize
  ?response_type=code
  &client_id=5fd41121-b38c-4ae7-8e22-425f4aa3f665
  &redirect_uri=https%3A%2F%2Fclaude.ai%2Fapi%2Fmcp%2Fauth_callback
  &code_challenge=<redacted>
  &code_challenge_method=S256
  &state=<redacted>
  &scope=openid+read+write+incidents.read+...(full PagerDuty scope set)...
  &resource=https%3A%2F%2Fmcp.pagerduty.com%2Fmcp
  • Decoded redirect_uri: https://claude.ai/api/mcp/auth_callback (valid, absolute, https — not truncated/malformed).
  • The connector's server id on my account: mcpsrv_01996ySuyYRkNiXdM1n9Rnyq (reached via mcp-proxy.anthropic.com/v1/mcp/<id>). Account email available on request.
  • The same flow fails identically across multiple Claude Code sessions over several weeks; retrying /mcp does not change the outcome.
  • Likely a connector-provisioning gap between Anthropic and PagerDuty: PagerDuty's public docs only cover the local/API-key server and a remote endpoint and don't document the claude.ai web-connector callback registration.
  • Screenshots of the PagerDuty "Bad request" error page available on request.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions