Skip to main content
Glama

Honeyfield Marketing MCP

Meta Ads: Create audience

meta_create_audience

Custom Audience (Retargeting-Zielgruppe) im Meta-Werbekonto des Workspace anlegen. Vier Arten über typ, jede mit eigenen Parametern (Parameter einer anderen Art → error=parameter_not_for_typ):

  • 'video': Zuschauer von Videos. video_ids (1–10 Video-IDs, z. B. aus meta_upload_ad_video; das Video muss von einer Page des Werbekontos oder aus dessen Videobibliothek stammen), schwelle: '3s', '10s', 'thruplay' (= 15 s oder ganz), '15s', '25', '50', '75', '95' (Prozent der Länge). tage max. 365.

  • 'lead_formular': Interaktion mit Instant Forms. form_ids (Liste aus meta_list_lead_forms) ODER page_id (alle Formulare der Page zum Zeitpunkt des Anlegens; später angelegte kommen NICHT dazu). Nur Pages des Werbekontos; hat das Werbekonto mehrere Pages, auch zu form_ids die page_id angeben (sonst error=page_id_required). aktion: 'geoeffnet' (alle, die das Formular geöffnet haben), 'abgeschickt', 'geoeffnet_nicht_abgeschickt' (geöffnet, Abgeschickte ausgeschlossen). tage max. 90.

  • 'website': Website-Besucher per Pixel. pixel_id (meta_list_pixels), url_enthaelt: Liste von URL-Teilen, ODER-verknüpft, Groß-/Kleinschreibung egal (z. B. ['/preise', '/angebot']). tage max. 180.

  • 'pixel_ereignis': Personen mit einem Pixel-Ereignis. pixel_id, ereignis (z. B. 'CompleteRegistration', 'Lead', 'Purchase' oder ein eigenes Ereignis; Standard-Ereignisse werden auf Metas Schreibweise gebracht). tage max. 180. name: Name der Zielgruppe; beschreibung: optional. tage: Zeitraum in Tagen, in dem die Aktion stattfand (Default 30); Meta füllt mit früheren Aktionen aus diesem Zeitraum auf. Zu groß → error=invalid_tage mit max. Das Werbekonto ist immer das des Workspace. dry_run: True zeigt Pfad und Payload (rule) ohne zu senden; der Besitz von Pixel, Video oder Formular wird trotzdem geprüft. Rückgabe: {success, id, name, typ, tage, audience (zurückgelesen: subtype, rule, retention_days, operation_status, delivery_status, size_lower_bound, size_upper_bound), verifiziert}. Weicht das Zurückgelesene ab: error=readback_mismatch mit id und abweichungen (die Zielgruppe existiert dann — prüfen, ggf. meta_delete_audience). Die Größe füllt sich erst nach einigen Stunden; zu kleine Zielgruppen liefern nicht aus. Verwendung: die id in meta_create_adset/meta_update_adset als custom_audience_ids (einschließen) oder excluded_custom_audience_ids (ausschließen, z. B. wer das Formular schon abgeschickt hat). Fehler: fremde Pixel, Videos oder Formulare → error=foreign_object. Für 'website' und 'pixel_ereignis' verlangt Meta, dass im Werbekonto einmal die Custom-Audience-Nutzungsbedingungen akzeptiert wurden; fehlt das, kommt error=custom_audience_tos_required mit dem Zustimmungslink in hint (ein Mensch mit Rolle im Werbekonto muss klicken, per API nicht möglich). Video- und Lead-Zielgruppen brauchen das nicht. Fehlende Rechte an Page oder Pixel kommen ebenfalls mit hint. workspace: Slug des Kunden-Workspace (optional bei nur einem Workspace).

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "typ": "<typ>",
      "name": "<name>"
    },
    "name": "meta_create_audience"
  }
}

Input Schema

NameRequiredDescriptionDefault
typYes
nameYes
tageNo
aktionNo
dry_runNo
page_idNo
ereignisNo
form_idsNo
pixel_idNo
schwelleNo
video_idsNo
workspaceNo
beschreibungNo
url_enthaeltNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.9/5.0
Behavior5/5

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

Beyond the annotations (readOnly=false, destructiveHint=false, openWorld=true) it discloses dry_run semantics including that ownership of pixel/video/form is still validated, a readback-verification step with error=readback_mismatch and recovery via meta_delete_audience, delayed size population, and the human-only Custom Audience TOS acceptance blocking 'website'/'pixel_ereignis' with error=custom_audience_tos_required. These are exactly the non-obvious behaviors an agent could not infer.

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?

Front-loaded with the purpose, then organized as per-variant bullets, followed by shared params, return values, usage and errors — a clear structure for a 14-parameter conditional tool. It is dense and long, and a few clauses restate what the type bullets already imply, but almost every sentence carries actionable detail.

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?

Though an output schema exists, the description still adds readback fields and the mismatch-recovery path, plus the full error taxonomy (parameter_not_for_typ, page_id_required, invalid_tage, foreign_object, TOS). For a heavily conditional creation tool, nothing an agent needs to call it correctly appears to be missing.

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%, so the description carries full burden and does: per-variant parameter mapping, allowed `schwelle` values ('3s','10s','thruplay','15s','25','50','75','95'), per-variant `tage` maxima (365/90/180/180), `aktion` enum semantics, url_enthaelt OR-matching and case-insensitivity, standard-event normalization for `ereignis`, and the default/scope of workspace. It adds meaning well beyond the bare property types.

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?

States a specific verb and resource ('Custom Audience im Meta-Werbekonto des Workspace anlegen') and immediately enumerates the four supported `typ` variants, which separates it cleanly from meta_list_audiences and meta_delete_audience. An agent knows exactly what this creates and in which account scope.

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?

Explicitly tells the agent which prerequisite tools feed which parameters (video_ids from meta_upload_ad_video, form_ids from meta_list_lead_forms, pixel_id from meta_list_pixels) and how to use the result in meta_create_adset/meta_update_adset as custom_audience_ids or excluded_custom_audience_ids. It also states when page_id is mandatory alongside form_ids and what each variant excludes.

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