com.adbloop/meta-ads
Official23 toolsAdbloop Meta Ads
Meta Ads MCP: bulk-create Facebook & Instagram ads across accounts from Drive folders, guardrailed.
Bulk-create Facebook and Instagram ads across accounts from Drive folders.
Captured live from the server via tools/list.
create_campaign
Create ONE Meta campaign (created PAUSED for review). Free-plan friendly — counts toward your monthly campaign limit. To launch many at once or from a Drive folder, use bulk_create_campaigns (Pro). Needs a public imageUrl (or Drive/Dropbox share link) for image ads. WRITES live.
Parameters (15)
- meta_account_idstring
Ad account to create on (defaults to your primary).
- campaignNamestringrequired
- objectivestringrequired
- performanceGoalstring
- conversionLocationstring
- useCBOboolean
- cboBudgetnumber
- dailyBudgetnumber
- imageUrlstring
Image for the ad. Paste a PUBLIC https image URL, OR a single Google Drive / Dropbox file share link (shared so 'Anyone with the link can view') — these are auto-converted. For a single campaign, ask the user for ONE image's share link. (Listing a whole Drive folder to spin up one campaign per image is a Pro feature.)
- videoUrlstring
- websiteUrlstring
- ctaButtonstring
- primaryTextstring
- headlinestring
- descriptionstring
create_structured
Create ONE campaign with MULTIPLE ad sets and MULTIPLE ads each (1 campaign -> N ad sets -> M ads), image or video, including DPA/Catalog dynamic product ads. Created PAUSED. Honors spend guardrails. Pro feature. WRITES live.
Parameters (2)
- meta_account_idstring
Ad account (defaults to primary).
- campaignsarrayrequired
One or more structured campaigns (usually one).
get_ad_accounts
List the Meta ad accounts connected to this Adbloop user, with the Page NAME + Instagram username + pixel each account uses. Use this to resolve a spoken account/page name to IDs.
No parameters.
list_drive_folder
List the images/videos inside a PUBLIC Google Drive folder (must be shared as 'Anyone with the link'). Returns each file's name and a Drive URL usable directly as imageUrl in bulk_create_campaigns. Perfect for 'create one campaign per image in this folder'. Read-only.
Parameters (1)
- folder_urlstringrequired
Google Drive folder link (or bare folder ID)
get_insights
Rate-limit-safe Meta performance metrics (spend, impressions, clicks, CTR, leads, purchases, ROAS). Read-only.
Parameters (7)
- meta_account_idstring
- levelstring
- date_presetstring
- sincestring
- untilstring
- campaign_idstring
- limitnumber
list_campaigns
List existing campaigns with status, budget, effective status. Read-only.
Parameters (4)
- meta_account_idstring
- status_filterarray
- limitnumber
- afterstring
list_adsets
List ad sets — across the account or inside one campaign. Shows budget, optimization goal, status. Read-only.
Parameters (3)
- meta_account_idstring
- campaign_idstring
- limitnumber
list_ads
List ads — across the account or inside one ad set. Includes creative preview info. Read-only.
Parameters (3)
- meta_account_idstring
- adset_idstring
- limitnumber
get_campaign_structure
Full tree of one campaign: its ad sets and every ad inside each. Read-only.
Parameters (2)
- campaign_idstringrequired
- meta_account_idstring
add_ad_to_adset
Add a NEW ad (with creative) to an EXISTING ad set. Created PAUSED. Accepts either an existing creative_id, a library image_hash (this is where saved library creatives CAN be used), or ad copy fields. WRITES live.
Parameters (11)
- adset_idstringrequired
- ad_namestring
- creative_idstring
Use an existing Meta creative as-is.
- image_hashstring
Use a saved library creative's image_hash — supported here (unlike bulk-create).
- website_urlstring
- primary_textstring
- headlinestring
- descriptionstring
- ctastring
e.g. LEARN_MORE
- page_idstring
- meta_account_idstring
pause_campaigns
Pause campaigns/ad sets/ads by ID. Reversible.
Parameters (2)
- campaign_idsarrayrequired
- meta_account_idstring
resume_campaigns
Resume (activate) paused campaigns/ad sets/ads by ID. Turns spend ON.
Parameters (2)
- campaign_idsarrayrequired
- meta_account_idstring
delete_campaigns
PERMANENTLY delete campaigns/ad sets/ads by ID. Irreversible — requires confirm:true. Use pause instead if unsure.
Parameters (3)
- campaign_idsarrayrequired
- meta_account_idstring
- confirmbooleanrequired
Must be true — deletion is permanent.
update_campaign_budget
Change the daily budget (and/or rename) of an existing campaign or ad set. The account is required so the new budget is checked against your spend guardrails. WRITES live.
Parameters (4)
- entity_idstringrequired
Campaign ID (CBO budget) or ad set ID.
- daily_budgetnumber
New daily budget, MAJOR units (e.g. 500 = ₹500).
- namestring
Optional new name.
- meta_account_idstringrequired
REQUIRED — the ad account this entity belongs to (for the guardrail check).
search_targeting
Search Meta's targeting interests by keyword (e.g. 'yoga', 'small business owners'). Returns interest names, IDs, and audience sizes — useful when planning campaigns. Read-only.
Parameters (2)
- querystringrequired
- meta_account_idstring
get_lead_forms
List the lead-gen forms available on a Facebook Page (for OUTCOME_LEADS campaigns). Read-only.
Parameters (2)
- page_idstringrequired
- meta_account_idstring
get_creative_library
List the user's saved creatives. NOTE: image_hash works with add_ad_to_adset, but bulk_create_campaigns needs a public imageUrl (or Drive/Dropbox link). Read-only.
Parameters (1)
- limitnumber
estimate_bulk_create
Estimate how long bulk creation will take for N campaigns. Read-only.
Parameters (1)
- countnumberrequired
get_guardrails
View the spend safety limits for an account. Read-only. Editable only by the owner in Adbloop settings.
Parameters (1)
- meta_account_idstring
check_capacity
Check an ad account's current Meta API rate-limit headroom BEFORE a bulk run. Read-only. Returns GO/TIGHT/SPLIT/WAIT_OR_SPLIT/WAIT + utilization + regain minutes.
Parameters (2)
- meta_account_idstringrequired
- campaign_countnumber
validate_campaigns
Pre-flight check campaign rows BEFORE creating. Read-only. Per-row verdict: will_create / will_create_with_changes / will_fail. Pass meta_account_id to also check spend guardrails.
Parameters (2)
- meta_account_idstring
- campaignsarrayrequired
bulk_create_campaigns
Create many Meta campaigns at once on ONE account (rate-limit-safe, validated). WRITES live. Honors plan limits, spend guardrails, and capacity. Auto-uses the correct Page/Instagram/pixel. Each campaign needs an imageUrl (public image, or Drive/Dropbox share link).
Parameters (8)
- meta_account_idstring
- page_idstring
- instagram_account_idstring
- pixel_idstring
- catalogIdstring
- productSetIdstring
- confirmboolean
- campaignsarrayrequired
bulk_create_multi_account
Launch the SAME campaign set across MULTIPLE ad accounts in one call (up to 5 accounts; chain calls for more). Each account gets its own currency-aware guardrails, capacity check (throttled accounts are skipped, not hammered), and correct Page/Instagram/pixel. WRITES live.
Parameters (3)
- account_idsarrayrequired
Up to 5 Meta ad account IDs.
- confirmboolean
- campaignsarrayrequired
README not available yet.
Install
claude_desktop_config.json
{
"mcpServers": {
"meta-ads": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://mcp.adbloop.com/mcp"
]
}
}
}Desktop config is stdio-only; this bridges via mcp-remote. Native remote: Settings > Connectors.