Documentation
Open /connect and click Connect Meta. This performs a full-page navigation to the backend at /auth/meta/start. The backend handles OAuth, PKCE, and encrypted token storage; you return to /dashboard?meta=connected.
Visit /ad-accounts to list every Meta ad account the connected user can access. Copy an ad account id (act_...) to use it when listing campaigns.
Use /campaigns to list campaigns for a given ad account, and /insights to fetch Meta insights for any object id (ad account, campaign, ad set, or ad).
Create, update, and pause are confirmation-gated. Submit the form, review the exact tool name and arguments, and approve. The frontend replays the same call with a confirmationToken and reports success only after the second call resolves.
Confirmation tokens live for a short window (typically 15 minutes). Expired confirmations are cleared automatically and the flow restarts.
The backend exposes exactly eight tools via JSON-RPC 2.0 at POST /mcp.
| Tool | Kind | Arguments |
|---|---|---|
| meta_list_ad_accounts | read | {} |
| meta_list_pages | read | {} |
| meta_list_campaigns | read | { adAccountId, limit? } |
| meta_get_campaign | read | { campaignId } |
| meta_get_insights | read | { objectId, datePreset?, level? } |
| meta_create_campaign | write | { adAccountId, name, objective, specialAdCategories?, confirmationToken? } |
| meta_update_campaign | write | { campaignId, name?, status?, confirmationToken? } |
| meta_pause_campaign | write | { campaignId, confirmationToken? } |