Skip to main content
Glama

Honeyfield Marketing MCP

Meta Ads: Create ad

meta_create_ad

Neue Meta-Ad anlegen (Bild ODER Video; Website- oder Lead-Anzeige) — Creative + Ad in einem Schritt, Default PAUSED (Aktivierung via meta_update_ad_status).

page_id aus meta_list_pages; message = Text über dem Medium, headline/ description = darunter. link: Zielseite — Pflicht, außer bei Lead-Anzeigen (error=link_required). Bild-Ad: image_hash (meta_upload_ad_image) oder direkt image_url. Video-Ad: video_id (meta_upload_ad_video, Status 'ready'; nur Ziffern, sonst invalid_id); image_url/ image_hash dient dann als Thumbnail (sonst Auto-Thumbnail). call_to_action: LEARN_MORE (Default)/SHOP_NOW/SIGN_UP/CONTACT_US/BOOK_NOW/…; bei Lead-Anzeigen Default SIGN_UP (LEAD_GENERATION ist KEIN CTA-Typ) und nur APPLY_NOW/DOWNLOAD/GET_QUOTE/LEARN_MORE/SIGN_UP/SUBSCRIBE erlaubt — andere Typen lehnt das Tool vorab ab (error=invalid_lead_ad_cta). lead_gen_form_id: Instant Form (ID aus meta_list_lead_forms) — macht die Anzeige zur Lead-Anzeige (Bild oder Video): Meta erlaubt dann als link nur den Platzhalter https://fb.me/, der automatisch gesetzt wird; ein anderer link ist error=link_not_allowed_for_lead_ad. Das Adset muss auf LEAD_GENERATION mit promoted_page_id derselben Page laufen (meta_create_adset). Lehnt Meta mit Subcode 1815089 ab, hat kein Page-Admin die Lead-Ads-Nutzungsbedingungen akzeptiert (Antwort enthält hint; Stand vorab in meta_list_pages -> leadgen_tos_accepted). url_tags: UTM-Parameter als eigenes Creative-Feld, z.B. 'utm_source=facebook&utm_medium=paid&utm_campaign={{campaign.name}}'. validate_only: True ist eine reine Parameter-Vorschau OHNE API-Calls — ob Meta die Ad wirklich akzeptiert, zeigt erst der echte Aufruf. Zurücklesen: meta_list_ads zeigt creative.lead_gen_form_id und url_tags. workspace: Slug des Kunden-Workspace (optional bei nur einem Workspace).

Input Schema

NameRequiredDescriptionDefault
linkNo
nameYes
statusNoPAUSED
messageYes
page_idYes
adset_idYes
headlineNo
url_tagsNo
video_idNo
image_urlNo
workspaceNo
image_hashNo
descriptionNo
validate_onlyNo
call_to_actionNo
lead_gen_form_idNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnly=false, destructive=false and openWorld=true; the description goes far beyond them by disclosing the default PAUSED status, that validate_only makes no API calls and does not prove Meta acceptance, that thumbnails are auto-generated, that the link is force-overwritten to https://fb.me/ for lead ads, and the concrete error/subcode paths (link_required, invalid_lead_ad_cta, link_not_allowed_for_lead_ad, subcode 1815089 TOS). None of this contradicts the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The core capability and the PAUSED default are front-loaded, and nearly every clause carries behavioral information that is unavailable elsewhere. The dense multi-line block with parenthetical error codes is slightly hard to scan, but given 16 undocumented parameters the length is largely earned rather than padding.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a high-complexity creation tool with 16 params, zero schema descriptions and no enum hints, the description supplies the missing pieces: creation-time defaults, media constraints, lead-ad validation rules, prerequisite TOS state, and error semantics. An output schema exists, so return values need not be described, and the description correctly limits itself to pointing at meta_list_ads for readback.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% across 16 params, so the description must carry the whole load — and it effectively does, defining message vs headline/description, link vs the lead-ad exception, image_hash vs image_url, video_id digit-only constraint, url_tags format, call_to_action defaults and the restricted lead-ad enum, lead_gen_form_id semantics, and workspace optionality. Only 'status' is covered implicitly ('Default PAUSED') rather than by name.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The opening sentence states a specific verb and resource ('Neue Meta-Ad anlegen') and immediately splits the two supported shapes (Bild ODER Video; Website- oder Lead-Anzeige). It also marks the tool's distinguishing behavior — Creative + Ad in one step — which separates it from meta_upload_ad_image/meta_upload_ad_video and the separate adset/campaign creators in the sibling list.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It specifies preconditions and the correct sequence: page_id comes from meta_list_pages, adset_id from meta_create_adset, video must be in status 'ready', lead ads require the adset to run LEAD_GENERATION with promoted_page_id. It also routes activation elsewhere (meta_update_ad_status) and names the readback tool (meta_list_ads), so an agent knows exactly where this tool sits in the workflow.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources