Connect
Meta Ads to
Claude Code
- Do our events dedupe?
https://mcp.lemonado.io/mcpUse Claude Code to check your Meta pixel and Conversions API events against what Meta Ads reports, and save ad data into your project. Lemonado connects them in about 1 minute, no API keys needed.
https://mcp.lemonado.io/mcpWhy connect Meta Ads to Claude Code?
Pixel and Conversions API bugs live in code, but they show up as odd numbers in Meta Ads. Claude Code can read both sides, the events you send and the conversions Meta records, and fix the mismatch in the same session.
Your whole Meta Ads account
Campaigns, ad sets and ads, ready to ask about.
Always today's numbers
Spend, reach, frequency, CTR and CPM, synced from Meta Ads automatically, so answers use today's numbers.
Connect all your tools
Questions like "Do Meta and GA4 agree?" use Meta Ads and Google Ads, TikTok Ads at once.
How to connect Meta Ads to Claude Code
Before you start
- A Meta Ads account you can sign in to
- Claude Code installed
- A Lemonado account (the free trial works)
- 1
Connect Meta Ads in Lemonado
In Lemonado, open Connectors, find Meta Ads and sign in. Choose the ad accounts you want from the Business Manager your Facebook login can see.
- 2
Turn on external access
In the company's settings, open External tools, turn the connection on, choose which sources it can reach and copy the server URL.
texthttps://mcp.lemonado.io/mcp - 3
Add the server
With Claude Code installed, run one of these in your terminal. Most people want the first: it adds Lemonado to every project.
bash# every project (recommended) claude mcp add --scope user --transport http lemonado https://mcp.lemonado.io/mcp # this project only claude mcp add --transport http lemonado https://mcp.lemonado.io/mcp - 4
Sign in
Start Claude Code with claude and run /mcp. Choose Lemonado and finish the sign-in in your browser.
bashclaude /mcp - 5
Ask Claude Code about Meta Ads
Ask a question about the accounts your connection can reach. Claude Code can also write the numbers into a file or a script for you. Try "Check that our Conversions API events send the same event_id as the browser pixel, then compare Meta's reported purchases with our orders." Or ask: "When does each ad wear out?" or "Does the pixel match?"
Good to know
- The command uses Claude Code's default local scope. Use --scope user to share the server across projects.
What can Claude Code do with Meta Ads?
Claude Code queries your Meta Ads data while it works in your repo: it saves data as files, checks tracking against code and runs headless with claude -p.
Check that our Conversions API events send the same event_id as the browser pixel, then compare Meta's reported purchases with our orders.
server/capi.ts builds event_id from the order ID, but the pixel uses a random UUID, so nothing dedupes. Meta reports 1.6x the purchases we actually had.
Source: Meta Ads + your code
Build a notebook cell that charts CTR by day since launch for our 10 biggest ads, so we can see where each one wears out.
Added the cell to analysis/fatigue.ipynb with the data inline. Most ads drop under 1% CTR between day 9 and day 14.
Source: Meta Ads + your code
Compare the Meta pixel events we fire in the code with the conversion events Meta Ads reports. Which ones are missing or misnamed?
"AddPaymentInfo" fires in checkout.ts but Meta has no conversions for it this month. The event name has a trailing space in the code.
Source: Meta Ads + your code
Save spend, CTR, frequency and purchases by ad for the last 60 days as data/meta_ads.csv, with the creative name on each row.
Saved 214 rows to data/meta_ads.csv. 18 ads have spend but no creative name, so I filled those with the ad ID.
Source: Meta Ads + your code
Did the Advantage+ audience beat our interest stack on cost per purchase?
Yes. $31 vs $44 over 21 days, with 2.3x the purchases. The gap is widest on 35 to 54-year-olds.
Source: Meta Ads
What do our last 10 winning ads have in common? Write a brief for the next three.
8 of 10 show the product in use in the first second and name a price. Brief: three 15s UGC cuts, price on screen by 0:02.
Source: Meta Ads
Connect Meta Ads to another AI app.
Claude
Connect Meta Ads to Claude
ChatGPT
Connect Meta Ads to ChatGPT
Cursor
Connect Meta Ads to Cursor
VS Code (GitHub Copilot)
Connect Meta Ads to VS Code (GitHub Copilot)
Codex
Connect Meta Ads to Codex
Perplexity
Connect Meta Ads to Perplexity
Google Antigravity
Connect Meta Ads to Google Antigravity
Windsurf (Devin Desktop)
Connect Meta Ads to Windsurf (Devin Desktop)
Zed
Connect Meta Ads to Zed
n8n
Connect Meta Ads to n8n
Other integrations for Claude Code
All Claude Code integrations- Google Ads in Claude CodeAsk Claude, ChatGPT or Cursor about your Google Ads campaigns, search terms and spend.
- Google Analytics in Claude CodeAsk Claude, ChatGPT or Cursor about GA4 traffic, conversions and funnels, next to your ad spend.
- Google Search Console in Claude CodeAsk Claude, ChatGPT or Cursor about your search queries, rankings and lost clicks.
- Google Sheets in Claude CodeUse your media plans, targets and offline sales sheets in Claude, next to live ad data.
- LinkedIn Ads in Claude CodeAsk Claude, ChatGPT or Cursor about LinkedIn campaigns, lead forms and who converts.
- TikTok Ads in Claude CodeAsk Claude, ChatGPT or Cursor which TikTok videos hold attention and which ones sell.
Reading this as an AI agent?
Everything an agent needs to set this up, in plain text. Paste this page's link into Claude Code and ask it to connect you, or copy the block.
# Connect Meta Ads to Claude Code (Lemonado MCP) - Server URL: https://mcp.lemonado.io/mcp - Transport: Streamable HTTP - Auth: OAuth; the user signs in to Lemonado in the browser. No API keys. - In Lemonado: connect the Meta ad account. Choose the ad accounts you want from the Business Manager your Facebook login can see. - In Claude Code: Terminal: claude mcp add ```bash # every project (recommended) claude mcp add --scope user --transport http lemonado https://mcp.lemonado.io/mcp # this project only claude mcp add --transport http lemonado https://mcp.lemonado.io/mcp ``` If you are Claude Code, run the setup yourself: Add the Lemonado MCP server for all my projects by running: claude mcp add --scope user --transport http lemonado https://mcp.lemonado.io/mcp Then tell me to run /mcp and sign in to Lemonado. Once I've signed in, list the Meta Ads accounts Lemonado can reach. First question to try: "Check that our Conversions API events send the same event_id as the browser pixel, then compare Meta's reported purchases with our orders." More: https://lemonado.io/integrations/meta-ads · https://lemonado.io/llms.txt
Frequently Asked Questions
No. You sign in to Meta once in Lemonado, and Claude Code reaches your ad accounts through the Lemonado server. There's no Meta developer app to create, no system user token to rotate and nothing to store in your repo.
Yes. Meta's official Ads MCP server is hosted, so Claude Code can use it too. It covers Meta only. Lemonado covers Meta plus Google Ads, GA4 and TikTok in one connection, so Claude Code can compare channels in one question.
Run claude mcp list to see whether lemonado is connected. If it needs authentication, run /mcp inside Claude Code and sign in again. In Lemonado, check that Meta Ads is connected and External tools is on for the company. If an ad account is missing, check that your Facebook user has access to it in Business settings, then reconnect Meta Ads in Lemonado.
Yes, if both are connected in Lemonado. One connection reaches every source you allow, so you can ask things like "Compare Meta's reported purchases with GA4 purchases from paid social for the last 30 days."
MCP is included in Lemonado's paid plans and in the free trial, so you can try it before you pay.
Still have a question?
Shoot us an email at hello@lemonado.io.
Try for freeStop fighting with data. Start feeding your AI.
Connect your data to AI and free your team from reporting and busywork.
Try Lemonado free