Spend, CPA and ROAS by campaign, ad set or ad, live delivery with Meta’s own breakdowns, change history and Pixel health — answered inside ChatGPT, Claude, Codex or Cursor. Connect your ad account to Soku once; your AI reads it with your own login, and every read costs 0 credits.
Claude CodeCodexCursorVS CodeChatGPTClaude (web & desktop)Your own agent
Soku Connect
Sign in, connect the account once, paste the setup prompt to your agent, ask something. That’s the whole setup.
Your accounts, one connection
ads, analytics, commerce and revenue
Meta Ads
CPA and delivery on Facebook and Instagram
Google Ads
Campaigns, keywords and search terms
TikTok Ads
Spend, results, Smart+ and GMV Max reporting
200+
APIs
40+
apps
30+
skills
Ask once and your AI reads the accounts you connected — no paid data call involved.
Your own account0 credits per readRead-only
The ask
New chatsoku · connected
My CPA doubled last week. Find what changed and show me the evidence.
ads_get_insightsMeta Ads · your account0 creditsSpend +4%, results −48% from Aug 19 onward
ads_list_adsMeta Ads · your account0 credits3 creatives launched Aug 19, now 71% of delivery
ga4_run_reportGoogle Analytics 4 · your account0 creditsLanding-page conversion 2.8% → 1.4% on the same traffic
foreplay_requestCompetitor ad library · Soku-suppliedcharged $0.122 rivals launched 14 new creatives in the same window
Not creative fatigue — delivery. The three ads launched Aug 19 took 71% of spend and convert at half the rate of the set they displaced, while two competitors crowded the same auction. Pause the new set and your CPA returns to roughly $34.
Where this came from
Your connected accounts0 credits
Meta Adsfree
Google Analytics 4free
Built-in — Soku buys itquoted first
Competitor ad library$0.12
4 calls$0.12
Illustrative figures. Every source, mark and price rule comes from the live Connect catalogue.
About five minutes
Set it up once, in the app you already use.
Connect your Meta Ads account in Soku once. After that, every AI app you approve reads it through the same connection, with nothing to install for Meta Ads itself.
Claude Code
One sign-in covers every project, and headless runs (`claude -p`, CI, the Agent SDK) work without a browser — `claude mcp add` only writes config, so a non-interactive run can never finish the MCP authorization. Both surfaces can act on your accounts once you approve each change.
1
Create your Soku workspace
The connection is public and identical for everyone — your Soku sign-in is what points it at your data. Connect one account in that workspace too: that is what your AI reads. The first time your AI uses the connection, Soku asks you to approve the access and names the workspace it will read through — so the workspace has to exist by then.
Already have one? Nothing to do here — sign in when the connection asks for it.
2
Copy the Soku MCP connection
https://api.soku.ai/mcp
3
Add it to Claude Code
claude mcp add --transport http soku https://api.soku.ai/mcp
Run the command in any project. It writes the configuration and prints an `Added …` line.
Authorize separately — adding a server does not open a browser.
Run `claude mcp list` to confirm the server reads `✔ Connected`.
4
Approve the access, then ask it something
Inside Claude Code, run `/mcp` and follow the browser flow — or, from your shell, `claude mcp login soku`.
The Soku consent page names the host, the workspace the grant will read through, and what the connection will be able to do.
Approving creates the grant listed above on this page. Cancelling creates nothing.
On a machine with no browser (SSH, headless Linux), `claude mcp login soku --no-browser` prints the URL and takes the pasted callback.
Paste this first
Using Soku, search for what capabilities I can reach.
A list of capabilities with names, what each reads and what each costs. An empty list means the search matched nothing — try broader words. An error naming authorization means the host never completed the browser step.
Checked 2026-08-25 against Claude Code documentation. Menu names change between releases — look for connectors, apps, tools or integrations.
Ask in plain English. These are the tools behind the answer.
Each one is a tool your AI is offered by name once you connect. You never have to type the name — it is here so you can tell what actually ran.
CPA and ROAS by campaign, ad set, ad or day
ads_query_single_dimension
Spend, clicks, conversions, CPA and ROAS, grouped by one dimension over a date range — read from Soku’s synced copy of the account, so a whole month answers in one call.
“What was our Meta CPA by campaign last week?”
“Which ads had the best ROAS over the last 30 days?”
Live delivery, with Meta’s own breakdowns
ads_get_insights
Up-to-the-minute Insights at account, campaign, ad set or ad level, broken down the way Ads Manager does — age, gender, country, placement.
“How is this campaign delivering right now?”
“Break down yesterday’s spend by age and placement.”
Every campaign, as it stands on Meta
ads_list_campaigns
The live campaign inventory with status, objective and budget — what is actually running, not what a report last saw.
“Which Meta campaigns are active, and what are their budgets?”
“List the campaigns that are paused.”
Who changed what, and when
ads_get_change_history
The ad account’s own activity log: who made each change, to which object, and what it was — the first thing to read when a result moves overnight.
“Who changed the budget on this campaign this week?”
“What changed in the account before performance dropped?”
Whether your Pixel signal is healthy
ads_get_dataset_quality
Event stats and match rate for a Pixel or Conversions API dataset, so a CPA spike can be ruled in or out as a tracking problem before anyone touches the ads.
“Is our Meta Pixel signal quality healthy?”
“What match rate is our dataset getting?”
What Meta itself recommends
ads_get_opportunity_score
The account’s opportunity score and the recommendations Meta attaches to it, read straight from the Graph API.
“What does Meta recommend we fix in this account?”
“What is our account’s opportunity score?”
And 43 more, same connection
Named rather than worked through — your AI discovers all of them through the connection itself, so you never have to pick one.
Audit every tracked automation setting against the live accountads_audit_ad_automation_inventory
Check whether AI-automation settings drifted from what was approvedads_audit_creative_automation
Estimate the reach of a targeting setupads_estimate_audience_size
Preview how an ad rendersads_generate_ad_preview
Account status, currency, spend and billing factsads_get_account_info
The Pages and identities the account can advertise asads_get_account_pages
One ad’s live status, creative and trackingads_get_ad
One creative’s contentads_get_ad_creative
The creatives attached to one adads_get_ad_creatives
One ad set’s targeting, budget and biddingads_get_adset
One campaign’s live settings and statusads_get_campaign
Feed and item problems in a product catalogads_get_catalog_diagnostics
The Instagram accounts connected to the ad accountads_get_connected_instagram_accounts
One custom conversionads_get_custom_conversion
Which date ranges have finished syncingads_get_data_readiness
Whether conversion tracking is ready for a conversion campaignads_get_deploy_readiness
The leads a form or an ad collectedads_get_leads
Whether offline conversions are set up to be receivedads_get_offline_conversion_readiness
One product catalogads_get_product_catalog_details
One product feedads_get_product_feed_details
The rules on a product feedads_get_product_feed_rules
The ad accounts this workspace can readads_list_ad_accounts
Every creative in the accountads_list_ad_creatives
Ad labelsads_list_ad_labels
Automated rules and what they doads_list_ad_rules
The ads in an account, campaign or ad groupads_list_ads
Ad sets, with budget and targetingads_list_adsets
The conversion actions the account tracksads_list_conversion_actions
Custom audiencesads_list_custom_audiences
Custom conversionsads_list_custom_conversions
Posts published by a connected Instagram accountads_list_instagram_media
Lead forms and their questionsads_list_lead_forms
Pixels, and when each one last firedads_list_pixels
Product catalogsads_list_product_catalogs
The products in a product setads_list_product_set_products
The product sets in a catalogads_list_product_sets
The products in a catalogads_list_products
Saved audiencesads_list_saved_audiences
Read an entity’s current automation settingsads_preview_automation_baseline
Performance broken down by several dimensions at onceads_query_multi_dimension
Look up location targeting keysads_search_geo_locations
Search interest targetingads_search_interests
Look up job, behavior, industry and income targetingads_search_targeting
Pricing
Choose the Soku plan for your research and agent workflow.
Start free, upgrade when your team needs more credits, more brands, or deeper workflow execution.