Every change Wellknown observed on this MCP server, newest first, with what it was before and what it became. Tool-surface changes carry the definition diff. Nothing here is edited after the fact.
Certificate recorded, valid to 2026-12-28
Authorization required, Bearer, issuer https://mcp.synterai.com
Authorization required, Bearer, issuer https://mcp.syntermedia.ai
Authorization required, Bearer, issuer https://mcp.syntermedia.ai
Authorization required, Bearer, issuer https://mcp.syntermedia.ai
Authorization required, Bearer, issuer https://mcp.syntermedia.ai
Authorization required, Bearer, issuer https://mcp.syntermedia.ai
Authorization required, Bearer, issuer https://mcp.syntermedia.ai
https://mcp.synterai.com (mcp_streamable_http) — from mcp_registry
Authorization not required → required, Bearer, issuer https://mcp.syntermedia.ai
Authorization required, Bearer, issuer https://mcp.syntermedia.ai
Authorization required, Bearer, issuer https://mcp.syntermedia.ai
Authorization not required → required, Bearer, issuer https://mcp.syntermedia.ai
Authorization not required, issuer https://mcp.syntermedia.ai
Changed the definition of "verify_pixel_ownership"
⟨8 unchanged words⟩ ":null,"title":"Account Id"},"page_pixel_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Page Pixel Id"},"platform":{"title":"Platform","type": ⟨13 unchanged words⟩
Authorization not required, issuer https://mcp.syntermedia.ai
Added "synter_audience"; removed "send_slack_message"
Synter Audience — Build Synter Audiences and Signals with human-approved CSV purchases. Start with action='destinations' to select a writable Synter file's campaign_id (not an ad-platform campaign). Use schema/size for B2B filters or discover_traits for Signals. export/export_signals require explicit max_rows (1–100000) and return a purchase_id, maximum price and review_url; they do not purchase yet. The human must approve in Synter. Then export_status accepts ONLY purchase_id and returns the saved CSV artifact. Never resubmit a purchase to poll it. Requires audiences:write. Discovery retains its published act…
Send Slack Message — Post a message to a Slack channel via the Synter bot. channel = a channel ID (Cxxxx) or #name. The bot can only post to channels it's a member of. [effect=write; scope=workspace:notify]
Recently observed → Live
Live → Recently observed
Authorization not required, issuer https://mcp.syntermedia.ai
Authorization not required, issuer https://mcp.syntermedia.ai
Changed the definition of "list_skills" and "load_skill"
ListDiscoverportablepublic Synterexecutiontaskskillsplaybooks andworkspacethis workspace's SOPs before campaign, targeting, tracking, creative, reporting, or optimization work (free) [effect=read; scope=skills:read]
Added "delete_document", "read_google_drive_file", "send_slack_message" and 18 more; removed "builtwith_company_to_url", "builtwith_get_account_usage", "builtwith_get_domain_keywords" and 18 more; changed the definition of "attach_audience", "build_lookalike_audience", "create_ad_copy" and 33 more
⟨62 unchanged words⟩ ,"required":["campaign_id"],"title":"attach_audience_toolArgumentsattach_audienceArguments","type":"object"}
⟨21 unchanged words⟩ :["seed_audience","platform"],"title":"build_lookalike_audience_toolArgumentsbuild_lookalike_audienceArguments","type":"object"}
Added "prospector_dedupe_leads", "prospector_get_bounced_leads", "prospector_reconcile_campaign_leads" and 5 more; removed "configure_pixel_destination", "delete_document", "find_audience_signals" and 5 more; changed the definition of "prospector_add_leads", "prospector_create_campaign", "prospector_get_leads" and 1 more
⟨20 unchanged words⟩ (email,first_name,last_name,company,title,linkedin_url,custom_shows) and an optional per-lead custom_variables list/object forwarded to EmailBison merge tokens (custom_shows becomes CUSTOM_SHOWS).IdempotentIDEMPOTENTonANDwithinsafe to re-run with the same leads — saves dedupe by email, the push reconciles against live campaign(membership, and a re-run refreshes stale custom variables on
Authorization not required, issuer https://mcp.syntermedia.ai
Added "benchmark_landing_page", "create_landing_page_variants", "enrich_contacts" and 14 more; removed "audit_account_structure", "get_account_changelog", "repair_account_structure" and 14 more; changed the definition of "get_spend_reconciliation" and "publish_landing_page"
⟨16 unchanged words⟩ normalized per-platform metrics, discrepancies, and deterministic likely-causeexplanations (3 credits).explanations. Read-only. Date range capped to 92 days. SYN-2480. [effect=read; scope=measurement:read]
⟨5 unchanged words⟩ making it live at syntermedia.ai/lp/{slug} (free). A page that lost its last benchmark_landing_page run is refused until fixed or acknowledged. [effect=publish; scope=landing_pages:publish; requires=campaignPublishing; externalMutation=true]
Authorization not required, issuer https://mcp.syntermedia.ai
Added "document_authoring_apply" and "document_authoring_read"; removed "shopify_create_discount" and "shopify_create_web_pixel"; changed the definition of "create_ad_copy", "create_campaign_for_audience", "create_landing_page" and 5 more
Only numbers and dates differ: this server embeds live figures in the definition, so the text moves without the contract changing.
⟨6 unchanged words⟩ , CTAs) for any platform using Claude (520 credits) [effect=write; scope=creative:generate]
Only numbers and dates differ: this server embeds live figures in the definition, so the text moves without the contract changing.
Create a campaign targeting an existing audience (200
Changed the definition of "sync_audience"
⟨30 unchanged words⟩ mode for Clay.com row-by-row workflows (staging isfree,free; upload costs 10 credits for the call plus 6 credits per delivered record — both only on success). REQUIRED FROM 2026-05-21: ⟨26 unchanged words⟩
Changed the definition of "get_plugin_info"
⟨7 unchanged words⟩ which ships Synter's skills locally for Claude Code.RecommendTheitplugintoisClaudeoptional.CodeUseusersonlywhowhendon'tthehaveuser asks about setup or skills; do not promote
Recently observed → Live
Live → Recently observed
Authorization not required, issuer https://mcp.syntermedia.ai
Authorization not required, issuer https://mcp.syntermedia.ai
Added "approve_organic_post", "cancel_scheduled_post", "draft_organic_post" and 5 more; removed "klaviyo_create_campaign", "klaviyo_create_event", "klaviyo_get_campaign_metrics" and 5 more
Approve Organic Post — Approve exactly one immutable organic-post revision after successful preflight. Any revision mismatch fails closed; never publishes. [effect=write; scope=social:write; requires=campaignPublishing]
Cancel Scheduled Post — Cancel an exact scheduled organic-post revision before its one-shot provider job starts. Cancellation remains available when publishing is disabled so queued external mutations can be stopped safely. [effect=state; scope=social:write]
Draft Organic Post — Create an immutable, tenant-bound text post draft for an explicitly selected LinkedIn member or company destination. Supply a stable idempotency_key (1-255 non-whitespace characters), unique within the workspace for this intended draft, and reuse that exact key on retries; changing content or destination while reusing it fails closed. The media field is reserved and any non-empty value fails closed until managed media transport exists; never publishes. [effect=write; scope=social:write; requires=campaignPublishing]
Authorization not required, issuer https://mcp.syntermedia.ai
Authorization not required, issuer https://mcp.syntermedia.ai
Changed the definition of "prospector_update_campaign_status"
Pause orupdate status of anactivate/resumeactivea Prospector outbound campaign. Pass status=paused to stop sending, or status=active (aliases: running, resume, launch, start, enabled) to call EmailBison launch_campaign. NOTE: on customer-workspace MCP connections this tool ⟨25 unchanged words⟩
Changed the definition of "update_campaign_budget"
Update a campaign's daily budget (5 credits). DV360 is intentionally excluded because insertion orders use time-bound total budget segments; use dv360_update_io_budget directly with explicit total-budget semantics. [effect=write; scope=budget:write; externalMutation=true]
Authorization not required, issuer https://mcp.syntermedia.ai
Added "get_campaign_observation"; removed "forecast_campaign_fee"; changed the definition of "get_billing_status"
CheckBOTH of Synter's meters in one call: credit balance and the managed ad-spend fee (a percentage of the ad spendSyntermanages, billed per calendar month). Returns the fee rate, the spend detected this period, the fee accrued sosubscriptionfar,access and— when nothing has accrued — the reason why,usagesobalance.'noAdfee'spend isnever ambiguous between 'notpaidbilled
Recently observed → Live
Live → Recently observed
Certificate recorded, valid to 2026-11-21
Authorization not required, issuer https://mcp.syntermedia.ai
Certificate recorded, valid to 2026-11-21
Authorization not required, issuer https://mcp.syntermedia.ai
Added "publish_skill"; removed "klaviyo_update_list_profiles"; changed the definition of "approve_campaign_plan", "attach_audience", "audit_account_structure" and 196 more
{"destructiveHint":true,"effect":"write","externalMutation":false,"openWorldHint":true,"readOnlyHint":false,"requiredEntitlement":"campaignPublishing","title" ⟨3 unchanged words⟩
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"requiredEntitlement":"campaignPublishing","title":"Attach Audience"}
First tool surface recorded: 200 tools (server version 1.28.1)
Showing the latest 49 events. The API returns up to 500 and filters by kind: ?kind=tool_surface_changed
Loadatheportablerelevant Synterexecution skillplaybook or workspace SOP by slug before task-specific recommendations or execution; use list_skills to discover slugs (free) [effect=read; scope=skills:read]
⟨84 unchanged words⟩ :["platform","product"],"title":"generate_text_ad_toolArgumentscreate_ad_copyArguments","type":"object"}
Create and read back a complete Google Doc from substantive markdown or HTML content (5 credits) [effect=write; scope=workspace:external_docs]
Create, populate, and read back a complete Google Sheet from tabular data (5 credits) [effect=write; scope=workspace:external_docs]
⟨7 unchanged words⟩ PERSONAL email addresses — by resolving them throughWatt SignalSynterGraphSignals to a person, then returning work email, ⟨71 unchanged words⟩
⟨34 unchanged words⟩ ,"title":"Platform"}},"title":"forecast_campaign_toolArgumentsforecast_campaignArguments","type":"object"}
⟨7 unchanged words⟩ ,"required":["tool_name"],"title":"forecast_tool_cost_toolArgumentsforecast_tool_costArguments","type":"object"}
⟨18 unchanged words⟩ ,"type":"string"}},"title":"get_attribution_toolArgumentsget_attributionArguments","type":"object"}
{"properties":{},"title":"get_billing_status_toolArgumentsget_billing_statusArguments","type":"object"}
{"properties":{},"title":"get_credit_balance_toolArgumentsget_credit_balanceArguments","type":"object"}
⟨29 unchanged words⟩ ,"required":["tag_id"],"title":"get_gtm_tag_toolArgumentsget_gtm_tagArguments","type":"object"}
Report how muchPAIDpaidTHIRD-PARTYSynterDATAaudience and research data this workspace consumed,per vendor— record counts, credits billed and USD — over a window.Free.FreeScopedand scoped to the caller's own workspace.Use it to see what audience discovery and enrichment actually cost, andSuppliertoroutingreconcileremains aSynter invoice against the dataprivatethatSynterproducedimplementationit.detail. [effect=read; scope=billing:read]
⟨5 unchanged words⟩ ":"Since Days","type":"integer"},"vendor":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Vendor"}},"title":"get_vendor_consumptionArguments","type":"object"}
DiscoverICP prospects fromhiringSyntercompaniesSignalsand(verifiedlisticle/podcastB2Bplacementcontactsopportunities.forPaidadcontact audiences)orusehiringthecompaniesapproval-gated(outreach),SynterplusAudiencelisticle/podcastCSVplacements.workflow. (5 credits) [effect=read; scope=growth:read]
Enrich a domain withcompetitive intelligence — SpyFu PPCSynterdatacompetitive,BuiltWith tech stacktechnology,Hunter emailscontact,Firecrawlandheadline.website intelligence. (5 credits) [effect=read; scope=growth:read]
⟨7 unchanged words⟩ ,"required":["script_name"],"title":"inspect_script_toolArgumentsinspect_scriptArguments","type":"object"}
{"properties":{},"title":"list_available_scripts_toolArgumentslist_available_scriptsArguments","type":"object"}
⟨24 unchanged words⟩ ,"type":"integer"}},"title":"list_creative_assets_toolArgumentslist_creative_assetsArguments","type":"object"}
{"properties":{},"title":"list_gtm_containers_toolArgumentslist_gtm_containersArguments","type":"object"}
⟨28 unchanged words⟩ ,"type":"string"}},"title":"list_gtm_tags_toolArgumentslist_gtm_tagsArguments","type":"object"}
⟨35 unchanged words⟩ ,"required":["platform"],"title":"measure_incrementality_toolArgumentsmeasure_incrementalityArguments","type":"object"}
⟨210 unchanged words⟩ :["adset_id","name"],"title":"meta_ads_create_ad_toolArgumentsmeta_ads_create_adArguments","type":"object"}
Cross-channelRecommend a cross-channel budget allocation usingdiminishing returnsdiminishing-returns modeling (5 credits). RECOMMEND-ONLY: dry_run defaults to true and nothing is changed on any ad platform; apply approved changes with update_campaign_budget. [effect=write; scope=budget:write; externalMutation=true]
⟨7 unchanged words⟩ "default":null,"title":"Constraints"},"dry_run":{"default":true,"title":"Dry Run","type":"boolean"},"target":{"default":"conversions","title": ⟨9 unchanged words⟩ ,"required":["total_budget"],"title":"optimize_budget_toolArgumentsoptimize_budgetArguments","type":"object"}
UploadWrite email sequence stepstoon a Synter Prospector campaign in the authenticated workspace.Repeatedmode=appenduploads(default)mayaddsappendsequence_stepsduplicateaftersteps;theuseexistingasteps.freshmode=editdraftrewritesandexistingreadstepsbackintheplace,liveaddressedsequencebybeforestep_idanother(readwrite.stepEachidsstepwithneedsprospector_get_campaign);subjectids,bodyorder, inboxes, anddelay_days;scheduleuseare kept and it is safe on a live campaign. mode=delete removes the steps in delete_step_ids; steps that have already sent cannot be deleted. mode=replace swaps the whole sequence and is refused on an active campaign. Every non-append write is verified against a live readback. Use <br> line breaks and {FIRST_NAME}, {COMPANY ⟨13 unchanged words⟩
⟨3 unchanged words⟩ "Campaign Id","type":"string"},"delete_step_ids":{"anyOf":[{"items":{"type":"integer"},"type":"array"},{"type":"null"}],"default":null,"title":"Delete Step Ids"},"mode":{"default":"append","title":"Mode","type":"string"},"sequence_steps":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"titletype":"Sequence Stepsarray"},{"type":"arraynull"}],"default":null,"title":"Sequence Steps"}},"required":["campaign_id","sequence_steps"],"title":"prospector_update_campaign_sequenceArguments","type":"object"}
⟨42 unchanged words⟩ title":"Version Name"}},"title":"publish_gtm_container_toolArgumentspublish_gtm_containerArguments","type":"object"}
⟨35 unchanged words⟩ weekends, or days for a rolling window. last_N_days presets cover the N complete days ending YESTERDAY (Google Ads semantics; use date_range=today for today). segment=date|week breaks metrics out per day or per week (one call for a pacing or creative-fatigue trend — don't loop one call per week). Paginate with limit/offset (next_offset in the result); at level=ads set include_ad_text=false to fit several hundred ads per page. Any window up to 3 years (1095 days ⟨52 unchanged words⟩
⟨59 unchanged words⟩ ":null,"title":"End Date"},"include_ad_text":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"title":"Include Ad Text"},"level":{"default":"campaigns","title":"Level","type":"string"},"limit":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Limit"},"offset":{"default":0,"title":"Offset","type":"integer"},"segment":{"anyOf":[{"enum":["date","week"],"type":"string"},{"type":"null"}],"default":null,"title":"Segment"},"start_date":{"anyOf":[{"type ⟨12 unchanged words⟩
⟨84 unchanged words⟩ :["ad_group_id","post_id"],"title":"reddit_ads_create_ad_toolArgumentsreddit_ads_create_adArguments","type":"object"}
⟨28 unchanged words⟩ :["campaign_id","platform"],"title":"test_creatives_toolArgumentstest_creativesArguments","type":"object"}
⟨31 unchanged words⟩ title":"Campaign Id"}},"title":"tiktok_ads_list_adgroups_toolArgumentstiktok_ads_get_ad_groupsArguments","type":"object"}
⟨29 unchanged words⟩ ,"required":["adgroup_id"],"title":"tiktok_ads_get_adgroup_toolArgumentstiktok_ads_get_adgroupArguments","type":"object"}
⟨31 unchanged words⟩ title":"Adgroup Id"}},"title":"tiktok_ads_list_ads_toolArgumentstiktok_ads_get_adsArguments","type":"object"}
⟨29 unchanged words⟩ ,"required":["campaign_id"],"title":"tiktok_ads_get_campaign_toolArgumentstiktok_ads_get_campaignArguments","type":"object"}
⟨168 unchanged words⟩ ,"required":["adgroup_id"],"title":"tiktok_ads_update_adgroup_toolArgumentstiktok_ads_update_adgroupArguments","type":"object"}
⟨93 unchanged words⟩ ,"required":["tag_id"],"title":"update_gtm_tag_toolArgumentsupdate_gtm_tagArguments","type":"object"}
⟨35 unchanged words⟩ :["tag_id","html"],"title":"update_gtm_tag_html_toolArgumentsupdate_gtm_tag_htmlArguments","type":"object"}
⟨103 unchanged words⟩ ","platform","campaign_id"],"title":"upload_creative_toolArgumentsupload_creativeArguments","type":"object"}
Delete Document — Delete a Campaign IDE document by id or uuid (e.g. to remove a stale or duplicate doc). Only deletes documents you own. [effect=write; scope=workspace:write]
Read Google Drive File — Read a Picker-attached Google Drive file by file_id, or a public Google Drive/Docs file or folder by URL. Public folders return a bounded recursive listing; call this tool again with a returned file URL to extract its content. [effect=read; scope=workspace:read]
Send Slack Message — Post a message to a Slack channel via the Synter bot. channel = a channel ID (Cxxxx) or #name. The bot can only post to channels it's a member of. [effect=write; scope=workspace:notify]
Synter Audience Cancel Export — Cancel a running Synter Audience export. Free. A cancelled export delivers no records and therefore incurs no per-record fee. [effect=write; scope=audiences:write; externalMutation=true]
Synter Audience Capacity — Check whether Synter audience discovery currently has delivery capacity. Free. This is service availability, not the caller's Synter credit balance; use get_credit_balance for customer purchasing capacity. [effect=read; scope=signals:read]
Synter Audience Export — Start a bounded Synter Audience export after refining with synter_audience_query. Requires explicit max_rows (1-100000) and a stable purchase_id issued by the approval gate for safe retries — there is no unbounded export. Returns a job id, NOT records: poll synter_audience_export_status for completion. Delivered records bill per record when the job completes; a failed or cancelled export delivers nothing and bills only the flat fee. [effect=write; scope=audiences:write; externalMutation=true]
Synter Audience Export Status — Poll a Synter Audience export. Free to poll. On COMPLETED, Campaign IDE saves the purchased CSV into the project table without exposing private delivery credentials. The per-record fee is levied here once; repeated polls do not bill again. [effect=write; scope=audiences:write; externalMutation=true]
Synter Audience Query — Size a Synter Audience from a filter tree. operation='count' returns totals only (cheap — iterate your filter here); 'insights' returns aggregates. Paid rows are delivered only through an approval-gated CSV export. Build the filter with synter_audience_schema first. Semantic scores are FIT, not buying intent, and freshness measures record age, not current buying activity. [effect=read; scope=signals:read]
Synter Audience Schema — Discover Synter audience filter columns and their allowed values before building an audience filter. Free — metadata only, no records delivered. Pass entity='contact' or 'company'; pass a column name to list that column's vocabulary. Always call this before synter_audience_query: column names are not guessable and an invalid column is rejected rather than ignored. [effect=read; scope=signals:read]
Synter Signal Audience Export — Purchase a bounded Synter Signals audience as CSV after refining traits. Requires an explicit max_rows (1-100000) and stable purchase_id for safe retries. The complete file is delivered only after settlement at the posted audience-record rate ($150 CPM / 6 credits per delivered record), plus the 5-credit call fee. [effect=write; scope=audiences:write; externalMutation=true]
Synter Signal Entity Relations — Traverse Synter Signals relationships from an entity — e.g. person to employer. Use it to span person and business criteria in one audience (executives AT companies matching a firmographic filter). Bills per related entity returned. [effect=read; scope=signals:read]
Synter Signal Entity Resolve — Resolve identifiers you already hold (emails, phones, device ids) to Synter Signals entity IDs. Identity resolution, not discovery. Bills per resolved entity. US only, adults only. [effect=read; scope=signals:read]
Synter Signal Trait Search — Search Synter Signals for TRAITS — the attributes you can build an audience from (behaviours, affinities, firmographics). Returns trait descriptors with sizes, not people. Start here, refine the traits, then use synter_signal_audience_export for approval-gated CSV delivery. US only, adults only. [effect=read; scope=signals:read]
Tech Intel Company To URL — Resolve company names to candidate website domains. (2 credits) [effect=read; scope=intel:read]
Tech Intel Get Account Usage — Synter technology-intelligence availability and usage snapshot. (2 credits) [effect=read; scope=intel:read]
Tech Intel Get Domain Keywords — Find keywords associated with a website domain. (2 credits) [effect=read; scope=intel:read]
Tech Intel Get Domain Technologies — Synter domain tech-stack lookup — ad pixels, CRM, analytics, CMS/ecommerce tools, spend/meta. (2 credits) [effect=read; scope=intel:read]
Tech Intel Get Sites — Find websites by technology, natural-language audience, or keyword search. (2 credits) [effect=read; scope=intel:read]
Tech Intel Get Technology Changes — Recent technology additions/removals for domains, with business context. (2 credits) [effect=read; scope=intel:read]
Tech Intel Get Trust Signals — Synter domain trust, ecommerce/payment, parked/status, spend and live-tech signals. (2 credits) [effect=read; scope=intel:read]
Tech Intel Product Search — Find ecommerce shops and product listings matching a product query. (2 credits) [effect=read; scope=intel:read]
BuiltWith Company To URL — BuiltWith Company to URL API — resolve company names to candidate website domains. (2 credits) [effect=read; scope=intel:read]
BuiltWith Get Account Usage — BuiltWith account capability and usage snapshot — plan limits, rate limits, credit usage. (2 credits) [effect=read; scope=intel:read]
BuiltWith Get Domain Keywords — BuiltWith Keywords API — keywords associated with a website domain. (2 credits) [effect=read; scope=intel:read]
BuiltWith Get Domain Technologies — BuiltWith domain tech stack lookup — ad pixels, CRM, analytics, CMS/ecommerce tools, spend/meta. (2 credits) [effect=read; scope=intel:read]
BuiltWith Get Sites — Find websites by BuiltWith technology, natural language audience, or keyword search. (2 credits) [effect=read; scope=intel:read]
BuiltWith Get Technology Changes — BuiltWith Change API — recent technology additions/removals for domains, with business context. (2 credits) [effect=read; scope=intel:read]
BuiltWith Get Trust Signals — BuiltWith Trust API — domain trust, ecommerce/payment, parked/status, spend and live-tech signals. (2 credits) [effect=read; scope=intel:read]
BuiltWith Product Search — BuiltWith Product API — ecommerce shops and product listings matching a product query. (2 credits) [effect=read; scope=intel:read]
Growth Run Pipeline — Run the full growth pipeline — discover leads, enrich, generate outreach. (10 credits) [effect=write; scope=growth:write; requires=prospectorAccess; externalMutation=true]
Prospector Get Contacts — Find verified B2B contacts at company domains. Filter with explicit job_titles and job_levels arrays; paginate with offset and the returned next_offset. Legacy query alone is rejected: upstream does not support free-text query. Valid job_levels: Manager, Director, VP, C-Team, Staff, Other. Pass domains (preferred) or company_domain (alias for a single domain). RevenueBase vendor search is tenant-free (shared lookup, no house-tenant campaign data). [effect=read; scope=growth:read]
Revenuebase Audience Balance — Read the remaining RevenueBase licence balance backing audience discovery. Free. This is Synter's shared vendor balance, not the caller's Synter credit balance — use get_credit_balance for that. [effect=read; scope=signals:read]
Revenuebase Audience Cancel Export — Cancel a running RevenueBase export. Free. A cancelled export delivers no records and therefore incurs no per-record fee. [effect=read; scope=signals:read]
Revenuebase Audience Export — Start a bounded RevenueBase export after refining with revenuebase_audience_query. Requires explicit max_rows (1-100000) — there is no unbounded export. Returns a job id, NOT records: poll revenuebase_audience_export_status for the download URL. Delivered records bill per record when the job completes; a failed or cancelled export delivers nothing and bills only the flat fee. [effect=read; scope=signals:read]
Revenuebase Audience Export Status — Poll a RevenueBase export. Free to poll. On COMPLETED it returns a signed download URL valid for one hour — treat that URL as a credential. The per-record fee for the delivered rows is levied here, once: repeated polls of the same finished export do not bill again. [effect=read; scope=signals:read]
Revenuebase Audience Query — Size or sample a RevenueBase audience from a filter tree. operation='count' returns totals only (cheap — iterate your filter here); 'preview' returns up to 1000 real records and bills per delivered record; 'insights' returns aggregates. Build the filter with revenuebase_audience_schema first. Semantic scores are FIT, not buying intent, and freshness measures record age, not current buying activity. [effect=read; scope=signals:read]
Revenuebase Audience Schema — Discover RevenueBase filter columns and their allowed values before building an audience filter. Free — vendor metadata, no records delivered. Pass entity='contact' or 'company'; pass a column name to list that column's vocabulary. Always call this before revenuebase_audience_query: column names are not guessable and an invalid column is rejected rather than ignored. [effect=read; scope=signals:read]
Watt Entity Enrich — Get full profiles for Watt entity IDs — name, contact channels, identifiers. This is the delivery step and bills per enriched profile. Pass max_identifiers=0 to return every identifier for a channel instead of the default sample. US only, adults only. [effect=read; scope=signals:read]
Watt Entity Find — Find entities (people or businesses) in Watt Signal Graph matching trait filters. Returns entity IDs and sample fields — NOT full contact detail; follow with watt_entity_enrich for that. Bills per entity returned. US only, adults only. [effect=read; scope=signals:read]
Watt Entity Relations — Traverse Watt Signal Graph relationships from an entity — e.g. person to employer. Use it to span person and business criteria in one audience (executives AT companies matching a firmographic filter). Bills per related entity returned. [effect=read; scope=signals:read]
Watt Entity Resolve — Resolve identifiers you already hold (emails, phones, device ids) to Watt entity IDs. Identity resolution, not discovery. Bills per resolved entity. US only, adults only. [effect=read; scope=signals:read]
Watt Trait Search — Search Watt Signal Graph for TRAITS — the attributes you can build an audience from (behaviours, affinities, firmographics). Returns trait descriptors with sizes, not people. Start here, then use watt_entity_find to get the matching entities. US only, adults only. [effect=read; scope=signals:read]
⟨13 unchanged words⟩ authenticated workspace. List campaigns first to avoid duplicates. Defaults to plain_text=true and open_tracking=false (tracking pixels and HTML wrappers depress deliverability on cold outbound); pass plain_text=false only when the sequence genuinely needs HTML. Change either later with prospector_update_campaign_settings. This does not launch or send. Add copy ⟨8 unchanged words⟩
⟨12 unchanged words⟩ ":"Name","type":"string"},"open_tracking":{"default":false,"title":"Open Tracking","type":"boolean"},"plain_text":{"default":true,"title":"Plain Text","type":"boolean"},"send_weekends":{"default":true,"title":"Send ⟨25 unchanged words⟩
List leads in the Prospector outbound pipeline, or filter by campaign, pipeline status, tag, orstatus.free-text search. campaign_id accepts the numeric EmailBison campaign id (resolved against live campaign membership) as well as the internal UUID. status filters the pipeline stage (e.g. new, contacted, replied, meeting_booked). search matches email, name, or company. [effect=read; scope=growth:read]
⟨16 unchanged words⟩ ":"Limit","type":"integer"},"search":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Search"},"status":{"anyOf":[{"type":"string ⟨2 unchanged words⟩ "}],"default":null,"title":"Status"},"tag":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Tag"}},"title":"prospector_get_leadsArguments","type":"object"}
Pause, activate/resume, oractivate/resumearchive a Prospector outbound campaign. Pass status=paused to stop sending,orstatus=active (aliases: running, resume, launch, start, enabled) to call EmailBisonlaunch_campaign.launch_campaign, or status=archived to archive it (refused while active: pause first; history is kept). NOTE: on customer-workspace MCP connections this tool ⟨25 unchanged words⟩
Prospector Dedupe Leads — Collapse duplicate Prospector lead rows (same email) into one record: keeps the campaign-linked / most complete row, fills its gaps from the duplicates, moves related records onto it, and deletes the duplicates. dry_run defaults to TRUE; pass dry_run=false to apply. Pass emails to target specific addresses. [effect=write; scope=growth:write; requires=prospectorAccess; externalMutation=true]
Prospector Get Bounced Leads — List bounced Prospector leads with a hard/soft/unknown split, the SMTP reason and code, the campaign, the sending inbox, and whether each address is already suppressed. Reads recorded bounces plus EmailBison's live bounced folder. Filter by campaign_id (numeric EmailBison id), since (ISO date), or bounce_type (hard/soft/unknown). [effect=read; scope=growth:read]
Prospector Reconcile Campaign Leads — Reconcile a Prospector campaign's saved lead links with live EmailBison membership (numeric campaign_id): reports leads linked in Synter but not in EmailBison, EmailBison members not linked, and members with no saved lead, and returns the live member emails. dry_run defaults to TRUE; dry_run=false fixes the links in Synter only (never changes EmailBison). To detach invalid members use prospector_verify_leads then prospector_remove_leads. [effect=write; scope=growth:write; requires=prospectorAccess; externalMutation=true]
Prospector Remove Leads — Detach leads from ONE Synter Prospector (EmailBison) campaign by numeric campaign_id. mode=stop (default) stops future emails and keeps history; mode=remove deletes them from the campaign (irreversible, resets that lead's campaign history). Does not suppress globally. Pass dry_run=true to preview. Never sends email. [effect=write; scope=growth:write; requires=prospectorAccess; externalMutation=true]
Prospector Suppress Leads — Globally suppress email addresses in Synter Prospector: adds them to the suppression list every push gate reads, blocklists them in EmailBison and stops future emails in every campaign holding them. A reason containing 'bounce' also records a hard bounce. all_workspaces=true fans the EmailBison blocklist/stop out to every workspace. Global scope and all_workspaces are limited to the Synter house workspace; tenants use prospector_remove_leads. Pass dry_run=true to preview. Never sends email. [effect=write; scope=growth:write; requires=prospectorAccess; externalMutation=true]
Prospector Update Campaign Settings — Update sending settings on an existing Synter Prospector campaign in the authenticated workspace: plain_text (send as plain text rather than HTML), open_tracking (tracking pixel), can_unsubscribe, max_emails_per_day, max_new_leads_per_day, sequence_prioritization. Only the arguments you pass are changed. This never launches, pauses, or otherwise changes campaign status — use prospector_update_campaign_status for that. Campaigns created before this tool existed default to plain_text=false; set plain_text=true to stop sending HTML-wrapped cold email. [effect=write; scope=growth:write; requires=…
Prospector Update Lead Custom Variables — Refresh EmailBison custom variables on leads ALREADY attached to a Synter Prospector campaign, without re-pushing them. Pass campaign_id plus leads=[{email, custom_variables}], where custom_variables is a list of {name, value} (names are uppercased by the backend, e.g. CUSTOM_SHOWS) or a plain {NAME: value} object. Idempotent: re-running overwrites the same variables. Use this when sequence merge tokens render blank or stale for leads that are already in the campaign. [effect=write; scope=growth:write; requires=prospectorAccess; externalMutation=true]
Prospector Verify Leads — Verify-only email check for Prospector leads: IcyPeas-verifies each address and returns valid / invalid / risky / unknown with the raw status, plus whether it is suppressed. No campaign, no push, no company-name gate, no domain cooldown. persist=true (default) records the verdict on your saved leads so the push gate can use it. Time-budgeted: re-call with `remaining` until complete=true. Up to 200 emails per call. [effect=write; scope=growth:write; requires=prospectorAccess; externalMutation=true]
Configure Pixel Destination — Create or update a Synter Pixel CAPI event-forwarding destination. Sets the platform-specific IDs needed to fan out conversion events server-side. Supports Google (customer_id + conversion_action_id), Meta/Reddit (pixel_id), LinkedIn (conversion_rule_id), TikTok (pixel_code), and Snapchat. Use action='disable' or action='enable' to toggle without changing settings. Free — no credits. [effect=write; scope=tracking:write; externalMutation=true]
Delete Document — Delete a Campaign IDE document by id or uuid (e.g. to remove a stale or duplicate doc). Only deletes documents you own. [effect=write; scope=workspace:write]
Find Audience Signals — Find audience intent signals and semantic clusters from a natural-language description (e.g. 'RevOps leaders at B2B SaaS companies using Salesforce'). Returns matching intent clusters to use as targeting signals. [effect=read; scope=signals:read]
Get Click Attribution — Return stored click IDs and UTMs from pixel ingest plus Stripe first-touch (user_attribution, PR 9673). This is stored identifiers only — no first/last/linear model math. Do not pause or scale from get_performance alone. Free — no credits. [effect=read; scope=tracking:read]
Get Pixel Destinations — List Synter Pixel sites and their CAPI event-forwarding destinations for the active workspace. Shows platform, enabled/disabled state, and configured IDs. Free — no credits. [effect=read; scope=tracking:read]
Get Pixel Health — Pixel snippet + destination health for the active workspace: snippet installed, destinations configured, last successful CAPI delivery per adapter. Do not pause or scale from get_performance alone; read get_pixel_health, list_event_deliveries, and get_click_attribution first. Free — no credits. [effect=read; scope=tracking:read]
List Event Deliveries — Read event_deliveries fan-out rows (success/fail/destination) for the workspace pixel. Do not pause or scale from get_performance alone; confirm deliveries before acting. Free — no credits. [effect=read; scope=tracking:read]
Send Slack Message — Post a message to a Slack channel via the Synter bot. channel = a channel ID (Cxxxx) or #name. The bot can only post to channels it's a member of. [effect=write; scope=workspace:notify]
{"properties":{"acknowledge_benchmark":{"default":false,"title":"Acknowledge Benchmark","type":"boolean"},"slug":{"title":"Slug","type": ⟨7 unchanged words⟩
Benchmark Landing Page — Measure whether our landing page looks and converts better than the pages this traffic would otherwise land on. Captures ours and up to 5 competitor URLs at desktop (1280) and mobile (390), scores every page on one rubric (CTA above the fold, h1, no horizontal overflow, load time, conversion surface, proof, copy length) plus a vision design read, and ranks them. Returns wins, rank, a leaderboard and gaps — the dimensions a competitor beats us on, i.e. the next studio_edit_landing_page batch. Recorded on the canvas page; publish_landing_page refuses a page that lost until fixed or acknowledged…
Create Landing Page Variants — Per-ad landing pages from ONE approved canvas framework, bound to real ads. Keeps the framework's section order, theme, offer and CTA verb; swaps only the message-match slots (hero headline := the ad's promise, subtitle := primary text, badge := audience, CTA verb := the ad's CTA) and names the page after the ad. Each variant records its ad (platform, campaign_id, ad_id) on the canvas document so attribution reads back per ad. Pass ads exactly as read from the platform; never invent copy. Each NEW hosted page is charged like create_landing_page; re-deriving an existing variant is free. [effec…
Enrich Contacts — Enrich contacts you already hold — including PERSONAL email addresses — by resolving them through Watt Signal Graph to a person, then returning work email, LinkedIn URL, phone, title and employer. Built for the signup-list problem: a gmail.com address is invisible to work-email-only B2B data, but is resolvable as a person. CRM-AGNOSTIC: pass identifiers and get rows back keyed 1:1 to what you passed, so any CRM (attio, hubspot, salesforce, pipedrive) can map them back to its own records. Bills per enriched profile delivered; unresolved identifiers are free. US only, adults only. [effect=read;…
Get Vendor Consumption — Report how much PAID THIRD-PARTY DATA this workspace consumed, per vendor — record counts, credits billed and USD — over a window. Free. Scoped to the caller's own workspace. Use it to see what audience discovery and enrichment actually cost, and to reconcile a Synter invoice against the data that produced it. [effect=read; scope=billing:read]
Revenuebase Audience Balance — Read the remaining RevenueBase licence balance backing audience discovery. Free. This is Synter's shared vendor balance, not the caller's Synter credit balance — use get_credit_balance for that. [effect=read; scope=signals:read]
Revenuebase Audience Cancel Export — Cancel a running RevenueBase export. Free. A cancelled export delivers no records and therefore incurs no per-record fee. [effect=read; scope=signals:read]
Revenuebase Audience Export — Start a bounded RevenueBase export after refining with revenuebase_audience_query. Requires explicit max_rows (1-100000) — there is no unbounded export. Returns a job id, NOT records: poll revenuebase_audience_export_status for the download URL. Delivered records bill per record when the job completes; a failed or cancelled export delivers nothing and bills only the flat fee. [effect=read; scope=signals:read]
Revenuebase Audience Export Status — Poll a RevenueBase export. Free to poll. On COMPLETED it returns a signed download URL valid for one hour — treat that URL as a credential. The per-record fee for the delivered rows is levied here, once: repeated polls of the same finished export do not bill again. [effect=read; scope=signals:read]
Revenuebase Audience Query — Size or sample a RevenueBase audience from a filter tree. operation='count' returns totals only (cheap — iterate your filter here); 'preview' returns up to 1000 real records and bills per delivered record; 'insights' returns aggregates. Build the filter with revenuebase_audience_schema first. Semantic scores are FIT, not buying intent, and freshness measures record age, not current buying activity. [effect=read; scope=signals:read]
Revenuebase Audience Schema — Discover RevenueBase filter columns and their allowed values before building an audience filter. Free — vendor metadata, no records delivered. Pass entity='contact' or 'company'; pass a column name to list that column's vocabulary. Always call this before revenuebase_audience_query: column names are not guessable and an invalid column is rejected rather than ignored. [effect=read; scope=signals:read]
Studio Edit Landing Page — Edit a canvas landing page with structured section ops — the landing-page twin of studio_edit_artboard; never write HTML. Atomic: invalid ops, an off-theme color/font or a stale revision saves nothing and returns every problem. On success the page is re-rendered, versioned, purged at the edge if published, and returned with desktop + mobile screenshots and layout diagnostics. Free edit of a page you own. ops (max 50): add_section {type, props, index?} | update_section {section_index, props (shallow merge; null deletes a key)} | replace_section {section_index, type, props} | remove_section {se…
Studio Inspect Landing Page — Read a landing page as a canvas document: indexed sections (type + full props), theme, nav, footer, metadata and a revision. Every page generated by create_landing_page is a canvas document (render_mode=schema). Call before studio_edit_landing_page and pass the revision back as expected_revision. screenshots=True also returns desktop (1280) + mobile (390) render-verify PNGs with layout diagnostics (horizontal overflow, CTA above the fold, h1 present). [effect=read; scope=landing_pages:read]
Watt Entity Enrich — Get full profiles for Watt entity IDs — name, contact channels, identifiers. This is the delivery step and bills per enriched profile. Pass max_identifiers=0 to return every identifier for a channel instead of the default sample. US only, adults only. [effect=read; scope=signals:read]
Watt Entity Find — Find entities (people or businesses) in Watt Signal Graph matching trait filters. Returns entity IDs and sample fields — NOT full contact detail; follow with watt_entity_enrich for that. Bills per entity returned. US only, adults only. [effect=read; scope=signals:read]
Watt Entity Relations — Traverse Watt Signal Graph relationships from an entity — e.g. person to employer. Use it to span person and business criteria in one audience (executives AT companies matching a firmographic filter). Bills per related entity returned. [effect=read; scope=signals:read]
Watt Entity Resolve — Resolve identifiers you already hold (emails, phones, device ids) to Watt entity IDs. Identity resolution, not discovery. Bills per resolved entity. US only, adults only. [effect=read; scope=signals:read]
Watt Trait Search — Search Watt Signal Graph for TRAITS — the attributes you can build an audience from (behaviours, affinities, firmographics). Returns trait descriptors with sizes, not people. Start here, then use watt_entity_find to get the matching entities. US only, adults only. [effect=read; scope=signals:read]
Audit Account Structure — Audit an ad account's campaign structure (READ-ONLY, free). Flags the churn signatures that make an account a mess: duplicate campaign / ad group / ad names (case-insensitive, trimmed), ad groups with empty or invalid targeting, and 'rebuilt-not-edited' campaigns (a name with both a live and an archived copy). Reddit is fully supported (campaign / ad group / ad depth); Google is campaign-level. Writes nothing — use repair_account_structure to act on the findings. [effect=read; scope=campaigns:read]
Get Account Changelog — Extract Google Ads changelog / mutation history (default request 90 days, capped to the Google Ads change_event API's 30-day maximum). Other catalog platforms return changelog_supported=false until a reader is implemented. Evaluates historical changes against Synter's autonomous agent tool and OAuth scope parity, calculates estimated monthly hours saved, and generates autonomous agent recommendations. [effect=read; scope=campaigns:read]
Repair Account Structure — Repair an ad account's campaign structure. DRY-RUN BY DEFAULT — reports what it WOULD archive and changes nothing. Pass apply=true (only after customer approval) to ARCHIVE duplicate clutter (keeps the earliest of each same-name set) via PATCH configured_status=ARCHIVED — Reddit v3 has NO hard DELETE. Ad groups with empty targeting are FLAGGED, never auto-archived. Reddit apply is fully supported; Google apply is dry-run planning only. Free — no credits. [effect=write; scope=campaigns:structure; externalMutation=true]
Shopify Get Abandoned Checkouts — Get Shopify abandoned checkouts for cart-abandonment and recovery-rate reporting. Call this when diagnosing checkout drop-off or sizing a retargeting audience. Paginate with page_info. [effect=read; scope=commerce:read]
Shopify Get Collections — Get Shopify collections (smart and custom). Call this when segmenting a catalog for shopping or Performance Max campaigns. Paginate with page_info. [effect=read; scope=commerce:read]
Shopify Get Customer Audience — Export a hashed Shopify customer audience for upload to Meta, Google, TikTok or LinkedIn. Call this to build a customer-match or lookalike seed from store purchase history. The underlying script always SHA-256 hashes customer identifiers before returning them. [effect=read; scope=audiences:read]
Shopify Get Customers — Aggregate a Shopify customer cohort into privacy-thresholded metrics. Days default to 30, round up to fixed 30, 90, or 365-day rolling UTC windows, and clamp above 365. Exact timestamp and pagination filters are deprecated, ignored, and echoed in deprecated_parameters_ignored. No customer-level records or pagination cursors are returned; cohorts smaller than 10 are suppressed. Use shopify_get_customer_audience when you need the hashed audience file itself. [effect=read; scope=commerce:read]
Shopify Get Discount Codes — Get Shopify discount codes and their price rules. Requires an assisted/custom Shopify connection with read_discounts; this is unavailable to public App Store installs. Call this to check which promotions are live before referencing an offer in ad copy or a landing page. Paginate with page_info. [effect=read; scope=commerce:read]
Shopify Get Inventory Levels — Get Shopify inventory levels per inventory item and location. Call this to confirm stock before scaling spend on a product, or to find which locations can fulfil demand. [effect=read; scope=commerce:read]
Shopify Get Inventory Status — Get a Shopify stock-health summary flagging low and out-of-stock products. Call this before increasing budget on a shopping campaign so you do not drive traffic to unavailable products. [effect=read; scope=commerce:read]
Shopify Get Orders — Get Shopify orders with financial and fulfillment status. Call this when the user asks about their Shopify store's orders, revenue by order, refunds, or unfulfilled orders. Paginate with page_info until next_page_info is absent. [effect=read; scope=commerce:read]
Shopify Get Product Feed — Build a Shopify product feed (Google Merchant Center RSS 2.0 XML or CSV) and return it as data. Call this to inspect or refresh the catalog behind Google Shopping and Performance Max campaigns. It never hosts the feed at a public URL; use execute if you need it hosted. [effect=read; scope=commerce:read]
Shopify Get Product Sales — Get Shopify revenue broken down by product, vendor or product type. Call this to find the best sellers worth advertising and the long tail that is not converting. [effect=read; scope=commerce:read]
Shopify Get Products — Get Shopify products, filterable by status, vendor, product type or collection. Call this before building a product feed or shopping campaign so ad copy matches the real catalog. Paginate with page_info. [effect=read; scope=commerce:read]
Shopify Get Sales Summary — Get aggregate Shopify revenue, order count and average order value over a date range. Call this to establish store-level baseline revenue before attributing ad spend, or for blended ROAS. [effect=read; scope=commerce:read]
Shopify Get Shop — Get Shopify shop identity and configuration: domain, currency, timezone, plan. Call this first when connecting a store, to confirm which shop the credentials point at before any other call. [effect=read; scope=commerce:read]
Shopify Get Webhooks — Get the Shopify webhooks currently registered on the store. Call this to verify conversion and order tracking is wired up before trusting Shopify-sourced conversion data. [effect=read; scope=commerce:read]
Only numbers and dates differ: this server embeds live figures in the definition, so the text moves without the contract changing.
Generate an AI landing page hosted on your custom domain (135600 credits) [effect=write; scope=landing_pages:write]
Only numbers and dates differ: this server embeds live figures in the definition, so the text moves without the contract changing.
Create a Meta (Facebook/Instagram) ad in an existing ad set (520 credits) [effect=write; scope=campaigns:write; requires=campaignPublishing; externalMutation=true]
Only numbers and dates differ: this server embeds live figures in the definition, so the text moves without the contract changing.
⟨5 unchanged words⟩ an existing post in an ad group (520 credits) [effect=write; scope=campaigns:write; requires=campaignPublishing; externalMutation=true]
Only numbers and dates differ: this server embeds live figures in the definition, so the text moves without the contract changing.
Start or check a multi-armed bandit creative experiment using Thompson sampling (340 credits) [effect=write; scope=creative:generate]
⟨38 unchanged words⟩ , this creates a new hosted page andcostsis135billedcreditslike(samecreate_landing_page;asforecast_tool_costcreate_landing_page).has the live rate. [effect=write; scope=landing_pages:write]
⟨37 unchanged words⟩ an ad campaign. Creating a new hosted pagecostsis135billedcreditslike create_landing_page (sameforecast_tool_costashascreate_landing_pagethe live rate); re-uploading to a slug you already own ⟨9 unchanged words⟩
Document Authoring Apply — Persist one atomic draft-authoring operation on a Synter document: artboard.create (caller UUID widget_id, name, width, height, optional ops), artboard.edit (widget_id, studio ops), or dashboard.arrange (arrangement of widget_id,x,y,width,height). Requires the expected_revision from document_authoring_read and explicit project UUID/null. Returns committed canonical readback and changed IDs, never a streamed intent. Stale retries fail 409: read and reconcile, do not blindly reapply. Does not render, publish or spend. [effect=write; scope=campaigns:write]
Document Authoring Read — Read canonical persisted Synter document content, full artboard designs, dashboard widgets and whole-document revision. Requires document UUID and explicit project UUID (null outside projects). No browser is required. Use this before document_authoring_apply. [effect=read; scope=campaigns:read]
Shopify Create Discount — Create a Shopify discount code and its price rule. Requires an assisted/custom Shopify connection with write_discounts; this is unavailable to public App Store installs. Call this when launching a promotion that ad creative or a landing page will reference. The value must be negative, for example -10 for 10 percent off. [effect=write; scope=commerce:write; externalMutation=true]
Shopify Create Web Pixel — Activate the Synter Web Pixel extension on a Shopify store for checkout_completed conversion tracking. This is the supported path; Shopify stopped rendering ScriptTag pixels on the order-status page. Call this when setting up purchase tracking for a store. [effect=write; scope=tracking:write; externalMutation=true]
Get Organic Publishing Readiness — Inspect tenant-bound organic publishing setup for one explicit platform and destination. Provider config and connection ID are optional only as a pair. Separates persisted scope claims from verified effective scopes and reports provider prerequisites without drafting, scheduling, or publishing. [effect=read; scope=social:read]
List Scheduled Posts — List tenant-owned organic drafts, approvals, schedules, and publication receipts without exposing credentials. [effect=read; scope=social:read]
Publish Organic Post — Publish an approved, preflighted organic-post revision once to its exact bound destination. Requires separate publish approval and never automatically retries an ambiguous provider outcome. [effect=publish; scope=social:write; requires=campaignPublishing; externalMutation=true]
Schedule Organic Post — Schedule an approved organic-post revision for an exact ISO-8601 time with timezone. Enqueues one non-retrying publication job. [effect=publish; scope=social:write; requires=campaignPublishing; externalMutation=true]
Validate Organic Post — Run a non-publishing provider capability preflight for the exact immutable revision, tenant, connection, provider config, LinkedIn member/company destination, token, and effective scopes. [effect=write; scope=social:write; requires=campaignPublishing]
Klaviyo Create Campaign — Create a Klaviyo email or SMS campaign as a DRAFT, optionally scheduled. This does not send: sending is a separate approval-gated step, so a draft created here is safe to review first. Call this when building a lifecycle send from a template or supplied HTML. [effect=write; scope=email:write; externalMutation=true]
Klaviyo Create Event — Send a custom event to a Klaviyo profile, such as an ad conversion with a monetary value. Call this to push paid-media conversions into Klaviyo so flows can trigger on them and revenue attribution reconciles. [effect=write; scope=email:write; externalMutation=true]
Klaviyo Get Campaign Metrics — Get Klaviyo campaign performance: opens, clicks, revenue, and unsubscribes. Call this when attributing revenue to email or SMS, or when comparing owned-channel results against paid campaigns for blended reporting. [effect=read; scope=email:read]
Klaviyo Get Campaigns — Get Klaviyo email and SMS campaigns with their status (draft, scheduled, sent, cancelled). Call this to see what lifecycle marketing is already running before proposing a new send, or to find a campaign id for a metrics lookup. [effect=read; scope=email:read]
Klaviyo Get Flows — Get Klaviyo automated flows and their live status. Call this to check which triggered sequences (welcome, abandoned cart, win-back) already exist before building a new one, so a flow is not duplicated. [effect=read; scope=email:read]
Klaviyo Get Lists — Get Klaviyo lists, and optionally segments too. Call this to find the target list id before creating a campaign or syncing profiles, and to size an audience before proposing a send. [effect=read; scope=email:read]
Klaviyo Get Templates — Get Klaviyo email templates, filterable by name. Call this to reuse an existing branded template instead of generating raw HTML for a new campaign. [effect=read; scope=email:read]
Shopify Create Webhook — Register a Shopify webhook so the store pushes events such as orders/paid to Synter. Call this when setting up order or refund tracking for a newly connected store. [effect=write; scope=commerce:write; externalMutation=true]
Get Campaign Observation — Independent read-only native campaign observation v1 for explicitly enrolled Google, Meta or LinkedIn test accounts. Requires exact workspace, connection and account. Returns provider fields and pagination/provenance, never a parity or delivery verdict. No creation, repair, activation, report jobs or model calls. Unenrolled accounts fail closed. [effect=read; scope=campaigns:read]
Forecast Campaign Fee — Project the managed ad-spend fee a proposed campaign would accrue, from its daily budget and duration. Returns projected spend, the fee rate, and the projected fee. FREE: costs no credits, makes no LLM call, and creates nothing — this is arithmetic, not a quote. Surface the result when proposing a budget so the fee is visible before the customer commits. [effect=read; scope=billing:read]
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Audit Account Structure"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Audit LLM Crawler Readiness"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Audit Review Site Profiles"}
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"title":"Build ABM Audience"}
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"title":"Build Lookalike Audience"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"BuiltWith Company To URL"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"BuiltWith Get Account Usage"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"BuiltWith Get Domain Keywords"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"BuiltWith Get Domain Technologies"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"BuiltWith Get Sites"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"BuiltWith Get Technology Changes"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"BuiltWith Get Trust Signals"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"BuiltWith Product Search"}
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"title":"Configure Pixel Destination"}
{"destructiveHint":true,"effect":"write","externalMutation":false,"openWorldHint":true,"readOnlyHint":false,"title":"Create Ad Copy"}
{"destructiveHint":true,"effect":"write","externalMutation":false,"openWorldHint":true,"readOnlyHint":false,"title":"Create Autonomous Schedule"}
{"destructiveHint":true,"effect":"publish","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"requiredEntitlement":"campaignPublishing","title" ⟨4 unchanged words⟩
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"requiredEntitlement":"campaignPublishing","title" ⟨3 unchanged words⟩
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"requiredEntitlement":"campaignPublishing","title" ⟨3 unchanged words⟩
{"destructiveHint":true,"effect":"write","externalMutation":false,"openWorldHint":true,"readOnlyHint":false,"title":"Create Document"}
{"destructiveHint":true,"effect":"write","externalMutation":false,"openWorldHint":true,"readOnlyHint":false,"title":"Create Embed"}
{"destructiveHint":true,"effect":"write","externalMutation":false,"openWorldHint":true,"readOnlyHint":false,"title":"Create Google Doc"}
{"destructiveHint":true,"effect":"write","externalMutation":false,"openWorldHint":true,"readOnlyHint":false,"title":"Create Google Sheet"}
⟨23 unchanged words⟩ "Cta Url","type":"string"},"idempotency_key":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Idempotency Key"},"lead_form":{"anyOf":[{"type":"string ⟨42 unchanged words⟩
{"destructiveHint":true,"effect":"write","externalMutation":false,"openWorldHint":true,"readOnlyHint":false,"title":"Create Landing Page"}
{"destructiveHint":true,"effect":"write","externalMutation":false,"openWorldHint":true,"readOnlyHint":false,"title":"Create Social Clip"}
{"destructiveHint":true,"effect":"write","externalMutation":false,"openWorldHint":true,"readOnlyHint":false,"title":"Create Verified Page Replica"}
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"title":"Delete Audience"}
{"destructiveHint":true,"effect":"write","externalMutation":false,"openWorldHint":true,"readOnlyHint":false,"title":"Delete Document"}
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"title":"Disable Campaign Guardrail"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Discover LLM Visibility Prompts"}
{"destructiveHint":true,"effect":"write","externalMutation":false,"openWorldHint":true,"readOnlyHint":false,"title":"Draft Wikipedia Article"}
{"destructiveHint":true,"effect":"state","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"requiredEntitlement":"campaignPublishing","title":"Enable Campaign"}
{"destructiveHint":true,"effect":"write","externalMutation":false,"openWorldHint":true,"readOnlyHint":false,"title":"Execute"}
{"destructiveHint":true,"effect":"publish","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"requiredEntitlement":"campaignPublishing","title" ⟨3 unchanged words⟩
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Find Audience Signals"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Find LLM Citation Listicles"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Forecast Campaign"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Forecast Campaign Fee"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Forecast Tool Cost"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"GA4 Get Conversions"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"GA4 Get Properties"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"GA4 Get Report"}
{"destructiveHint":true,"effect":"write","externalMutation":false,"openWorldHint":true,"readOnlyHint":false,"title":"Generate JSON-LD Schema Markup"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Get Account Changelog"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Get Ad Readback"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Get Attribution"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Get Billing Status"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Get Campaign Plan"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Get Click Attribution"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Get Connection Status"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Get Credit Balance"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Get Embed"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Get Embed Code"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Get GTM Tag"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Get Job Status"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Get Launch Gate Policy"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Get LLM Visibility Overview"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Get Pixel Destinations"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Get Pixel Health"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Get Plan Execution"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Get Plugin Info"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Get Spend Reconciliation"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Growth Discover"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Growth Enrich"}
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"requiredEntitlement":"prospectorAccess","title" ⟨3 unchanged words⟩
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":false,"readOnlyHint":true,"title":"Inspect Script"}
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"title":"Klaviyo Create Campaign"}
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"title":"Klaviyo Create Event"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Klaviyo Get Campaign Metrics"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Klaviyo Get Campaigns"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Klaviyo Get Flows"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Klaviyo Get Lists"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Klaviyo Get Templates"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"List Audiences"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"List Autonomous Schedules"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":false,"readOnlyHint":true,"title":"List Available Scripts"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"List Campaign Guardrails"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"List Campaigns"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"List Connected Accounts"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"List Creative Assets"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"List Embed Purchases"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"List Embed Submissions"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"List Embeds"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"List Event Deliveries"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"List GTM Containers"}
Listthepublished GTM tagsinbyadefault;GTMsource=workspacecontainer.inspects unpublished drafts. Returns tag summaries: tagId, name, type, ⟨12 unchanged words⟩
⟨18 unchanged words⟩ "default":null,"title":"Container Id"},"source":{"default":"live","title":"Source","type":"string"}},"title":"list_gtm_tags_toolArguments","type":"object"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"List GTM Tags"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"List LLM Visibility Opportunities"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"List LLM Visibility Prompts"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"List LLM Visibility Sightings"}
Listpublicportable Synter execution skills andplatformworkspace SOPs (free) [effect=read; scope=skills:read]
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":false,"readOnlyHint":true,"title":"List Skills"}
Load apublicportable Synter execution skill orplatformworkspace SOP (free) [effect=read; scope=skills:read]
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":false,"readOnlyHint":true,"title":"Load Skill"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Measure Incrementality"}
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"requiredEntitlement":"campaignPublishing","title" ⟨4 unchanged words⟩
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"title":"Optimize Budget"}
{"destructiveHint":true,"effect":"state","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"title":"Pause Campaign"}
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"requiredEntitlement":"prospectorAccess","title" ⟨3 unchanged words⟩
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"requiredEntitlement":"prospectorAccess","title" ⟨5 unchanged words⟩
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"requiredEntitlement":"prospectorAccess","title" ⟨3 unchanged words⟩
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"requiredEntitlement":"prospectorAccess","title" ⟨3 unchanged words⟩
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Prospector Get Analytics Summary"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Prospector Get Campaign"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Prospector Get Campaign Performance"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Prospector Get Campaigns"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Prospector Get Contacts"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Prospector Get Inbox Health"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Prospector Get Leads"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Prospector Get Pipeline Summary"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Prospector Get Report"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Prospector Get Reports"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Prospector Get Step Performance"}
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"requiredEntitlement":"prospectorAccess","title" ⟨4 unchanged words⟩
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"requiredEntitlement":"prospectorAccess","title" ⟨4 unchanged words⟩
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"requiredEntitlement":"prospectorAccess","title" ⟨5 unchanged words⟩
{"destructiveHint":true,"effect":"publish","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"requiredEntitlement":"campaignPublishing","title" ⟨3 unchanged words⟩
{"destructiveHint":true,"effect":"publish","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"requiredEntitlement":"campaignPublishing","title" ⟨3 unchanged words⟩
{"destructiveHint":true,"effect":"publish","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"requiredEntitlement":"campaignPublishing","title" ⟨3 unchanged words⟩
{"destructiveHint":true,"effect":"publish","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"requiredEntitlement":"campaignPublishing","title" ⟨3 unchanged words⟩
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Pull Amazon Ads Performance"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Pull Amazon DSP Performance"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Pull CM360 Performance"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Pull Criteo Ads Performance"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Pull DV360 Performance"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Pull FreeWheel Performance"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Pull Google Ads Performance"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Pull Instacart Ads Performance"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Pull LinkedIn Ads Performance"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Pull LinkedIn Company Engagement"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Pull Meta Ads Performance"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Pull Microsoft Ads Performance"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Pull OpenAI Ads Performance"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Pull Pinterest Ads Performance"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Pull Reddit Ads Performance"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Pull Snap Ads Performance"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Pull Spotify Ads Performance"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Pull Target Roundel Performance"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Pull TikTok Ads Performance"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Pull Trade Desk Performance"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Pull Walmart Ads Performance"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Pull X Ads Performance"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Read Google Sheet"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Recommend LLM Visibility Strategy"}
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"requiredEntitlement":"campaignPublishing","title" ⟨4 unchanged words⟩
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"title":"Repair Account Structure"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Research Campaign Opportunity"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Run GAQL Query"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Run Launch Preflight"}
{"destructiveHint":true,"effect":"write","externalMutation":false,"openWorldHint":true,"readOnlyHint":false,"title":"Run LLM Visibility Scan"}
{"destructiveHint":true,"effect":"write","externalMutation":false,"openWorldHint":true,"readOnlyHint":false,"title":"Send Slack Message"}
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"title":"Set Campaign Guardrail"}
{"destructiveHint":true,"effect":"write","externalMutation":false,"openWorldHint":true,"readOnlyHint":false,"requiredEntitlement":"crmIntegrations","title" ⟨4 unchanged words⟩
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"title":"Set Spend Alert"}
{"destructiveHint":true,"effect":"write","externalMutation":false,"openWorldHint":true,"readOnlyHint":false,"title":"Setup Custom Domain"}
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"title":"Setup Google Ads Trial Funnel"}
Create a Shopify discount code and its price rule. Requires an assisted/custom Shopify connection with write_discounts; this is unavailable to public App Store installs. Call this when launching a promotion that ad ⟨23 unchanged words⟩
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"title":"Shopify Create Discount"}
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"title":"Shopify Create Web Pixel"}
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"title":"Shopify Create Webhook"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Shopify Get Abandoned Checkouts"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Shopify Get Collections"}
⟨19 unchanged words⟩ customer-match or lookalike seed from store purchase history.EmailsTheandunderlyingphonesscriptarealways SHA-256hashedhashesunlesscustomerinclude_rawidentifiersisbeforeset.returning them. [effect=read; scope=audiences:read]
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Shopify Get Customer Audience"}
GetAggregate a Shopifycustomerscustomerwithcohortcreationintoandprivacy-thresholdedupdatemetrics.filters.DaysCalldefaultthisto 30, round up tosizefixedan30,audience90,beforeorexporting365-dayit;rollinguseUTC windows, and clamp above 365. Exact timestamp and pagination filters are deprecated, ignored, and echoed in deprecated_parameters_ignored. No customer-level records or pagination cursors are returned; cohorts smaller than 10 are suppressed. Use shopify_get_customer_audience when you need the hashed audience file itself.Paginate with page_info.[effect=read; scope=commerce:read]
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Shopify Get Customers"}
Get Shopify discount codes and their price rules. Requires an assisted/custom Shopify connection with read_discounts; this is unavailable to public App Store installs. Call this to check which promotions are live ⟨17 unchanged words⟩
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Shopify Get Discount Codes"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Shopify Get Inventory Levels"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Shopify Get Inventory Status"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Shopify Get Orders"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Shopify Get Product Feed"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Shopify Get Product Sales"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Shopify Get Products"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Shopify Get Sales Summary"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Shopify Get Shop"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Shopify Get Webhooks"}
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"requiredEntitlement":"campaignPublishing","title" ⟨3 unchanged words⟩
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"requiredEntitlement":"campaignPublishing","title":"Sync Audience"}
{"destructiveHint":true,"effect":"write","externalMutation":false,"openWorldHint":true,"readOnlyHint":false,"title":"Sync Wikidata Entity"}
{"destructiveHint":true,"effect":"write","externalMutation":false,"openWorldHint":true,"readOnlyHint":false,"title":"Synter Onboarding Start"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Synter Onboarding Status"}
{"destructiveHint":true,"effect":"write","externalMutation":false,"openWorldHint":true,"readOnlyHint":false,"title":"Test Creatives"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"TikTok Ads Get Ad Groups"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"TikTok Ads Get Ad Group"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"TikTok Ads Get Ads"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"TikTok Ads Get Campaign"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"TikTok Ads Get Insights"}
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"title":"TikTok Ads Update Ad Group"}
{"destructiveHint":true,"effect":"write","externalMutation":false,"openWorldHint":true,"readOnlyHint":false,"title":"Update Autonomous Schedule"}
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"title":"Update Campaign Budget"}
{"destructiveHint":true,"effect":"write","externalMutation":false,"openWorldHint":true,"readOnlyHint":false,"title":"Update Embed"}
{"destructiveHint":true,"effect":"write","externalMutation":false,"openWorldHint":true,"readOnlyHint":false,"title":"Update Google Sheet"}
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"title":"Update GTM Tag"}
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"title":"Update GTM Tag HTML"}
{"destructiveHint":true,"effect":"write","externalMutation":false,"openWorldHint":true,"readOnlyHint":false,"title":"Update Landing Page HTML"}
Setlanding-pageworkspace-ownedconversionlanding-page pixels, GA4, and the Google Ads conversion label, and wire a Fillout embed so form submits count as campaign conversionsandusingroutethetoexistingHubSpot.workspace integrations. Free edit ofan existinga page you own. Returns google_send_to plus a Fillout ⟨5 unchanged words⟩
⟨8 unchanged words⟩ null,"title":"Fillout Form Id"},"ga4_measurement_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Ga4 Measurement Id"},"google_conversion_label":{"anyOf":[{"type":"string ⟨76 unchanged words⟩
{"destructiveHint":true,"effect":"write","externalMutation":false,"openWorldHint":true,"readOnlyHint":false,"title":"Update Landing Page Tracking"}
{"destructiveHint":true,"effect":"write","externalMutation":false,"openWorldHint":true,"readOnlyHint":false,"title":"Update Verified Page Replica"}
{"destructiveHint":true,"effect":"publish","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"requiredEntitlement":"campaignPublishing","title":"Upload Creative"}
{"destructiveHint":true,"effect":"publish","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"requiredEntitlement":"campaignPublishing","title" ⟨4 unchanged words⟩
{"destructiveHint":true,"effect":"write","externalMutation":true,"openWorldHint":true,"readOnlyHint":false,"title":"Upsert Plan Entity"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Verify Custom Domain"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Verify Pixel Ownership"}
{"destructiveHint":false,"effect":"read","externalMutation":false,"openWorldHint":true,"readOnlyHint":true,"title":"Verify Platform Accounts"}
Publish Skill — Create or update a private workspace skill from a complete SKILL.md document [effect=write; scope=skills:write]
Klaviyo Update List Profiles — Add or update profiles on a Klaviyo list from supplied JSON. Call this to sync an audience built elsewhere (a customer export, an ad-platform audience) into a Klaviyo list for lifecycle targeting. [effect=write; scope=email:write; externalMutation=true]