Meta Ads (Facebook & Instagram)
Read and manage Meta Ads campaigns, ad sets, ads, audiences, pages and Business Manager. You provide
Connect it
Settings → Connectors → Add custom connector
URL: https://api.mcp.ai/p_meta_adsSettings → Apps & Connectors → Advanced → Developer mode
Create connector with URL: https://api.mcp.ai/p_meta_ads{
"mcpServers": {
"meta-ads-mcp": {
"url": "https://api.mcp.ai/p_meta_ads"
}
}
}claude mcp add --transport http meta-ads-mcp https://api.mcp.ai/p_meta_ads{
"servers": {
"meta-ads-mcp": {
"type": "http",
"url": "https://api.mcp.ai/p_meta_ads"
}
}
}44 tools, verified live
meta_ads_list_accountsread-onlyList Meta (Facebook) connections AND the ad accounts inside each â returns `connections[]` (OAuth logins) and `ad_accounts[]` with id (act_XXX), name, currency, timezone, status. Use the ad_account_id in `account` on the other tools.
meta_ads_statusread-onlyValidate Facebook token, check expiry date, list connected ad accounts and scopes.
meta_ads_campaignsread-onlyList Meta Ads campaigns. Returns: id, name, status, objective, budget, dates. Set include_paused=true to also show paused campaigns.
meta_ads_todayread-onlyToday's ad performance dashboard. Returns per-ad: spend, revenue, ROAS, CPA, impressions, clicks, CTR. Plus _summary aggregate across all ads.
meta_ads_roasread-onlyROAS (Return on Ad Spend) for a date range using Meta's /insights endpoint â includes spend from ads in ANY status (ACTIVE/PAUSED/DISABLED/ARCHIVED). Defaults to current month, level=ad. For account totals use level=account; for per-campaign view use level=campaign. Returns per-row spend, revenue, ROAS, plus _summary.
meta_ads_adsread-onlyList ads with creatives (image, video, copy) and performance insights. Includes spend, revenue, ROAS, actions.
meta_ads_realtimeread-onlyHourly realtime dashboard for today. Shows per-ad breakdown with hourly stats, campaign/adset/creative details, plus _summary.
meta_ads_adset_detailread-onlyGet detailed ad set info: targeting, budget, schedule, billing, optimization goal, delivery status. Fills the gap between campaigns and ads.
meta_ads_pages_listread-onlyRead Facebook Pages data. Actions: list â all pages the user manages (name, fan_count, followers) insights â page engagement metrics (follows, views) for a specific page posts â recent posts with likes, comments, shares post_insights â detailed insights for a specific post [Flattened action: list] Bulk support: accepts page_ids, post_ids for batched execution.
meta_ads_pages_insightsread-onlyRead Facebook Pages data. Actions: list â all pages the user manages (name, fan_count, followers) insights â page engagement metrics (follows, views) for a specific page posts â recent posts with likes, comments, shares post_insights â detailed insights for a specific post [Flattened action: insights] Bulk support: accepts page_ids, post_ids for batched execution.
meta_ads_pages_postsread-onlyRead Facebook Pages data. Actions: list â all pages the user manages (name, fan_count, followers) insights â page engagement metrics (follows, views) for a specific page posts â recent posts with likes, comments, shares post_insights â detailed insights for a specific post [Flattened action: posts] Bulk support: accepts page_ids, post_ids for batched execution.
meta_ads_pages_post_insightsread-onlyRead Facebook Pages data. Actions: list â all pages the user manages (name, fan_count, followers) insights â page engagement metrics (follows, views) for a specific page posts â recent posts with likes, comments, shares post_insights â detailed insights for a specific post [Flattened action: post_insights] Bulk support: accepts page_ids, post_ids for batched execution.
meta_ads_business_listread-onlyRead Facebook Business Manager data. Actions: list â list Business Managers accounts â ad accounts owned by a BM pages â pages owned by a BM users â business users and system users pixels â pixels owned by a BM [Flattened action: list] Bulk support: accepts business_ids for batched execution.
meta_ads_business_accountsread-onlyRead Facebook Business Manager data. Actions: list â list Business Managers accounts â ad accounts owned by a BM pages â pages owned by a BM users â business users and system users pixels â pixels owned by a BM [Flattened action: accounts] Bulk support: accepts business_ids for batched execution.
meta_ads_business_pagesread-onlyRead Facebook Business Manager data. Actions: list â list Business Managers accounts â ad accounts owned by a BM pages â pages owned by a BM users â business users and system users pixels â pixels owned by a BM [Flattened action: pages] Bulk support: accepts business_ids for batched execution.
meta_ads_business_usersread-onlyRead Facebook Business Manager data. Actions: list â list Business Managers accounts â ad accounts owned by a BM pages â pages owned by a BM users â business users and system users pixels â pixels owned by a BM [Flattened action: users] Bulk support: accepts business_ids for batched execution.
meta_ads_business_pixelsread-onlyRead Facebook Business Manager data. Actions: list â list Business Managers accounts â ad accounts owned by a BM pages â pages owned by a BM users â business users and system users pixels â pixels owned by a BM [Flattened action: pixels] Bulk support: accepts business_ids for batched execution.
meta_ads_media_list_imagesread-onlyList uploaded media in the ad account. Actions: list_images, list_videos. [Flattened action: list_images]
meta_ads_media_list_videosread-onlyList uploaded media in the ad account. Actions: list_images, list_videos. [Flattened action: list_videos]
meta_ads_audienceread-onlyList Custom Audiences in the ad account.
meta_ads_campaign_write_createCreate, update, pause or activate Meta Ads campaigns. Actions: create â new campaign (name, objective, budget required) update â change name, budget, status pause â shortcut to pause a campaign activate â shortcut to activate a campaign Objectives: OUTCOME_TRAFFIC, OUTCOME_ENGAGEMENT, OUTCOME_LEADS, OUTCOME_SALES, OUTCOME_AWARENESS, OUTCOME_APP_PROMOTION. Budgets are in cents (
meta_ads_campaign_write_updateCreate, update, pause or activate Meta Ads campaigns. Actions: create â new campaign (name, objective, budget required) update â change name, budget, status pause â shortcut to pause a campaign activate â shortcut to activate a campaign Objectives: OUTCOME_TRAFFIC, OUTCOME_ENGAGEMENT, OUTCOME_LEADS, OUTCOME_SALES, OUTCOME_AWARENESS, OUTCOME_APP_PROMOTION. Budgets are in cents (
meta_ads_campaign_write_pauseCreate, update, pause or activate Meta Ads campaigns. Actions: create â new campaign (name, objective, budget required) update â change name, budget, status pause â shortcut to pause a campaign activate â shortcut to activate a campaign Objectives: OUTCOME_TRAFFIC, OUTCOME_ENGAGEMENT, OUTCOME_LEADS, OUTCOME_SALES, OUTCOME_AWARENESS, OUTCOME_APP_PROMOTION. Budgets are in cents (
meta_ads_campaign_write_activateCreate, update, pause or activate Meta Ads campaigns. Actions: create â new campaign (name, objective, budget required) update â change name, budget, status pause â shortcut to pause a campaign activate â shortcut to activate a campaign Objectives: OUTCOME_TRAFFIC, OUTCOME_ENGAGEMENT, OUTCOME_LEADS, OUTCOME_SALES, OUTCOME_AWARENESS, OUTCOME_APP_PROMOTION. Budgets are in cents (
meta_ads_campaign_deletecan modifyPermanently delete a Meta Ads campaign. Irreversible. Bulk support: accepts campaign_ids for batched execution.
meta_ads_adset_write_createCreate or update Meta Ads ad sets. Actions: create â new ad set linked to a campaign (targeting, budget, schedule) update â change fields on existing ad set Targeting is a JSON object: { "geo_locations": { "countries": ["BR"] }, "age_min": 18, "age_max": 65, "genders": [1, 2] } Budgets in cents. BUDGET (most common create failure): the ad set REQUIRES daily_budget or lifetime_budget, UNLES
meta_ads_adset_write_updateCreate or update Meta Ads ad sets. Actions: create â new ad set linked to a campaign (targeting, budget, schedule) update â change fields on existing ad set Targeting is a JSON object: { "geo_locations": { "countries": ["BR"] }, "age_min": 18, "age_max": 65, "genders": [1, 2] } Budgets in cents. BUDGET (most common create failure): the ad set REQUIRES daily_budget or lifetime_budget, UNLES
meta_ads_adset_deletecan modifyPermanently delete a Meta Ads ad set. Irreversible. Bulk support: accepts adset_ids for batched execution.
meta_ads_creative_write_create_creativeCreate ad creatives and ads (final step to launch). Actions: create_creative â create ad creative with image/video + copy (requires page_id) create_ad â create ad linking creative to ad set update_ad â update ad fields (name, status, creative) For create_creative: provide image_hash (from upload_image) OR video_id (from upload_video) + page_id + message. call_to_action_type
meta_ads_creative_write_create_adCreate ad creatives and ads (final step to launch). Actions: create_creative â create ad creative with image/video + copy (requires page_id) create_ad â create ad linking creative to ad set update_ad â update ad fields (name, status, creative) For create_creative: provide image_hash (from upload_image) OR video_id (from upload_video) + page_id + message. call_to_action_type
meta_ads_creative_write_update_adCreate ad creatives and ads (final step to launch). Actions: create_creative â create ad creative with image/video + copy (requires page_id) create_ad â create ad linking creative to ad set update_ad â update ad fields (name, status, creative) For create_creative: provide image_hash (from upload_image) OR video_id (from upload_video) + page_id + message. call_to_action_type
meta_ads_creative_deletecan modifyPermanently delete a Meta Ads ad. Irreversible. Bulk support: accepts ad_ids for batched execution.
meta_ads_media_write_upload_imageUpload images and videos to Meta Ads account. Actions: upload_image â upload an image. Returns the image hash you need for create_creative. upload_video â upload video from URL (Meta fetches it). Returns video_id. get_upload_command â get a curl command for uploading large local video files (keeps file out of AI context). upload_image accepts the file in four ways (use e
meta_ads_media_write_upload_videoUpload images and videos to Meta Ads account. Actions: upload_image â upload an image. Returns the image hash you need for create_creative. upload_video â upload video from URL (Meta fetches it). Returns video_id. get_upload_command â get a curl command for uploading large local video files (keeps file out of AI context). upload_image accepts the file in four ways (use e
meta_ads_media_write_get_upload_commandUpload images and videos to Meta Ads account. Actions: upload_image â upload an image. Returns the image hash you need for create_creative. upload_video â upload video from URL (Meta fetches it). Returns video_id. get_upload_command â get a curl command for uploading large local video files (keeps file out of AI context). upload_image accepts the file in four ways (use e
meta_ads_audience_write_createManage Custom Audiences for targeting. Actions: create â create a new custom audience add_users â upload hashed user data (email, phone, first/last name). PII is SHA-256 hashed before upload. Users format: array of { email, phone?, fn?, ln? }. Data is normalized and hashed automatically. For destructive delete use meta_ads_audience_delete. [Flattened action: create] Bulk support: ac
meta_ads_audience_write_add_usersManage Custom Audiences for targeting. Actions: create â create a new custom audience add_users â upload hashed user data (email, phone, first/last name). PII is SHA-256 hashed before upload. Users format: array of { email, phone?, fn?, ln? }. Data is normalized and hashed automatically. For destructive delete use meta_ads_audience_delete. [Flattened action: add_users] Bulk support:
meta_ads_audience_deletecan modifyPermanently delete a Custom Audience. Irreversible. Bulk support: accepts audience_ids for batched execution.
show_versionread-onlyShow the current MCP platform and adapter versions.
report_bugReport a bug, missing feature, or send feedback. Include the conversation array with recent messages for reproduction.
connectread-onlyReturns connection status and URLs. When all providers are connected, returns authenticated:true and empty pending[]. When credentials are missing, returns connect_url for the toolkit and per-install URLs.
toolkit_inforead-onlyReturns the current toolkit state: installed MCPs, their connection status, the accounts connected to each one, and how many catalog tools each exposes.
marketplaceThe official mcp.ai marketplace â the in-platform catalog of every MCP/tool, AND the way to run them. Covers capability requests like "find an MCP that does X", "consulta um CPF", "is there a tool for Y". Core flow: action=search discovers MCPs by intent â describe returns one MCP's full profile (every tool with its id + params, pricing, auth) so you pick the right tool_id â invoke RUNS that
authenticateMCP.AI for IDE agents (Cursor, etc.): log in in the browser, copy the access token. Best: add it to this server's config as a header `Authorization: Bearer <token>` for a permanent, non-expiring connection. Or paste it here for a session-only login: call with { token: "<jwt>" } after the user pastes, or with no args to get the link.
Alternatives in Developer Tools
Compare →
VirusTotalOfficialA
Official VirusTotal MCP server: threat reports, file and URL submissions, and analysis recovery.
NENetdataA
Real-time infrastructure monitoring with metrics, logs, alerts, and ML-based anomaly detection.
OMOmnaraA
Deploy durable AI agents with Omnara, an open-source managed-agent platform.
RDRevoGrid DataGrid MCPA
Token-free MCP server for structured RevoGrid Core, Pro, and Enterprise knowledge retrieval.
RDRevoGrid DataGrid MCP ProA
Hosted Pro MCP server for RevoGrid DataGrid docs, examples, feature checks, and migration guidance.
LALabelhead Artist MomentumA
Trending hip-hop artist momentum scores across four cultural dimensions.