Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, email [email protected] and we’ll put it right.

ZuckerBot — Meta Ads MCP Server

NPM · ZUCKERBOT-MCP · 2 COMPONENTS · SCANNED AUG 3

60+ Meta Ads tools for AI agents: audits, campaign management, audiences and CAPI tracking.

+58 this week 64 Trust /100
Trust breakdown (6 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score →

Supply Chain Security83
  • No malware found by supply-chain analysis.Pass
  • CVE check failed: a known medium-severity CVE affects @hono/node-server 1.19.17, reached via @modelcontextprotocol/sdk > @hono/node-server. A fixed version is available. View diagnostics → Fail
  • No install/post-install scripts declared.Pass
  • Only part of the dependency tree could be resolved (113 of 117), so this covers what we could see, not the whole tree. View diagnostics → Partial
Provenance & Transparency45
Schema Quality & AI Usability56
  • AI-judged instruction clarity (good).Pass
  • Context-footprint check failed: tool/resource definitions use about 9145 tokens (~152/item across 60 items; 60 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management27
  • Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.

npm · zuckerbot-mcp

# add to Claude Code
claude mcp add crumbedsausage-zuckerbot -- npx -y zuckerbot-mcp
# add to Codex CLI
codex mcp add crumbedsausage-zuckerbot -- npx -y zuckerbot-mcp
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "crumbedsausage-zuckerbot": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "zuckerbot-mcp"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add crumbedsausage-zuckerbot --command npx --arg -y --arg zuckerbot-mcp
# ~/.hermes/config.yaml
mcp_servers:
  crumbedsausage-zuckerbot:
    command: "npx"
    args: ["-y", "zuckerbot-mcp"]
// mcp.json
{
  "mcpServers": {
    "crumbedsausage-zuckerbot": {
      "command": "npx",
      "args": [
        "-y",
        "zuckerbot-mcp"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 3 Aug 26 −3

    No change was recorded against any check on this day. Supply Chain Security went from 93 to 83. Other categories moved too: Stability & Change Management rose 4.

  • 2 Aug 26 +25
    • Known CVEs: unverified → fail security
    • Malware scan: unverified → pass security
    • Dependency health: unverified → partial functional
  • 1 Aug 26 −9
    • Known CVEs: fail → unverified security
    • Dependency health: partial → unverified functional
  • 31 Jul 26 +45
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 30 Jul 26 −40
    • Provenance: fail → unverified security
    • Known CVEs: fail → unverified security
    • Install scripts: pass → unverified security
    • GHSA-frvp-7c67-39w9 no longer affects this package security
    • Dependency health: partial → unverified functional
    • Maintenance: pass → unverified functional
    • Security disclosure: fail → unverified functional
    • Tool coverage: 100 → unverified functional
    • License: pass → unverified functional
    • Licence: MIT functional
  • 29 Jul 26 +20
    • GHSA-frvp-7c67-39w9 affects this package: medium security
    • Known CVEs: unverified → fail security
    • Provenance: unverified → fail security
    • Install scripts: unverified → pass security
    • License: unverified → pass functional
    • Dependency health: unverified → partial functional
    • Maintenance: unverified → pass functional
    • Licence: MIT functional
  • 28 Jul 26 +20
    • Tool coverage: unverified → 100 functional
    • First check of Schema quality: fail functional
    • First check of Tool coverage: 100 functional
    • First check of Schema quality: fail functional
    • First check of Schema quality: unverified functional
  • 27 Jul 26 6

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 3 Aug 2026 · Analysed npm/[email protected]

Provenance none

Ecosystem: npm · Outcome: none

Vulnerabilities 1 finding
ID CVE Severity Vector Fix available
GHSA-frvp-7c67-39w9 medium CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N yes
Dependencies 113 packages

113 packages in the resolved dependency tree · 112 deprecated · 34 stale.

The dependency tree was only partially resolved, so these counts may be incomplete.

MCP tools — 60 exposed · ~9,145 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.

Tool Tokens
zuckerbot_activate_campaign ~123

Temporarily unavailable during Dealify launch hardening. Intelligence campaigns are planning-only; create a legacy-mode draft and use zuckerbot_launch_campaign for the supported live path.

NameTypeReqDescription
campaign_idstringyesIntelligence campaign ID
meta_access_tokenstringOptional Meta/Facebook access token override
meta_ad_account_idstringOptional Meta ad account ID override (format: act_XXXXX)
meta_page_idstringOptional Facebook Page ID override
tier_namesarrayOptional subset of approved tiers to activate

No output schema declared.

No examples provided.

zuckerbot_ad_accounts ~102

List Meta ad accounts available to the connected user and show which is currently selected for launches and reporting. Optionally select an ad account by providing select_id — this clears the stored page selection so you can pick a matching page. Call this during setup or when switching between multiple ad accounts.

NameTypeReqDescription
select_idstringIf provided, selects this Meta ad account ID for future operations (format: act_XXXXX). If omitted, lists all available accounts.

No output schema declared.

No examples provided.

zuckerbot_analyse_account_history ~168

Analyse the historical ad performance for a business. For accounts WITH history: returns aggregated metrics by audience type, top performing creatives, and comparable CPL ranges. For NEW accounts with NO history: returns is_cold_start=true with industry benchmarks. Use this as the FIRST step in campaign planning — feed the result into zuckerbot_recommend_campaign_structure.

NameTypeReqDescription
business_idstringBusiness ID (auto-resolved from API key if omitted)
include_audience_historybooleanInclude analysis of which audiences have been targeted before
lookback_daysintegerNumber of days of history to analyse (default: 90)
target_audiencestringOptional audience keyword to check if it has been targeted before (e.g., 'pool builders')

No output schema declared.

No examples provided.

zuckerbot_approve_campaign_strategy ~104

Approve the AI-generated intelligence strategy for a campaign, optionally narrowing to specific audience tiers and creative angles. This locks in the plan before creative production starts. Required before calling zuckerbot_request_creative or zuckerbot_upload_creative.

NameTypeReqDescription
angle_namesarrayOptional subset of creative angle names to approve
campaign_idstringyesIntelligence campaign ID
tier_namesarrayOptional subset of audience tier names to approve

No output schema declared.

No examples provided.

zuckerbot_audit_account ~145

Run a full audit of the connected Meta ad account: wasted spend detection, creative fatigue, a complete-account opportunity score (0-100 when all inputs return), and prioritised action items. Saves a shareable web report when the API key resolves to one saved business. Read-only and available on every tier — the recommended FIRST call for any new account or when a user asks 'how are my ads doing?'.

NameTypeReqDescription
company_namestringCompany name used in the audit narrative. Defaults to the connected business name.
meta_ad_account_idstringMeta ad account ID to audit (format: act_XXXXX). Defaults to the connected account.

No output schema declared.

No examples provided.

zuckerbot_billing_status ~47

Check your current ZuckerBot billing tier, API call usage this month, remaining quota, and overage costs. Use this when a user asks about their plan or usage limits.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

zuckerbot_capi_status ~79

Get 7-day and 30-day CAPI delivery statistics for the business: total events sent, events by type (Lead/Contact/Purchase), match quality breakdown, and attribution counts. Use this to confirm CAPI is functioning and that events are being matched by Meta.

NameTypeReqDescription
business_idstringOptional business ID override

No output schema declared.

No examples provided.

zuckerbot_capi_test ~197

Send a synthetic CAPI test event through the business configuration to verify the full pipeline: stage mapping, hashing, and Meta Graph API delivery. Logs as a test event (does not affect real attribution). Use after setting up or updating CAPI config to confirm events are flowing.

NameTypeReqDescription
business_idstringOptional business ID override
crm_sourcestringOptional CRM source label override
fbcstringOptional pre-formatted fbc cookie to verify raw passthrough
fbclidstringOptional Facebook click ID to verify fbc construction/passthrough
fbpstringOptional _fbp cookie to verify raw passthrough
source_stagestringCRM stage key to test against the mapping
user_dataobjectOptional user data to hash into the test payload
valuenumberOptional event value override

No output schema declared.

No examples provided.

zuckerbot_create_campaign ~389

Create a new campaign draft for a business. Defaults to legacy mode, the only launch-ready path during Dealify hardening. Intelligence mode remains available for planning only and cannot be activated. This tool does not spend money or create anything on Meta; review the draft, then use zuckerbot_launch_campaign.

NameTypeReqDescription
architect_session_idstringOptional Campaign Architect session ID. When provided, the intelligence strategy is loaded from the session instead of generating fresh.
budget_daily_centsintegerDaily budget in cents (e.g., 2000 = $20/day)
business_idstringExisting ZuckerBot business ID to anchor intelligence mode
business_namestringBusiness name (auto-detected from URL if omitted)
business_typestringBusiness category (e.g., 'restaurant', 'fitness', 'roofing')
creative_handoffobjectOptional creative-production handoff settings
destination_urlstringOptional landing-page URL override for ad links, e.g. a campaign-specific LP instead of the business homepage.
goalsobjectOptional business goals to guide planning
lead_destinationstringFor objective='leads': 'meta_form' uses a Meta Instant Form (default), 'website' uses a Meta Pixel Lead event and links ads to destination_url.
locationobjectBusiness location for geo-targeting
modestringCampaign planning mode. Default legacy is the only launch-ready path. auto/intelligence are planning-only while multi-tier activation is disabled.
objectivestringCampaign objective. 'leads' defaults to Meta Instant Form unless lead_destination is 'website', 'traffic' for website visits, 'conversions' for website actions, 'awareness' for reach. Default: traffic
urlstringyesBusiness website URL

No output schema declared.

No examples provided.

zuckerbot_create_campaign_from_spec ~533

Build a complete Meta campaign VERBATIM from a declarative JSON spec — no strategy generation, no copy authoring. Everything is created PAUSED, always; launching remains a separate deliberate call. Recommended flow: send with dry_run=true first to get the fully resolved Graph API payloads without creating anything, review them, then re-send without dry_run to build. Validation failures return an errors array of per-field {path, message, kind: schema|semantic} entries — fix each path and retry. Spec shape: campaign {name, objective OUTCOME_LEADS|OUTCOME_SALES, budget {type CBO_DAILY, amount, bid_strategy HIGHEST_VOLUME|LOWEST_COST_WITHOUT_CAP|COST_CAP}, special_ad_categories}, ad_sets [{name, conversion_location WEBSITE|INSTANT_FORM, attribution {click_days 1|7, view_days 0|1}, targeting {geo — ARRAY of 2-letter country codes e.g. ["AU"], age_min, advantage_audience, excluded_custom_audiences}, placements {mode MANUAL|ADVANTAGE_PLUS, exclude}; WEBSITE additionally: pixel_id, optimisation_event {type CUSTOM_CONVERSION, id}|{type STANDARD, event e.g. Lead}, performance_goal MAXIMISE_CONVERSIONS (the Ads Manager label, not the Graph enum); INSTANT_FORM instead: lead_form_id — the Meta instant form on the connected Page (no pixel_id, no optimisation_event, and its ads take NO final_url — the form is the destination; single-image creative, no multi-ratio placement customisation)}], ads [{name, asset {type IMAGE_SET, refs {1x1,4x5,9x16 — https URLs or uploaded image hashes}}|{type VIDEO, ref — pre-uploaded Meta video id}|{type EXISTING_AD, ad_id — clones that ad's image/video asset from the SAME ad account; copy, CTA and destination come from THIS spec}, primary_text, headline, description, cta, final_url (WEBSITE ad sets only), ad_set_name?}]. EXISTING_AD specs need Meta credentials even for dry_run (the source asset is read from Meta). Use zuckerbot_list_custom_conversions to find custom conversion ids.

NameTypeReqDescription
business_idstringOptional business ID override for the authenticated API key
dry_runbooleantrue = return the resolved Graph payloads without creating anything. Strongly recommended before a real build
specobjectyesThe declarative campaign spec (see tool description for the shape)

No output schema declared.

No examples provided.

zuckerbot_create_custom_conversion ~150

Create a custom conversion on the connected ad account (requires sufficient Graph permissions on the Meta token — returns insufficient_permission if Meta refuses). Provide the pixel, a name, optionally a rule (e.g. URL contains ...) and the source event type.

NameTypeReqDescription
business_idstringOptional business ID override for the authenticated API key
custom_event_typestringSource event type, defaults to OTHER
namestringyesDisplay name for the custom conversion
pixel_idstringyesPixel (event source) the conversion is based on
ruleobjectOptional Meta rule object, e.g. {"url":{"i_contains":"/thank-you"}}

No output schema declared.

No examples provided.

zuckerbot_create_full_campaign ~236

Build a complete PAUSED Meta campaign from an approved Campaign Architect session. IMPORTANT: dry_run defaults to TRUE. When dry_run=true, returns the exact campaign structure that WOULD be created without calling Meta — safe, free, no side effects. Present this to the customer first. Only set dry_run=false after explicit customer approval. When dry_run=false, creates Meta objects in PAUSED state for review; Architect auto-activation is temporarily disabled. Generated videos get linked for rejection tracking automatically.

NameTypeReqDescription
activatebooleanMust remain false. Architect auto-activation is temporarily disabled; live mode creates PAUSED Meta objects only.
dry_runbooleanDEFAULT TRUE. Set to false ONLY after customer has approved the dry-run preview. Live mode creates real Meta objects.
meta_access_tokenstringMeta access token override (live mode only)
meta_ad_account_idstringMeta ad account ID override (live mode only)
meta_page_idstringFacebook Page ID override (live mode only)
session_idstringyesCampaign Architect session ID with approved strategy and creatives

No output schema declared.

No examples provided.

zuckerbot_create_lookalike_audience ~145

Create a Meta lookalike audience from a stored seed audience. Expands a first-party seed (e.g., 'customer' stage) into a 1%, 3%, or 5% prospecting audience that Meta will target based on similarity. Typically used for the prospecting tier of an intelligence campaign.

NameTypeReqDescription
countrystringLookalike country code, such as US or AU
namestringOptional audience name override
percentagenumberLookalike percentage, typically 1, 3, or 5
seed_audience_idstringyesStored seed audience row ID

No output schema declared.

No examples provided.

zuckerbot_create_portfolio ~181

Create a planning and monitoring-only multi-tier audience portfolio for a business from a shared template (e.g., 'Local Services', 'eCommerce') or a custom tier array. Portfolios split a proposed total budget across prospecting, retargeting, and reactivation tiers with per-tier CPA targets. Portfolio launch is temporarily disabled during Dealify hardening.

NameTypeReqDescription
business_idstringOptional business ID override
is_activebooleanWhether the portfolio should be active immediately
namestringOptional portfolio name
template_idstringOptional portfolio template ID
template_namestringOptional portfolio template name, such as 'Local Services'
tiersarrayOptional custom tier array to override the template
total_daily_budget_centsintegerTotal daily budget in cents

No output schema declared.

No examples provided.

zuckerbot_create_seed_audience ~138

Build a Meta custom audience from hashed CAPI user data stored for a business, filtered by CRM lifecycle stage (e.g., 'lead', 'customer'). Use this as the first step to create retargeting or reactivation audiences from your own first-party CRM data.

NameTypeReqDescription
business_idstringOptional business ID override
lookback_daysintegerHow many days of CAPI events to include
min_contactsintegerMinimum matched contacts required before creation
namestringOptional audience name override
source_stagestringyesCRM lifecycle or source stage to seed from

No output schema declared.

No examples provided.

zuckerbot_creative_analysis ~249

Analyse creative performance patterns for a business by grouping ads by hook type, visual style, product focus, setting, CTA type, copy tone, or opening element. Returns average CPL/CTR/CPC/frequency per group, per-group trend direction, a structured insight object with recommendations, and can optionally include the top and bottom individual ads for the selected metric. Use this before generating new briefs to inform the creative strategy.

NameTypeReqDescription
business_idstringOptional business ID override
date_fromstringOptional start date in YYYY-MM-DD
date_tostringOptional end date in YYYY-MM-DD
group_bystringyesCreative attribute to group by
include_adsbooleanWhen true, include the top 5 and bottom 5 ads by the selected metric.
metricstringMetric to rank by. Defaults to cpl.
min_impressionsintegerOptional minimum impression threshold per ad
min_spendnumberOptional minimum spend threshold per ad
summary_modebooleanWhen true, returns a condensed narrative summary optimised for feeding into recommend_campaign_structure. Default: false.

No output schema declared.

No examples provided.

zuckerbot_creative_cross_analysis ~156

Cross two creative dimensions to find winning combinations. Example: hook_type × visual_style can reveal that curiosity + ugc outperforms pain_point + stock. Returns a performance matrix, best and worst combinations, and an actionable insight string.

NameTypeReqDescription
business_idstringOptional business ID override
cross_bystringyesSecondary dimension to cross with
date_fromstringOptional start date in YYYY-MM-DD
date_tostringOptional end date in YYYY-MM-DD
group_bystringyesPrimary dimension
metricstringMetric to rank by. Defaults to cpl.
min_spendnumberOptional minimum spend threshold per ad

No output schema declared.

No examples provided.

zuckerbot_creative_qa ~96

Score proposed creative variants against the business's historical top-performing patterns. Accepts raw creative specs (copy, headline, CTA, asset URLs, frame URLs for video) and returns a pattern-match score for each. Use this before producing expensive creative assets to pre-validate concepts against what has historically worked.

NameTypeReqDescription
business_idstringOptional business ID override
creativesarrayyesCreative variants to score

No output schema declared.

No examples provided.

zuckerbot_delete_audience ~67

Permanently delete a stored audience from both Meta and ZuckerBot's local registry. This cannot be undone. Use when an audience is stale, was created in error, or you need to free up Meta audience slots.

NameTypeReqDescription
audience_idstringyesStored audience row ID

No output schema declared.

No examples provided.

zuckerbot_enrich_business ~118

Crawl a business website and extract structured intelligence used by campaign planning: company description, services, pricing signals, testimonials, location data, and brand tone. Run this before creating a campaign when the business has not been enriched yet, or use force_refresh after a website update to refresh stale context.

NameTypeReqDescription
business_idstringOptional business ID override
force_refreshbooleanRe-scrape even when cached context exists
urlstringOptional website URL override. Uses the stored business website when omitted.

No output schema declared.

No examples provided.

zuckerbot_generate_briefs ~174

Generate creative production briefs based on the business's tagged ad-performance patterns. Each brief specifies hook type, visual style, copy tone, CTA, and script guidance weighted toward the top-performing creative attributes. Use after running zuckerbot_creative_analysis to know which patterns to bias toward.

NameTypeReqDescription
biasstringOptional generation bias, for example performance or exploration
business_idstringOptional business ID override
countintegerHow many briefs to generate. Defaults to 5.
exclude_anglesarrayOptional angles or product focuses to avoid
font_presetstringOptional font preset override
metricstringOptional ranking metric. Defaults to cpl.
target_marketstringOptional target market override, for example AU or US

No output schema declared.

No examples provided.

zuckerbot_generate_campaign_brief ~208

Generate a detailed creative brief from an approved campaign structure. SAFE — pure function, no Meta API calls, no money spent. Automatically pulls brand context and historical creative patterns (or uses brand context alone for cold-start accounts). Returns per-slot creative directions: for static ads, specific ad template + headline/body/CTA + hero image prompt; for video ads, hook concept + voiceover direction + visual style. After brief is generated, present it to the customer, then call zuckerbot_generate_static_ad / zuckerbot_generate_video_ad for each slot.

NameTypeReqDescription
additional_creative_directionstringOptional extra direction from the customer (e.g., 'lean into fear of missing calls')
approved_structurestringJSON string of approved campaign structure (if no session_id)
business_idstringBusiness ID (auto-resolved from API key if omitted)
session_idstringArchitect session ID from zuckerbot_recommend_campaign_structure

No output schema declared.

No examples provided.

zuckerbot_get_account_insights ~206

Fetch historical Meta ad account performance for a connected business over a date range. Returns spend, clicks, impressions, CTR, CPM, CPC, and frequency aggregated daily or monthly. AUTO-PAGINATES the full requested range; the response includes row_count, covered {date_from, date_to} (the range actually returned) and truncated — truncated=true means the fetch stopped early: narrow the date range and re-request rather than trusting totals. Note zero-delivery days are legitimately absent from data, so also compare covered against the range you asked for. Useful for top-level budget reporting and month-over-month trend analysis without opening Ads Manager.

NameTypeReqDescription
business_idstringOptional business ID override linked to the connected Meta ad account
date_fromstringyesStart date in YYYY-MM-DD format
date_tostringyesEnd date in YYYY-MM-DD format
time_incrementstringWhether to break the results down daily or monthly

No output schema declared.

No examples provided.

zuckerbot_get_audience_status ~66

Fetch the current Meta delivery status, size, and readiness for a stored audience. Updates the local audience registry row. Use this to check if an audience is large enough to use in a campaign before launch.

NameTypeReqDescription
audience_idstringyesStored audience row ID

No output schema declared.

No examples provided.

zuckerbot_get_campaign ~66

Fetch the full details of a ZuckerBot campaign by ID: intelligence workflow state, approved strategy, stored creatives, audience tier executions, and performance status. Use this to inspect a campaign at any stage of the lifecycle.

NameTypeReqDescription
campaign_idstringyesZuckerBot campaign ID

No output schema declared.

No examples provided.

zuckerbot_get_campaign_insights ~492

Query campaign, ad set, or ad-level performance for any campaign in the connected Meta ad account — including campaigns not created by ZuckerBot. Tags each row with is_zuckerbot so you can benchmark ZuckerBot campaigns against manually managed ones. Supports date range filtering, campaign name search, status filters, time-series breakdowns, and multi-column sorting. For deduped truth use meta_result / cost_per_meta_result (Meta's Ads Manager "Results" for any objective) or conversion_leads / meta_leads — not the inflated, deprecated leads / cpl (the response's metric_semantics object labels every lead field). meta_result and conversion_leads are most reliable on campaign-level, non-time-incremented queries. Adset/ad rows report their OWN status — status_scope says which entity a row's status belongs to, statuses are as of status_synced_at, and refresh=true re-syncs them; spend-by-date is authoritative for whether delivery actually happened.

NameTypeReqDescription
business_idstringOptional business ID override linked to the connected Meta ad account
campaign_idsstringOptional comma-separated Meta campaign IDs
date_fromstringOptional start date in YYYY-MM-DD format. Defaults to 7 days ago.
date_tostringOptional end date in YYYY-MM-DD format. Defaults to today.
levelstringReturn campaign totals, ad set breakdowns, or ad breakdowns
limitintegerMaximum campaigns to return after sorting
refreshbooleanBypass the short-lived performance cache
searchstringOptional case-insensitive campaign name substring filter
sortstringOptional sort field. Plain values sort descending; prefix with '+' for ascending. One of: spend, leads, cpl, meta_leads, conversion_leads, cpcl, meta_result, cpmr, results, cpr, ctr, impressions. Pre…
statusstringOptional status filter. Use active, paused, or all for the simple path, or pass legacy comma-separated values such as ACTIVE,PAUSED.
time_incrementstringOptional daily or monthly time-series breakdown

No output schema declared.

No examples provided.

zuckerbot_get_capi_config ~123

Fetch the current Conversions API configuration for a business: whether CAPI delivery is enabled, CRM source, currency, stage-to-event mappings, action source, and webhook URL. Use this before configuring CAPI to see what is already set, or to audit the current event mapping. The webhook secret is write-only: reads return webhook_secret_set and webhook_secret_last4, never the full value — use zuckerbot_rotate_webhook_secret to mint a new one.

NameTypeReqDescription
business_idstringOptional business ID override for the authenticated API key

No output schema declared.

No examples provided.

zuckerbot_get_creative_status ~83

Check the asynchronous upload queue for an intelligence campaign to see if Meta ad-creation jobs are complete. Poll this after zuckerbot_upload_creative when the initial response shows creative_status='uploading'. Returns all_complete=true when every queued job has finished for review; intelligence activation is temporarily disabled.

NameTypeReqDescription
campaign_idstringyesIntelligence campaign ID

No output schema declared.

No examples provided.

zuckerbot_get_launch_credentials ~69

Resolve and validate all stored Meta launch credentials for the authenticated user: access token, ad account, page, and pixel. Reports whether autonomous launch (no credential params needed at launch time) is possible. Call this after completing the setup sequence to confirm everything is ready before launching a campaign.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

zuckerbot_get_performance ~99

Fetch real-time performance metrics for a ZuckerBot campaign. Legacy campaigns return a flat metrics summary (impressions, clicks, leads, spend, CPL, CTR). Intelligence campaigns additionally return tier-by-tier and ad-by-ad Meta insights, daily breakdowns, CAPI attribution totals, and AI-recommended next actions. Use this to monitor an active campaign or to diagnose underperformance.

NameTypeReqDescription
campaign_idstringyesZuckerBot campaign ID

No output schema declared.

No examples provided.

zuckerbot_get_portfolio ~73

Fetch the configuration and current performance snapshot for an audience portfolio by ID. Returns tier definitions, budget allocations, CPA targets, and any existing performance data. Use this to inspect a portfolio for planning, monitoring, or rebalancing an already-active portfolio.

NameTypeReqDescription
portfolio_idstringyesAudience portfolio ID

No output schema declared.

No examples provided.

zuckerbot_launch_campaign ~278

Launch a draft campaign on Meta (Facebook/Instagram). THIS IS THE MONEY ENDPOINT — it creates real ads on the user's Meta ad account and immediately begins spending their budget. Stored Meta credentials are auto-resolved when available. Set launch_all_variants=true to launch every creative variant as separate ads for A/B testing (Meta auto-optimizes for the winner). Always confirm the user has budget available and Meta is connected (zuckerbot_meta_status) before calling.

NameTypeReqDescription
campaign_idstringyesZuckerBot campaign ID from the create step
daily_budget_centsintegerOverride daily budget in cents
launch_all_variantsbooleanLaunch all creative variants as separate ads for A/B testing. Meta will auto-optimize for the winner.
meta_access_tokenstringUser's Meta/Facebook access token. Optional if Facebook is connected on zuckerbot.ai
meta_ad_account_idstringMeta ad account ID (format: act_XXXXX). Optional if Facebook is connected on zuckerbot.ai
meta_page_idstringFacebook Page ID. Optional if Facebook is connected on zuckerbot.ai
radius_kmintegerOverride targeting radius in km
variant_indexintegerWhich creative variant to launch (0-indexed)

No output schema declared.

No examples provided.

zuckerbot_launch_portfolio ~123

Temporarily unavailable during Dealify launch hardening. Portfolio planning and monitoring remain available, but new multi-tier launches must not create Meta objects. Create a legacy-mode draft and use zuckerbot_launch_campaign for the supported live path.

NameTypeReqDescription
meta_access_tokenstringOptional Meta/Facebook access token override
meta_ad_account_idstringOptional Meta ad account ID override (format: act_XXXXX)
meta_page_idstringOptional Facebook Page ID override
portfolio_idstringyesAudience portfolio ID to launch

No output schema declared.

No examples provided.

zuckerbot_lead_forms ~109

List Meta lead forms (Instant Forms) available on the selected Facebook Page and show which is currently selected. Optionally select a form by providing select_id to persist it for future lead generation campaign launches. Use this before launching a leads-objective campaign so ZuckerBot reuses the business's CRM-connected form rather than creating a new one.

NameTypeReqDescription
select_idstringIf provided, selects this Meta lead form ID for future lead generation launches. If omitted, lists all available forms.

No output schema declared.

No examples provided.

zuckerbot_list_audiences ~77

List all stored Meta audiences for a business: seed audiences, lookalike audiences, sizes, delivery statuses, and CAPI source details. Use this to see what audiences are available before launching a campaign, or to find audience IDs for refresh and delete operations.

NameTypeReqDescription
business_idstringOptional business ID override

No output schema declared.

No examples provided.

zuckerbot_list_business_context ~64

List all uploaded business-context files for a business along with their extracted summaries. Use this to confirm what planning documents are loaded before creating a campaign, or to check whether a previous upload was processed successfully.

NameTypeReqDescription
business_idstringOptional business ID override

No output schema declared.

No examples provided.

zuckerbot_list_custom_conversions ~68

List the custom conversions on the connected ad account: id, name, rule, source event and pixel. Use this to find the custom conversion id a campaign spec's optimisation_event should reference.

NameTypeReqDescription
business_idstringOptional business ID override for the authenticated API key

No output schema declared.

No examples provided.

zuckerbot_meta_pages ~82

List Facebook Pages available to the connected Meta account and show which is currently selected for ad delivery. Optionally select a page by providing select_id. The selected page is used as the ad identity for all future launches.

NameTypeReqDescription
select_idstringIf provided, selects this Facebook Page ID for future ad launches. If omitted, lists all available pages.

No output schema declared.

No examples provided.

zuckerbot_meta_status ~58

Check whether the user's Facebook/Meta account is connected to ZuckerBot. Returns connection status, connected ad accounts, and a connect URL if not yet linked. Always call this before attempting to launch a campaign to confirm Meta credentials are available.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

zuckerbot_pause_campaign ~173

Pause delivery at any level: a whole campaign (default), one ad set, or one ad — set entity_level and pass the matching id. Pausing stops delivery and spend immediately while leaving the object in Meta, and the response reports the prior status. Use adset/ad level to stop an underperformer WITHOUT killing the winners in the same campaign. Resume is temporarily disabled during Dealify launch hardening.

NameTypeReqDescription
actionstringPause the campaign
campaign_idstringZuckerBot campaign ID (required when entity_level is campaign — the default)
entity_idstringNumeric Meta ad set or ad ID (required when entity_level is adset or ad)
entity_levelstringWhat to pause: the whole campaign, one ad set, or one ad

No output schema declared.

No examples provided.

zuckerbot_pixels ~82

List Meta Pixels available on the currently selected ad account and show which is currently selected for conversion tracking. Optionally select a pixel by providing select_id. The selected pixel is used for all future conversion tracking and CAPI attribution.

NameTypeReqDescription
select_idstringIf provided, selects this Meta Pixel ID for conversion tracking. If omitted, lists all available pixels.

No output schema declared.

No examples provided.

zuckerbot_portfolio_performance ~76

Fetch live Meta performance and downstream CAPI attribution for a launched audience portfolio. Returns enriched tier rows with ad breakdowns, daily metrics, CPA vs. target comparisons, and autonomous evaluation outputs. Use this to monitor a running portfolio and decide whether to rebalance.

NameTypeReqDescription
portfolio_idstringyesAudience portfolio ID

No output schema declared.

No examples provided.

zuckerbot_preview_campaign ~104

Generate a zero-cost campaign preview from any business URL. Scrapes the site, writes AI-generated headlines and body copy, and generates ad images — all without a Meta account or live budget. Use this as the first step to show a user what their ads could look like before committing to a full campaign.

NameTypeReqDescription
ad_countintegerNumber of ad variants to generate (1-3)
urlstringyesBusiness website URL to generate ads for

No output schema declared.

No examples provided.

zuckerbot_quickstart ~87

Show the current ZuckerBot authentication mode (demo vs authenticated), the Free/Pro/Scale and Lifetime billing tiers, setup instructions if not yet configured, and the recommended tool flow from audit → campaign → launch → performance. Returns status, recommended_flow steps, pricing info, and setup guide for unauthenticated users. Call this first in any new session to orient the agent.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

zuckerbot_rebalance_portfolio ~116

Dry-run or execute a budget rebalance across portfolio tiers based on each tier's actual vs. target CPA. With dry_run=true (default) returns recommendations without making changes — useful for review before committing. With dry_run=false updates Meta ad set budgets and local records in one operation.

NameTypeReqDescription
dry_runbooleanWhen true, returns recommendations without applying changes
meta_access_tokenstringOptional Meta access token override for ad set budget updates
portfolio_idstringyesAudience portfolio ID

No output schema declared.

No examples provided.

zuckerbot_recommend_campaign_structure ~357

Generate a campaign structure recommendation: audience tiers, budget allocation, creative mix. For accounts WITH history: uses Claude to generate data-driven recommendations. For NEW accounts (cold start): generates conservative defaults from industry benchmarks + safe 2-tier structure (broad 60% / interest 40%). Always returns comparable_historical_cpl with source (account_history or industry_benchmarks) and a disclaimer — NEVER a CPL projection. Lead campaigns default to Meta Instant Form; for leads driving to a website landing page rather than Meta Instant Form, set lead_destination='website'. Present the recommendation to the customer for approval before proceeding.

NameTypeReqDescription
business_idstringBusiness ID (auto-resolved from API key if omitted)
constraintsobjectOptional constraints on the recommendation
daily_budget_audnumberDaily budget in AUD. If omitted, defaults to $50/day.
destination_urlstringOptional landing-page URL for this campaign. Required/recommended for lead_destination='website'; overrides the business website for ad links.
history_digeststringOptional JSON string of a prior zuckerbot_analyse_account_history result. If omitted, history is pulled automatically.
lead_destinationstringFor objective='leads': 'meta_form' uses a Meta Instant Form (default), 'website' optimizes for the Pixel Lead event on a landing page.
objectivestringCampaign objective. If omitted, defaults to 'leads' for most SMB use cases. Leads default to Meta Instant Form unless lead_destination is 'website'.
target_audiencestringyesTarget audience description (e.g., 'pool builders in Texas', 'plumbers in Brisbane')

No output schema declared.

No examples provided.

zuckerbot_redeem_license ~158

Redeem a ZuckerBot lifetime licence code (format ZB-XXXXX-XXXXX-XXXXX) purchased on Dealify or AppSumo. Each code activates the plan it was purchased for: Tier 1 (1 ad account, 2,500 calls/mo), Tier 2 (3 accounts, 10K calls/mo) or Tier 3 (10 accounts, 30K calls/mo). Codes also stack additively on one account up to Tier 3 — e.g. two Tier 1 codes = Tier 2. Redeeming upgrades ALL of the account's API keys to the new tier immediately.

NameTypeReqDescription
codestringyesLifetime licence code in the format ZB-XXXXX-XXXXX-XXXXX

No output schema declared.

No examples provided.

zuckerbot_refresh_audience ~89

Rebuild a stored audience from fresh data. For seed audiences: re-hashes the latest CAPI events for the source CRM stage. For lookalike audiences: syncs the current size and delivery status from Meta after the seed refreshes. Use this when CAPI has received new events since the audience was last built.

NameTypeReqDescription
audience_idstringyesStored audience row ID

No output schema declared.

No examples provided.

zuckerbot_research_competitors ~152

Scrape Meta Ad Library and search the web to analyse competitor ads in a given industry and location. Returns competitor positioning, common creative hooks, and exploitable gaps. Use before creating a campaign to benchmark against the competitive landscape and find differentiation opportunities.

NameTypeReqDescription
countrystringOptional 2-letter country code to refine Meta Ad Library results (e.g., 'US', 'AU'). Defaults to US.
industrystringyesBusiness industry or category (e.g., 'dental', 'online party games', 'roofing')
locationstringyesCity, region, or country to scope the competitor search (e.g., 'Austin, TX', 'United States')

No output schema declared.

No examples provided.

zuckerbot_research_market ~104

Get market size, addressable audience estimates, and Meta ad benchmarks (CPL, CTR, CPM) for an industry and location. Use before creating a campaign to set realistic budget expectations and understand how large the targetable audience is. Also useful for proposals and client presentations.

NameTypeReqDescription
industrystringyesIndustry/business category (e.g., 'fitness', 'dental')
locationstringyesCity/region (e.g., 'United States')

No output schema declared.

No examples provided.