Plainrouter
Meta Ads MCP: read ad accounts and signal health; propose governed changes under Ask or Full.
Connect it
Settings → Connectors → Add custom connector
URL: https://plainrouter.com/mcpSettings → Apps & Connectors → Advanced → Developer mode
Create connector with URL: https://plainrouter.com/mcp{
"mcpServers": {
"mcp": {
"url": "https://plainrouter.com/mcp"
}
}
}claude mcp add --transport http mcp https://plainrouter.com/mcp{
"servers": {
"mcp": {
"type": "http",
"url": "https://plainrouter.com/mcp"
}
}
}48 tools, verified live
get_account_stateread-onlyReturn the authorized advertising account, workspace, connection, Signal destination, and currently available account capabilities. This read-only inspection tool does not change the account.
get_account_inventoryread-onlyRead the authorized workspace account inventory from the Meta mirror, with optional level, status, parent, and ID cursor filters.
list_workspacesread-onlyList the workspaces and effective access tiers in this credential scope.
get_signal_healthread-onlyDiagnostic view of first-party event flow, Meta delivery outcomes, match quality, and reconciliation gaps from Plainrouter stored measurements. Not admissible evidence for spend-affecting proposals. Does not call the Marketing API.
get_performanceread-onlyAdmissible proposal evidence: reconciliation meta_reported is the existing Meta-reported conversions count compared with gateway_verified accepted conversions. The separate purchases block shows Meta-reported Purchase counts under the account attribution setting beside Plainrouter accepted server-side Purchase counts, with its completed account-local window start and end dates and no purchase gap
get_inventory_metricsread-onlyRead daily Meta metrics beside counted PlainRouter arrivals for mirrored campaigns, ad sets and ads. object_metrics contains account-timezone daily comparisons; unmatched_arrivals is one workspace/window count without unknown IDs. Counts are null when the arrivals store is disabled. Optional change history is retention-clamped.
verify_signal_ingestioncan modifyVerify server-side Signal ingestion by writing one idempotent, identity-free modeled event for the authorized workspace. This confirms ledger receipt but does not count as real arrival evidence or complete onboarding. No spend capability.
propose-actionscan modifyPropose a batch of budget, status, upload, or creative-duplication actions for the approved ad account. In Ask, every policy-allowed change waits for a person to approve it. In Full, policy-allowed changes run automatically. Rule violations are blocked and shown in the Inbox, and cannot be approved. The execution kill switch stops further writes and never undoes a landed change. Dispatch still req
dry_run_actionsread-onlyPreview policy decisions and execution diffs for a proposed Action batch without writing it.
list_actionsread-onlyList proposed actions for the authorized workspace and advertising account.
get_action_batchread-onlyGet a proposed action batch for the authorized workspace and advertising account. Each action’s counted_evidence contains frozen proposal-time target figures and coverage; null means not captured.
get_actionread-onlyGet one proposed action for the authorized workspace and advertising account. counted_evidence contains frozen target figures and coverage captured at proposal time; null means not captured. The figures inform and never gate.
get_action_decision_receiptread-onlyGet the persisted decision receipt for an authorized proposed action. Version 3 receipts include counted_evidence frozen at proposal time with account-currency values, coverage and the other-currency exclusion. Existing receipts are unchanged.
get_action_policyread-onlyGet the effective Actions policy for the authorized workspace without creating a policy row.
actions.rules.listread-onlyList stored performance rules available to this workspace key. This does not evaluate them.
actions.rules.showread-onlyRead a stored performance rule and its immutable revisions, with author type only.
actions.rules.createcan modifyStore a performance rule disabled. Enabling requires an explicit update; this never evaluates or proposes actions.
actions.tests.listread-onlyList judging Tests, loser pause candidate status and reason, and observed conversion event choices for the authorized workspace and ad account. Results rank variants only within each Test.
actions.tests.showread-onlyRead one Test, its stored verdict facts, and loser pause candidate status and reason. Spend per recorded conversion compares variants only within this Test.
actions.tests.createcan modifyCreate a judging-only Test from 2 to 4 ads in one mirrored Meta ad set. It records a PlainRouter verdict and never creates a proposal or writes to Meta.
actions.rules.updatecan modifyEdit a stored performance rule by appending a revision, or explicitly enable or disable it. This never evaluates or proposes actions.
list_templatesread-onlyList the available versioned ad templates, usage descriptions, the default choice, copy slots and supported sizes.
render_adcan modifyRender ad copy over an image already in the workspace library using a template id and version, selected sizes, and a required request_key.
get_renderread-onlyInspect a workspace render and its draft output creative ids.
resume_rendercan modifyInspect a workspace render and resume only a held run. Running states return inspect guidance.
preview_creativescan modifyShow workspace creatives to a person in the Creative Preview app. Missing derivatives return pending and queue a bounded build. Originals and image bytes are never returned.
list_creativesread-onlyList workspace creative metadata and Library provenance. Images are available only through preview_creatives.
get-creative-libraryread-onlyReturn Meta image and video assets with the ads and last-30-day performance historically associated with each asset.
launch.creatives.indexread-onlyList creatives in the workspace bound to the authenticated execution token.
launch.creatives.showread-onlyShow one creative in the workspace bound to the authenticated execution token.
launch.creatives.storecan modifyStore one JPEG, PNG, MP4, or QuickTime creative from strict base64 content in the token-bound workspace. When supplying output from an outside tool, set tags.generator, tags.generator_job and, for a variation, tags.parent_creative. PlainRouter’s own creative tools will set these tags on every creative they make; images enter the library by upload or launch.creatives.store-from-url.
launch.creatives.store-from-urlcan modifyFetch and store one creative from a vetted HTTPS URL in the token-bound workspace. When supplying output from an outside tool, set tags.generator, tags.generator_job and, for a variation, tags.parent_creative. PlainRouter’s own creative tools will set these tags on every creative they make; images enter the library by upload or launch.creatives.store-from-url.
launch.creatives.statuscan modifySet the status of one creative in the workspace bound to the authenticated execution token.
upload-assetcan modifyStage a JPEG/PNG image and submit a canonical upload action through workspace policy. In Ask mode every change waits for your approval; in Full mode, changes that pass admission and workspace policy run automatically.
duplicate-ad-with-creativecan modifySubmit a canonical proposal to duplicate a source Meta ad with a different creative asset. In Ask mode every change waits for your approval; in Full mode, changes that pass admission and workspace policy run automatically. Policy-allowed copies are always created PAUSED.
launch.plans.executecan modifyExecute one deployment plan in the workspace and ad account bound to the execution token; requires the review_version returned by the plan read you acted on. Changed plans are refused before any intent or staging; identical intent_key and review_version retries replay. All provider mutations are proposed through Actions.
launch.plans.showread-onlyRead one deployment plan and its current review_version and latest launch-intent status in the workspace and ad account bound to the execution token.
launch.plans.listread-onlyList deployment plans for the approved ad account, including each current review_version to pass when executing the reviewed plan.
launch.plans.createcan modifyCreate a deployment plan for the approved ad account.
launch.plans.copycan modifyCopy a failed plan to a new draft with the same content. Validate and submit the draft afresh; the failed plan and its history stay unchanged.
launch.plans.updatecan modifyUpdate a deployment plan for the approved ad account.
launch.plans.validatecan modifyValidate a deployment plan for the approved ad account.
revoke_grantcan modifyRevoke an active workspace grant. The caller must hold the revoke_grant scope in the same workspace or be the human delegator of the granted agent.
get_install_instructionsread-onlyReturn managed-hostname Path A installation material and first-arrival state for the authorized workspace. Returns no same-origin forwarding material.
submit_feedbackcan modifyReport a bug or a missing capability you hit while using this server. Say what you were trying to do and what happened. Nothing in the account changes and no reply is sent here.
get_arrivals_comparisonread-onlyReturn counted arrivals beside Meta outbound clicks for the authorized workspace and selected trailing window. The purchases block shows Meta-reported Purchase counts under the account attribution setting beside Plainrouter accepted server-side Purchase counts, with its completed account-local window end date and no purchase gap or status. Days before 2026-06-29, or not re-read by the daily sync s
get_cookie_scanread-onlyRead the latest pre-consent cookie scan for the authorized workspace. Blocked and failed scans report findings as unavailable, never as a clean result. When bot protection blocks the start page, allowlist the PlainRouterScanner user agent before retrying.
get_consent_ratesread-onlyRead recorded consent rates and recent consent receipts for the requested authorized workspace. Rates cover the retained period and split Analytics and Marketing grants by day, country, language, and banner version. This tool does not change data or call advertising APIs.
Alternatives in Marketing & SEO
Compare →
Content Strategy Trends MCPB
Topics gaining momentum before they peak. Trend volume and growth signals. Free key at trendsmcp.ai
SEO Trends MCPB
Spot keyword demand rising or fading. Trend volume and growth signals. Free key at trendsmcp.ai
X (Twitter) Trends MCPB
Twitter (X) trends over time, with growth for any keyword. Free key at trendsmcp.ai
SASsemble AI ClippingB
Create AI-powered short-form video clips from YouTube videos. Supports webhook callbacks.
HIHasData InstagramB
Public Instagram profiles and post feeds by handle, with hashtags and mentions parsed.
VHVerified HandlesB
Look up people, organisations and things, and their official social media accounts and identifiers.