MMetadata /docs
Docs/Tools/create_marketing_automation_contacts_audience

create_marketing_automation_contacts_audience

Create a Marketing-Automation-contacts custom audience (platform customAudienceType MA_CONTACTS_STATIC or MA_CONTACTS_DYNAMIC) from a provider library list.

Writes audiences

Creates or changes something in the account. Put it behind whatever review your agent uses.

What it does

Create a Marketing-Automation-contacts custom audience (platform customAudienceType MA_CONTACTS_STATIC or MA_CONTACTS_DYNAMIC) from a provider library list.

                This is one of the audience types eligible for Microsoft Ads (Customer Match). Use it when a user wants a Marketing-Automation-sourced contacts audience, including for a Microsoft Ads campaign.

                PREREQUISITE:
                  • The provider (HUBSPOT or MARKETO) MUST be connected — the platform validates this and returns a clear error if not.
                  • A library_list_id from list_marketing_automation_lists — do NOT invent one. For HubSpot the list must be DONE; for Marketo READY.

                VARIANT (mirrors the UI's static/dynamic choice):
                  • STATIC  → MA_CONTACTS_STATIC — snapshot at creation, does not refresh.
                  • DYNAMIC → MA_CONTACTS_DYNAMIC — refreshes as the provider data changes.
                  • If the user did not say which, ASK — do NOT default and do NOT infer it from the source list's type. A HubSpot STATIC_LIST is not the same choice as a STATIC (snapshot) audience; the audience variant is the user's call, independent of the list's type.

                ASYNC: the platform creates the audience in the background and returns a flow id, NOT a ready audience id. The audience appears under the account's Marketing-Automation audiences once the flow completes, and its contact count fills in then. Do not expect to associate it to a campaign in the same turn.

                PARAMETERS:
                  • custom_audience_name (required): the audience display name — must NOT contain '/'.
                  • library_list_id (required): id from list_marketing_automation_lists.
                  • provider (required): HUBSPOT or MARKETO.
                  • variant (required): STATIC or DYNAMIC.
                  • list_name (optional): the source list's own name (from the lookup), forwarded to the flow.

                RETURNS: { id, name, status, createdDate, audience_type, async: true } — `audience_type` is the MA_CONTACTS_* you created and `id` is a creation/flow id, not associable yet.

Arguments

ArgumentTypeNotes
custom_audience_name string required Audience display name. Must not contain '/'.
library_list_id integer required The library list id from list_marketing_automation_lists.
provider string required The Marketing-Automation provider that owns the list.
one of: HUBSPOT, MARKETO
variant string required STATIC = snapshot (MA_CONTACTS_STATIC); DYNAMIC = refreshing (MA_CONTACTS_DYNAMIC). Ask the user if unspecified.
one of: STATIC, DYNAMIC
list_name string Optional: the source list's own name, from list_marketing_automation_lists.

Request

curl
curl -s -X POST https://mcp-server.metadata.io/mcp \
  -H "Authorization: $METADATA_PAT" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -H "MCP-Protocol-Version: 2025-11-25" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"create_marketing_automation_contacts_audience","arguments":{"custom_audience_name":"<custom_audience_name>","library_list_id":0,"provider":"HUBSPOT","variant":"STATIC"}}}'

Response

No recorded response. This tool writes to the account, so it is never executed to build these docs. The request above is still the exact shape to send. Nothing on this page is invented.

Other audiences tools:

All 160 tools · machine-readable index