Skip to main content
Plainrouter’s unauthenticated API and MCP sandbox is retired. API and MCP protocol requests return HTTP 410 with error: "sandbox_retired". Create a Plainrouter account and configure the credential for the interface you need.

Which requests are retired?

The retired paths include /mcp/sandbox, /api/v1/sandbox, /api/v1/sandbox/keys, /api/v1/sandbox/events, /api/v1/sandbox/keyed-events, the old sandbox Markdown discovery paths, and /n8n-plainrouter-sandbox.json. API GET and POST requests return the retirement response; issuing another sandbox key or changing a retry ID cannot restore service. The response includes error, message, signup_url, and mcp_url. The error field is the string sandbox_retired, rather than an error.code object. No synthetic tool or event result is returned. A normal HTML browser visit to /mcp/sandbox redirects permanently with HTTP 308 to the Meta Ads MCP overview. This browser exception does not reconnect an MCP client. POST requests, JSON or event-stream requests, and requests carrying MCP protocol headers still receive 410.

How do I connect MCP now?

  1. Create your account and workspace. Connect Meta for account-scoped reads; workspace installation reads can be used before connecting Meta.
  2. Configure https://plainrouter.com/mcp with a Read Workspace key or supported OAuth sign-in. Keep credentials in the client’s protected settings.
  3. Verify an authenticated read and confirm the returned workspace and account. Public discovery alone does not prove tool access.
  4. When authorized to preview a change, use dry_run_actions with the required Write key and complete supported proposal. It can read real provider state, but creates no proposal and makes no Meta change. It is not an unauthenticated simulation or a promise that execution is available.

How do I use the API now?

Use a Server secret for Signals and an appropriately scoped Workspace key for Actions. Follow API setup and authentication; changing only the old sandbox URL is insufficient. The ingestion diagnostic writes one authenticated identity-free verification event. It does not verify real browser arrivals or Meta delivery. Controlled destination tests are separate authenticated operations that can contact Meta. Neither replaces the retired sandbox’s discard-only behavior.

What if my SDK still has sandbox methods?

Published SDKs can retain sandbox classes or methods generated before retirement. Those methods do not establish server availability and receive the retired response when called. Keep the supported event, operation and Actions integrations; remove sandbox calls from connection checks and automation. Check current client compatibility.