meta-ads-official MCP server: OAuth fails with "redirect_uris are not registered for this client"

Resolved 💬 3 comments Opened May 2, 2026 by ChrisSQC Closed May 6, 2026

Bug

The meta-ads-official MCP server (https://mcp.facebook.com/ads) in the
Claude Code MCP catalog cannot complete OAuth authentication. Both the
auto-flow (triggered when a tool is invoked) and the interactive /mcp
manager fail at the same step with the same error.

Reproduction

  1. Have meta-ads-official available as an MCP server (it surfaces by

default in the Claude Code catalog).

  1. Trigger auth either way:
  • Invoke any mcp__meta-ads-official__* tool, which calls

mcp__meta-ads-official__authenticate under the hood, or

  • Run /mcp → select meta-ads-official → "Authenticate".

Expected

Browser opens to facebook.com, user grants ads scope, token is cached
locally, and the server's real tools (list ad accounts, campaign
performance, etc.) become available.

Actual

Both paths return:

SDK auth failed: The provided redirect_uris are not registered for this client.

\/mcp\ shows the same error in the server detail view:

\\\
Status: △ needs authentication
Auth: ✘ not authenticated
URL: https://mcp.facebook.com/ads
SDK auth failed: The provided redirect_uris are not registered
for this client.
\
\\

This points at the OAuth client registered with Meta for this MCP
server — the \localhost:<port>/callback\ URLs that Claude Code's SDK
uses aren't whitelisted on the Meta app config.

Environment

  • Claude Code CLI on darwin (macOS)
  • Server: \https://mcp.facebook.com/ads\

Workaround

Use the separate \facebook-ads\ MCP server (long-lived token auth
instead of OAuth) — covers the same ad-account / campaign / adset / ad
performance surface area.

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗