Connection check
verified live · 27h ago
synter-ads
Manage ad campaigns across Google, Meta, LinkedIn, Reddit, TikTok, and more via AI.
Tools
188
GitHub stars
—
Installs / wk
278
Licence
—
Transport
streamable-http, stdio
Last checked
27h ago
Tools & capabilities
188 toolsRead from the running server on 27h ago.
approve_campaign_plan
can modify data
commentplan_id*expected_version*
Record the workspace owner's approval of a published campaign plan, moving it from in_review to approved so it can be launched. [effect=write; scope=campaigns:plan; requires=campai… Record the workspace owner's approval of a published campaign plan, moving it from in_review to approved so it can be launched. [effect=write; scope=campaigns:plan; requires=campaignPublishing]
attach_audience
can modify data
modefacetplatformad_group_idaudience_idcampaign_id*
+1
Attach (add), remove, or replace a matched audience on an existing campaign/ad-group/ad-set/line-item's targeting (5 credits). Supports linkedin, google, meta, tiktok, reddit, micr… Attach (add), remove, or replace a matched audience on an existing campaign/ad-group/ad-set/line-item's targeting (5 credits). Supports linkedin, google, meta, tiktok, reddit, microsoft, stackadapt, x. [effect=write; scope=audiences:write; requires=campaignPublishing; externalMutation=true]
audit_account_structure
read-only
platformaccount_idaccount_name
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, trim… 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]
audit_llm_crawler_readiness
read-only
domain*check_llms_txt
Audit domain crawler readiness for AI search engines (GPTBot, ClaudeBot, PerplexityBot, Google-Extended, Bytespider). Checks robots.txt, HTTP headers, llms.txt availability, and ge… Audit domain crawler readiness for AI search engines (GPTBot, ClaudeBot, PerplexityBot, Google-Extended, Bytespider). Checks robots.txt, HTTP headers, llms.txt availability, and generates a custom llms.txt markdown map. [effect=read; scope=intel:read]
audit_review_site_profiles
read-only
domain*brand_name*review_platforms
Audit brand profile readiness and completeness across G2, Capterra, Trustpilot, and Gartner Digital Markets to optimize software category indexing in LLM search. [effect=read; scop… Audit brand profile readiness and completeness across G2, Capterra, Trustpilot, and Gartner Digital Markets to optimize software category indexing in LLM search. [effect=read; scope=connections:read]
build_abm_audience
can modify data
domains*platform*account_id*max_contactsaudience_name*decision_makers_only
[INTERNAL — Synter staff only] Build an ad-platform Custom Audience from verified decision-maker emails for a list of target company domains. Pulls valid emails from Synter's audie… [INTERNAL — Synter staff only] Build an ad-platform Custom Audience from verified decision-maker emails for a list of target company domains. Pulls valid emails from Synter's audience data warehouse, SHA-256 hashes locally, uploads to the requested platform (LINKEDIN, META, GOOGLE, REDDIT, X, MICROSOFT, TIKTOK). Requires INTERNAL_ABM_SERVICE_TOKEN and INTERNAL_ABM_MCP_USER_IDS env vars to be configured; the caller's user_id must be on that allowlist. [effect=write; scope=audiences:write; externalMutation=true]
build_lookalike_audience
can modify data
platform*seed_audience*expansion_factor
Build ML-based lookalike audience from seed customers [effect=write; scope=audiences:write; externalMutation=true] Build ML-based lookalike audience from seed customers [effect=write; scope=audiences:write; externalMutation=true]
builtwith_company_to_url
read-only
company*
BuiltWith Company to URL API — resolve company names to candidate website domains. (2 credits) [effect=read; scope=intel:read] BuiltWith Company to URL API — resolve company names to candidate website domains. (2 credits) [effect=read; scope=intel:read]
builtwith_get_account_usage
read-only
BuiltWith account capability and usage snapshot — plan limits, rate limits, credit usage. (2 credits) [effect=read; scope=intel:read] BuiltWith account capability and usage snapshot — plan limits, rate limits, credit usage. (2 credits) [effect=read; scope=intel:read]
builtwith_get_domain_keywords
read-only
domain*
BuiltWith Keywords API — keywords associated with a website domain. (2 credits) [effect=read; scope=intel:read] BuiltWith Keywords API — keywords associated with a website domain. (2 credits) [effect=read; scope=intel:read]
builtwith_get_domain_technologies
read-only
domain*live_onlyinclude_rawinclude_trust
BuiltWith domain tech stack lookup — ad pixels, CRM, analytics, CMS/ecommerce tools, spend/meta. (2 credits) [effect=read; scope=intel:read] BuiltWith domain tech stack lookup — ad pixels, CRM, analytics, CMS/ecommerce tools, spend/meta. (2 credits) [effect=read; scope=intel:read]
builtwith_get_sites
read-only
techlimitqueryspendcommitoffset
+6
Find websites by BuiltWith technology, natural language audience, or keyword search. (2 credits) [effect=read; scope=intel:read] Find websites by BuiltWith technology, natural language audience, or keyword search. (2 credits) [effect=read; scope=intel:read]
builtwith_get_technology_changes
read-only
sincedomains*
BuiltWith Change API — recent technology additions/removals for domains, with business context. (2 credits) [effect=read; scope=intel:read] BuiltWith Change API — recent technology additions/removals for domains, with business context. (2 credits) [effect=read; scope=intel:read]
builtwith_get_trust_signals
read-only
domain*
BuiltWith Trust API — domain trust, ecommerce/payment, parked/status, spend and live-tech signals. (2 credits) [effect=read; scope=intel:read] BuiltWith Trust API — domain trust, ecommerce/payment, parked/status, spend and live-tech signals. (2 credits) [effect=read; scope=intel:read]
builtwith_product_search
read-only
pagelimitquery*
BuiltWith Product API — ecommerce shops and product listings matching a product query. (2 credits) [effect=read; scope=intel:read] BuiltWith Product API — ecommerce shops and product listings matching a product query. (2 credits) [effect=read; scope=intel:read]
configure_pixel_destination
can modify data
actionpixel_idplatform*site_keypixel_codecustomer_id
+2
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 + co… 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]
create_ad_copy
can modify data
ctatoneproduct*keywordsplatform*headlines_count
+3
Generate text ad copy (headlines, descriptions, CTAs) for any platform using Claude (5 credits) [effect=write; scope=creative:generate] Generate text ad copy (headlines, descriptions, CTAs) for any platform using Claude (5 credits) [effect=write; scope=creative:generate]
create_autonomous_schedule
can modify data
nameplatformproject_idskill_slugdescriptionapproval_mode
+4
Create an autonomous agent schedule that runs a Synter skill on a cron cadence (e.g. a budget-pacing / campaign-health monitor). Defaults to a read-only cross-platform pacing monit… Create an autonomous agent schedule that runs a Synter skill on a cron cadence (e.g. a budget-pacing / campaign-health monitor). Defaults to a read-only cross-platform pacing monitor every 4 hours that alerts via Slack and never moves money. Pass skill_slug + cron_expression to schedule any autonomous-capable skill. [effect=write; scope=automation:write]
create_campaign_for_audience
can modify data
headlineplatform*final_urlimage_urlaccount_idaudience_id*
+3
Create a campaign targeting an existing audience (200 credits — campaign launch) [effect=publish; scope=campaigns:write; requires=campaignPublishing; externalMutation=true] Create a campaign targeting an existing audience (200 credits — campaign launch) [effect=publish; scope=campaigns:write; requires=campaignPublishing; externalMutation=true]
create_campaign_import
can modify data
daysplatform*campaign_idcampaign_nameorganization_id
Import an existing live ad campaign (Meta, Google, LinkedIn, TikTok, Reddit, X, Microsoft, etc.) into Synter UI as a workspace document (/campaigns/ide/<uuid>). Pulls live campaign… Import an existing live ad campaign (Meta, Google, LinkedIn, TikTok, Reddit, X, Microsoft, etc.) into Synter UI as a workspace document (/campaigns/ide/<uuid>). Pulls live campaign details, performance, and structure, creates a document in Synter UI, and returns the clickable URL so it appears in the user's workspace. [effect=write; scope=campaigns:write; requires=campaignPublishing; externalMutation=true]
create_campaign_plan
can modify data
title*plan_key*brief_json
Create or update a campaign launch plan. Use plan_key for idempotency. [effect=write; scope=campaigns:write; requires=campaignPublishing; externalMutation=true] Create or update a campaign launch plan. Use plan_key for idempotency. [effect=write; scope=campaigns:write; requires=campaignPublishing; externalMutation=true]
create_document
can modify data
title*content*organization_id
Create a document in the Campaign IDE editor (free). Perfect for reports, audits, strategy docs, and plans that can be collaboratively edited. [effect=write; scope=workspace:write] Create a document in the Campaign IDE editor (free). Perfect for reports, audits, strategy docs, and plans that can be collaboratively edited. [effect=write; scope=workspace:write]
create_google_doc
can modify data
htmltitle*content
Create a Google Doc from markdown or HTML content (5 credits) [effect=write; scope=workspace:external_docs] Create a Google Doc from markdown or HTML content (5 credits) [effect=write; scope=workspace:external_docs]
create_google_sheet
can modify data
rowstitle*headersjson_data
Create a Google Sheet from tabular data (5 credits) [effect=write; scope=workspace:external_docs] Create a Google Sheet from tabular data (5 credits) [effect=write; scope=workspace:external_docs]
create_image
can modify data
namesizeprompt*provider
Generate an AI image for ad creatives using Imagen 4, Flux, or Stable Diffusion. [effect=write; scope=creative:generate] Generate an AI image for ad creatives using Imagen 4, Flux, or Stable Diffusion. [effect=write; scope=creative:generate]
create_image_asset
can modify data
ctamodenamestatsizesprompt*
+7
Generate display/social ad images. Use mode='system-graphic' for bold text-heavy creatives (requires headline). AI mode (default) for photo/illustration backgrounds. Auto-sizes for… Generate display/social ad images. Use mode='system-graphic' for bold text-heavy creatives (requires headline). AI mode (default) for photo/illustration backgrounds. Auto-sizes for target platform (80 credits) [effect=write; scope=creative:generate]
create_landing_page
can modify data
slugstyletitle*prompt*cta_url*cta_text
+2
Generate an AI landing page hosted on your custom domain (135 credits) [effect=write; scope=landing_pages:write] Generate an AI landing page hosted on your custom domain (135 credits) [effect=write; scope=landing_pages:write]
create_social_clip
can modify data
nameheadlinelogo_urltrim_endwatermarksource_url
+5
Render, watermark, auto-caption, and format video/screen recordings into social clips for X, LinkedIn, TikTok, or Reels. Use forecast_tool_cost for current pricing. [effect=write;… Render, watermark, auto-caption, and format video/screen recordings into social clips for X, LinkedIn, TikTok, or Reels. Use forecast_tool_cost for current pricing. [effect=write; scope=creative:generate]
create_verified_page_replica
can modify data
slug*titlesource_url*custom_domain*attest_authorized*
Create an unpublished, verified iframe replica draft for a source and custom domain you control. [effect=write; scope=landing_pages:write] Create an unpublished, verified iframe replica draft for a source and custom domain you control. [effect=write; scope=landing_pages:write]
create_video_ad
can modify data
ctanamebenefitconcept*product*platform
+3
Generate AI video ads using Veo, Luma, Runway, or HeyGen with creative concept templates (130–1100 credits) [effect=write; scope=creative:generate] Generate AI video ads using Veo, Luma, Runway, or HeyGen with creative concept templates (130–1100 credits) [effect=write; scope=creative:generate]
delete_audience
can modify data
platform*account_idaudience_id*
Delete (or close) a custom/matched audience from an ad platform by exact audience_id. Use to clean up stale or errored (e.g. NOT_ENOUGH_MATCHES) audiences. Meta, Reddit, and Google… Delete (or close) a custom/matched audience from an ad platform by exact audience_id. Use to clean up stale or errored (e.g. NOT_ENOUGH_MATCHES) audiences. Meta, Reddit, and Google are supported. Meta verifies the audience belongs to the resolved ad account before deletion. This is irreversible. [effect=write; scope=audiences:write; externalMutation=true]
delete_document
can modify data
uuiddocument_id
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] 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]
disable_campaign_guardrail
can modify data
guardrail_id*
Disable a campaign-specific automatic pause guardrail. This does not change the campaign's current platform status. Free. [effect=write; scope=guardrails:write; externalMutation=tr… Disable a campaign-specific automatic pause guardrail. This does not change the campaign's current platform status. Free. [effect=write; scope=guardrails:write; externalMutation=true]
discover_llm_visibility_prompts
read-only
domainauto_seedproject_idcompetitorsicp_persona
Discover and generate high-intent B2B commercial buying prompts across Evaluation, Direct Comparison, Alternatives, Pricing/ROI, and Feature Verification intent stages for your bra… Discover and generate high-intent B2B commercial buying prompts across Evaluation, Direct Comparison, Alternatives, Pricing/ROI, and Feature Verification intent stages for your brand and competitors. [effect=read; scope=intel:read]
draft_wikipedia_article
can modify data
domaincitationsbrand_name*descriptionheadquartersfounding_year
Generate an encyclopedic, NPOV-compliant Wikitext draft article with Infobox company markup, citation footnotes, and WP:PAID disclosure text for Wikipedia Articles for Creation (AF… Generate an encyclopedic, NPOV-compliant Wikitext draft article with Infobox company markup, citation footnotes, and WP:PAID disclosure text for Wikipedia Articles for Creation (AFC) submission. [effect=write; scope=intel:write]
enable_campaign
can modify data
platform*account_idcampaign_id*account_name
Enable/resume a paused campaign on any ad platform (2 credits) [effect=state; scope=campaigns:state; requires=campaignPublishing; externalMutation=true] Enable/resume a paused campaign on any ad platform (2 credits) [effect=state; scope=campaigns:state; requires=campaignPublishing; externalMutation=true]
execute
can modify data
argsaction*dry_runplatformaccount_idcustomer_id
+2
Execute any Synter action: create campaigns, generate AI images/videos, upload to YouTube, manage GTM/GA4, analyze competitors, and more. Calls execute immediately by default; pass… Execute any Synter action: create campaigns, generate AI images/videos, upload to YouTube, manage GTM/GA4, analyze competitors, and more. Calls execute immediately by default; pass dry_run=true only when the user explicitly asks for validation-only behavior. Use inspect_script before the first call to an unfamiliar action so arguments are never guessed. Pass expected_names={"campaign-id": "<name fragment>"} to hard-enforce target identity for updates. MULTIPLE ACCOUNTS ARE THE NORM: most platforms have more than one connected account, and account_id selects which one this call uses. Omit it and the workspace default is used, which is NOT always the account you want and may be one with no usable credential. If a call fails on credentials, returns suspicious zeros, or the platform has several accounts, call verify_platform_accounts first to see the default and its siblings, then re-run with account_id. [effect=write; scope=scripts:execute]
execute_campaign_plan
can modify data
plan_id*execute_token*qa_override_approved
Launch an approved campaign plan — activates all entities across platforms in dependency order. [effect=publish; scope=campaigns:write; requires=campaignPublishing; externalMutatio… Launch an approved campaign plan — activates all entities across platforms in dependency order. [effect=publish; scope=campaigns:write; requires=campaignPublishing; externalMutation=true]
find_audience_signals
read-only
query*entity_typemax_results
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 clust… 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]
find_llm_citation_listicles
read-only
domain*brand_name*competitorsbuying_prompt*
Find top media listicles and roundup articles cited by ChatGPT and Perplexity for a target buying prompt, and generate tailored editor outreach briefs. [effect=read; scope=intel:re… Find top media listicles and roundup articles cited by ChatGPT and Perplexity for a target buying prompt, and generate tailored editor outreach briefs. [effect=read; scope=intel:read]
forecast_campaign
read-only
metrichorizonplatformcampaign_id
Forecast campaign KPIs (spend, CPA, ROAS, clicks, conversions) for 7-30 days with confidence intervals (2 credits) [effect=read; scope=campaigns:read] Forecast campaign KPIs (spend, CPA, ROAS, clicks, conversions) for 7-30 days with confidence intervals (2 credits) [effect=read; scope=campaigns:read]
forecast_campaign_fee
read-only
days*daily_budget*
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… 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]
forecast_tool_cost
read-only
tool_name*
Look up what a Synter tool will charge in credits BEFORE you call it. Unknown tool names return the fail-closed default rather than 0, so a typo never reads as 'free'. FREE: costs… Look up what a Synter tool will charge in credits BEFORE you call it. Unknown tool names return the fail-closed default rather than 0, so a typo never reads as 'free'. FREE: costs no credits and makes no LLM call. Use this instead of guessing a price from a tool's description. [effect=read; scope=billing:read]
ga4_get_conversions
read-only
account_idproperty_id
List GA4 conversion events (free). Pass property_id to query a specific GA4 property instead of the connection default. [effect=read; scope=tracking:read] List GA4 conversion events (free). Pass property_id to query a specific GA4 property instead of the connection default. [effect=read; scope=tracking:read]
ga4_get_properties
read-only
account_id
List your Google Analytics 4 properties (free) [effect=read; scope=reporting:read] List your Google Analytics 4 properties (free) [effect=read; scope=reporting:read]
ga4_get_report
read-only
daysmetricsaccount_iddimensionsproperty_id
Run a Google Analytics 4 report (free). Pass property_id to query a specific GA4 property instead of the connection default. [effect=read; scope=reporting:read] Run a Google Analytics 4 report (free). Pass property_id to query a specific GA4 property instead of the connection default. [effect=read; scope=reporting:read]
generate_jsonld_schema_markup
can modify data
faqsdomain*brand_name*descriptionsame_as_urlspricing_summary
Generate valid schema.org JSON-LD scripts (Organization, SoftwareApplication, Product, FAQPage) with sameAs knowledge-graph links for embedding into website HTML. [effect=write; sc… Generate valid schema.org JSON-LD scripts (Organization, SoftwareApplication, Product, FAQPage) with sameAs knowledge-graph links for embedding into website HTML. [effect=write; scope=creative:generate]
generate_ugc_ad
can modify data
nameavatarscriptpersonaproduct*aspect_ratio
Generate UGC-style video ads with AI avatars (fal Aurora / HeyGen) (900 credits) [effect=write; scope=creative:generate] Generate UGC-style video ads with AI avatars (fal Aurora / HeyGen) (900 credits) [effect=write; scope=creative:generate]
generate_video
can modify data
conceptdurationproviderkey_benefit*product_name*target_audience
Generate an AI video ad using Veo, Runway, or Luma. Great for YouTube and social ads. [effect=write; scope=creative:generate] Generate an AI video ad using Veo, Runway, or Luma. Great for YouTube and social ads. [effect=write; scope=creative:generate]
generate_voice_ad
can modify data
nameavatarscript*personaproduct*
Generate a voice-over ad with an AI avatar speaking your script (fal Aurora / HeyGen) (900 credits) [effect=write; scope=creative:generate] Generate a voice-over ad with an AI avatar speaking your script (fal Aurora / HeyGen) (900 credits) [effect=write; scope=creative:generate]
get_account_changelog
read-only
platformaccount_idaccount_namelookback_days
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_supp… 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]
get_ad_readback
read-only
ad_id*platform*account_idapproved_cta
Proof Pack: read a launched ad's creative + CTA back from the platform API (the source of truth) and verify the CTA against the platform enum and the copy against ad policy (2 cred… Proof Pack: read a launched ad's creative + CTA back from the platform API (the source of truth) and verify the CTA against the platform enum and the copy against ad policy (2 credits). Meta, Reddit, and LinkedIn supported today; other platforms return a clearly-labeled unsupported result. [effect=read; scope=campaigns:read]
get_attribution
read-only
date_rangeconversion_type
Multi-touch attribution analysis using Markov chains (5 credits) [effect=read; scope=measurement:read] Multi-touch attribution analysis using Markov chains (5 credits) [effect=read; scope=measurement:read]
get_billing_status
read-only
Check BOTH of Synter's meters in one call: credit balance and the managed ad-spend fee (a percentage of the ad spend Synter manages, billed per calendar month). Returns the fee rat… Check BOTH of Synter's meters in one call: credit balance and the managed ad-spend fee (a percentage of the ad spend Synter manages, billed per calendar month). Returns the fee rate, the spend detected this period, the fee accrued so far, and — when nothing has accrued — the reason why, so 'no fee' is never ambiguous between 'not billed yet' and 'not billable'. FREE: costs no credits and makes no LLM call. Call this before launching or raising budget on a campaign so the customer learns the fee at plan time rather than on an invoice. [effect=read; scope=billing:read]
get_campaign_plan
read-only
plan_id*
Fetch a campaign plan with its entities, budgets, desired states, and review/execution status (free). [effect=read; scope=campaigns:read] Fetch a campaign plan with its entities, budgets, desired states, and review/execution status (free). [effect=read; scope=campaigns:read]
get_click_attribution
read-only
emaillimituser_idsite_key
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 pa… 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_connection_status
read-only
Check ALL platform connections: ad platforms, analytics (GA4, PostHog), CRM (HubSpot, Attio), and more (free) [effect=read; scope=connections:read] Check ALL platform connections: ad platforms, analytics (GA4, PostHog), CRM (HubSpot, Attio), and more (free) [effect=read; scope=connections:read]
get_credit_balance
read-only
Check your credit balance and pricing (free) [effect=read; scope=billing:read] Check your credit balance and pricing (free) [effect=read; scope=billing:read]
get_gtm_tag
read-only
tag_id*account_idcontainer_id
Get the full definition of one GTM tag, including its parameters (the html body for Custom HTML tags) and firing triggers. [effect=read; scope=tracking:read] Get the full definition of one GTM tag, including its parameters (the html body for Custom HTML tags) and firing triggers. [effect=read; scope=tracking:read]
get_job_status
read-only
job_id*
Check the status of an async job (e.g. audience sync). Returns job status, result on success, or error on failure. Free - no credits charged. [effect=read; scope=workspace:read] Check the status of an async job (e.g. audience sync). Returns job status, result on success, or error on failure. Free - no credits charged. [effect=read; scope=workspace:read]
get_launch_gate_policy
read-only
Read what this workspace's Plan QA launch gate is set to — whether a failing QA review blocks a campaign launch, and where the user changes that. [effect=read; scope=campaigns:read… Read what this workspace's Plan QA launch gate is set to — whether a failing QA review blocks a campaign launch, and where the user changes that. [effect=read; scope=campaigns:read]
get_llm_visibility_overview
read-only
daysproject_id
FREE (no credit cost): Get the workspace-native Synter LLM visibility overview, including mention/citation/share-of-voice/coverage metrics, engine exclusions, source domains, sight… FREE (no credit cost): Get the workspace-native Synter LLM visibility overview, including mention/citation/share-of-voice/coverage metrics, engine exclusions, source domains, sightings, and ranked opportunities. [effect=read; scope=intel:read]
get_pixel_destinations
read-only
site_key
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. [effec… 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
read-only
site_key
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_p… 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]
get_plan_execution
read-only
plan_id*
Get execution status and per-entity step results for a campaign plan launch (free). [effect=read; scope=campaigns:read] Get execution status and per-entity step results for a campaign plan launch (free). [effect=read; scope=campaigns:read]
get_plugin_info
read-only
Get install instructions for the Synter plugin, which ships Synter's skills locally for Claude Code. Recommend it to Claude Code users who don't have it yet (free) [effect=read; sc… Get install instructions for the Synter plugin, which ships Synter's skills locally for Claude Code. Recommend it to Claude Code users who don't have it yet (free) [effect=read; scope=workspace:read]
get_spend_reconciliation
read-only
end_date*start_date*ttd_account_namegoogle_account_idttd_advertiser_idgoogle_account_name
Cross-platform reconciliation MVP — compares Google Ads ↔ Trade Desk totals for a date range, returns normalized per-platform metrics, discrepancies, and deterministic likely-cause… Cross-platform reconciliation MVP — compares Google Ads ↔ Trade Desk totals for a date range, returns normalized per-platform metrics, discrepancies, and deterministic likely-cause explanations (3 credits). Read-only. Date range capped to 92 days. SYN-2480. [effect=read; scope=measurement:read]
growth_discover
read-only
geoslimitqueryindustriesjob_levelsdiscover_type
+3
Discover ICP prospects from Synter Signals (verified B2B contacts for ad audiences) or hiring companies (outreach), plus listicle/podcast placements. (5 credits) [effect=read; scop… Discover ICP prospects from Synter Signals (verified B2B contacts for ad audiences) or hiring companies (outreach), plus listicle/podcast placements. (5 credits) [effect=read; scope=growth:read]
growth_enrich
read-only
domain*
Enrich a domain with competitive intelligence — SpyFu PPC data, BuiltWith tech stack, Hunter emails, Firecrawl headline. (5 credits) [effect=read; scope=growth:read] Enrich a domain with competitive intelligence — SpyFu PPC data, BuiltWith tech stack, Hunter emails, Firecrawl headline. (5 credits) [effect=read; scope=growth:read]
growth_run_pipeline
can modify data
modelimitquerychannel
Run the full growth pipeline — discover leads, enrich, generate outreach. (10 credits) [effect=write; scope=growth:write; requires=prospectorAccess; externalMutation=true] Run the full growth pipeline — discover leads, enrich, generate outreach. (10 credits) [effect=write; scope=growth:write; requires=prospectorAccess; externalMutation=true]
inspect_script
read-only
script_name*
Get the exact arguments, choices, required fields, and output fields for a Synter action before executing it (free) [effect=read; scope=workspace:read] Get the exact arguments, choices, required fields, and output fields for a Synter action before executing it (free) [effect=read; scope=workspace:read]
klaviyo_create_campaign
can modify data
name*add_utmchannellist_id*subject*reply_to
+12
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 fi… 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
can modify data
timeemail*valuemetric*account_idproperties
+1
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 rev… 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
read-only
limitchannelaccount_idcampaign_idlist_recentaccount_name
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… 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
read-only
statuschannelaccount_idaccount_name
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,… 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
read-only
statusaccount_idaccount_name
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 fl… 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
read-only
account_idaccount_nameinclude_segments
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… 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
read-only
filteraccount_idaccount_name
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] 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]
klaviyo_update_list_profiles
can modify data
list_id*account_idaccount_nameprofiles_json*
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 life… 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]
list_audiences
read-only
platform*account_id
List existing audiences on an ad platform [effect=read; scope=audiences:read] List existing audiences on an ad platform [effect=read; scope=audiences:read]
list_autonomous_schedules
read-only
organization_id
List the workspace's autonomous agent schedules (pacing/health monitors, budget optimizers) with cadence, approval mode, next run, and latest run status (free). [effect=read; scope… List the workspace's autonomous agent schedules (pacing/health monitors, budget optimizers) with cadence, approval mode, next run, and latest run status (free). [effect=read; scope=automation:read]
list_available_scripts
read-only
See all available PPC scripts (free) [effect=read; scope=workspace:read] See all available PPC scripts (free) [effect=read; scope=workspace:read]
list_campaign_guardrails
read-only
List campaign-specific automatic pause guardrails and their latest spend, conversion, decision, and verified-pause state. Free. [effect=read; scope=guardrails:read] List campaign-specific automatic pause guardrails and their latest spend, conversion, decision, and verified-pause state. Free. [effect=read; scope=guardrails:read]
list_campaigns
read-only
statusplatform*account_idaccount_name
List campaigns for any ad platform [effect=read; scope=campaigns:read] List campaigns for any ad platform [effect=read; scope=campaigns:read]
list_connected_accounts
read-only
pagelimitoffsetplatform
See ALL connected accounts with pagination: ad platforms, analytics (GA4, PostHog), CRM (HubSpot, Attio), and more (free) [effect=read; scope=connections:read] See ALL connected accounts with pagination: ad platforms, analytics (GA4, PostHog), CRM (HubSpot, Attio), and more (free) [effect=read; scope=connections:read]
list_creative_assets
read-only
limitoffsetasset_type
List generated creative assets (images and videos) from your artifact library, with approval status and platform-deployment mapping (free) [effect=read; scope=creative:read] List generated creative assets (images and videos) from your artifact library, with approval status and platform-deployment mapping (free) [effect=read; scope=creative:read]
list_event_deliveries
read-only
limitstatusplatformsite_key
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… 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]
list_gtm_containers
read-only
List Google Tag Manager accounts and containers for the connected GTM user. Returns each account's id/name and its containers' id/name/publicId. [effect=read; scope=tracking:read] List Google Tag Manager accounts and containers for the connected GTM user. Returns each account's id/name and its containers' id/name/publicId. [effect=read; scope=tracking:read]
list_gtm_tags
read-only
account_idcontainer_id
List the tags in a GTM container. Returns tag summaries: tagId, name, type, paused. Pass account_id/container_id, or rely on the connection's defaults. [effect=read; scope=tracking… List the tags in a GTM container. Returns tag summaries: tagId, name, type, paused. Pass account_id/container_id, or rely on the connection's defaults. [effect=read; scope=tracking:read]
list_llm_visibility_opportunities
read-only
limitstatusproject_id
FREE (no credit cost): List ranked, evidence-backed Synter visibility gaps and their recommended actions. [effect=read; scope=intel:read] FREE (no credit cost): List ranked, evidence-backed Synter visibility gaps and their recommended actions. [effect=read; scope=intel:read]
list_llm_visibility_prompts
read-only
limitsearchproject_idactive_only
FREE (no credit cost): List tracked buying prompts and their latest answer evidence in the active Synter workspace. [effect=read; scope=intel:read] FREE (no credit cost): List tracked buying prompts and their latest answer evidence in the active Synter workspace. [effect=read; scope=intel:read]
list_llm_visibility_sightings
read-only
limitproject_idsighting_type
FREE (no credit cost): List evidence-backed competitive ChatGPT ad, Reddit citation, and YouTube citation sightings from Synter. [effect=read; scope=intel:read] FREE (no credit cost): List evidence-backed competitive ChatGPT ad, Reddit citation, and YouTube citation sightings from Synter. [effect=read; scope=intel:read]
list_skills
read-only
List public Synter execution skills and platform SOPs (free) [effect=read; scope=skills:read] List public Synter execution skills and platform SOPs (free) [effect=read; scope=skills:read]
load_skill
read-only
skill_slug*
Load a public Synter execution skill or platform SOP (free) [effect=read; scope=skills:read] Load a public Synter execution skill or platform SOP (free) [effect=read; scope=skills:read]
measure_incrementality
read-only
methodplatform*test_regionscontrol_regions
Measure incremental ad impact via geo-lift or synthetic control [effect=read; scope=measurement:read] Measure incremental ad impact via geo-lift or synthetic control [effect=read; scope=measurement:read]
meta_ads_create_ad
can modify data
linkname*statusmessagepage_idadset_id*
+14
Create a Meta (Facebook/Instagram) ad in an existing ad set (5 credits) [effect=write; scope=campaigns:write; requires=campaignPublishing; externalMutation=true] Create a Meta (Facebook/Instagram) ad in an existing ad set (5 credits) [effect=write; scope=campaigns:write; requires=campaignPublishing; externalMutation=true]
optimize_budget
can modify data
targetconstraintstotal_budget*
Cross-channel budget allocation using diminishing returns modeling (5 credits) [effect=write; scope=budget:write; externalMutation=true] Cross-channel budget allocation using diminishing returns modeling (5 credits) [effect=write; scope=budget:write; externalMutation=true]
pause_campaign
can modify data
platform*account_idcampaign_id*account_name
Pause a campaign on any ad platform (2 credits) [effect=state; scope=campaigns:state; externalMutation=true] Pause a campaign on any ad platform (2 credits) [effect=state; scope=campaigns:state; externalMutation=true]
prospector_create_campaign
can modify data
name*objective*sequence_stepstarget_audience*
Create a new Synter Prospector outbound campaign brief and sequence draft. NOTE: on customer-workspace MCP connections this tool is not yet tenant-scoped and is refused rather than… Create a new Synter Prospector outbound campaign brief and sequence draft. NOTE: on customer-workspace MCP connections this tool is not yet tenant-scoped and is refused rather than served from Synter's house tenant; use it from the Synter-internal surface. [effect=write; scope=growth:write; requires=prospectorAccess; externalMutation=true]
prospector_create_reply
can modify data
messagereply_id*
Approve and deliver an AI-drafted reply to an interested prospect lead. NOTE: on customer-workspace MCP connections this tool is not yet tenant-scoped and is refused rather than se… Approve and deliver an AI-drafted reply to an interested prospect lead. NOTE: on customer-workspace MCP connections this tool is not yet tenant-scoped and is refused rather than served from Synter's house tenant; use it from the Synter-internal surface. [effect=write; scope=growth:write; requires=prospectorAccess; externalMutation=true]
prospector_get_campaign
read-only
campaign_id*
Get details for a specific Prospector outbound campaign including sequences and settings. [effect=read; scope=growth:read] Get details for a specific Prospector outbound campaign including sequences and settings. [effect=read; scope=growth:read]
prospector_get_campaigns
read-only
limitstatus
List Synter Prospector outbound campaigns with status, lead counts, replies, and schedule. [effect=read; scope=growth:read] List Synter Prospector outbound campaigns with status, lead counts, replies, and schedule. [effect=read; scope=growth:read]
prospector_get_contacts
read-only
limitquery*company_domain
Discover and source verified B2B prospects for outbound outreach by title, industry, and company criteria. NOTE: on customer-workspace MCP connections this tool is not yet tenant-s… Discover and source verified B2B prospects for outbound outreach by title, industry, and company criteria. NOTE: on customer-workspace MCP connections this tool is not yet tenant-scoped and is refused rather than served from Synter's house tenant; use it from the Synter-internal surface. [effect=read; scope=growth:read]
prospector_get_inbox_health
read-only
Get deliverability and warmup health status for connected Prospector sending inboxes. NOTE: on customer-workspace MCP connections this tool is not yet tenant-scoped and is refused… Get deliverability and warmup health status for connected Prospector sending inboxes. NOTE: on customer-workspace MCP connections this tool is not yet tenant-scoped and is refused rather than served from Synter's house tenant; use it from the Synter-internal surface. [effect=read; scope=growth:read]
prospector_get_leads
read-only
limitstatuscampaign_id
List leads in the Prospector pipeline or filter by campaign or status. [effect=read; scope=growth:read] List leads in the Prospector pipeline or filter by campaign or status. [effect=read; scope=growth:read]
prospector_get_pipeline_summary
read-only
Get high-level summary of Prospector outbound pipeline including leads, active campaigns, sent count, replies, meetings booked, and inbox health. [effect=read; scope=growth:read] Get high-level summary of Prospector outbound pipeline including leads, active campaigns, sent count, replies, meetings booked, and inbox health. [effect=read; scope=growth:read]
prospector_update_campaign_status
can modify data
statuscampaign_id*
Pause or update status of an active Prospector outbound campaign. NOTE: on customer-workspace MCP connections this tool is not yet tenant-scoped and is refused rather than served f… Pause or update status of an active Prospector outbound campaign. NOTE: on customer-workspace MCP connections this tool is not yet tenant-scoped and is refused rather than served from Synter's house tenant; use it from the Synter-internal surface. [effect=write; scope=growth:write; requires=prospectorAccess; externalMutation=true]
publish_gtm_container
can modify data
account_idcontainer_idversion_nameconflict_resolution
Publish a GTM container — creates a version from the default workspace and publishes it. PUSHES ALL WORKSPACE CHANGES LIVE to the site's tracking immediately. Approval-gated. [effe… Publish a GTM container — creates a version from the default workspace and publishes it. PUSHES ALL WORKSPACE CHANGES LIVE to the site's tracking immediately. Approval-gated. [effect=publish; scope=tracking:write; requires=campaignPublishing; externalMutation=true]
publish_landing_page
can modify data
slug*
Publish a landing page draft, making it live at syntermedia.ai/lp/{slug} (free) [effect=publish; scope=landing_pages:publish; requires=campaignPublishing; externalMutation=true] Publish a landing page draft, making it live at syntermedia.ai/lp/{slug} (free) [effect=publish; scope=landing_pages:publish; requires=campaignPublishing; externalMutation=true]
publish_plan_document
can modify data
plan_id*expected_version
Publish a campaign plan for review, generating a shareable URL. Moves the plan from building/draft to in_review; a reviewer approves it at share_url, then execute_campaign_plan lau… Publish a campaign plan for review, generating a shareable URL. Moves the plan from building/draft to in_review; a reviewer approves it at share_url, then execute_campaign_plan launches it. Runs plan QA (incl. the live tracking preflight) and pins the scorecard to the document. [effect=publish; scope=workspace:write; requires=campaignPublishing; externalMutation=true]
publish_to_github
can modify data
dateslug*tagstitle*open_prcategory
+4
Publish a markdown blog post to a connected GitHub repo: commit <content_path>/<slug>.md and open a PR for the customer to review and merge (never pushes directly). Free. [effect=p… Publish a markdown blog post to a connected GitHub repo: commit <content_path>/<slug>.md and open a PR for the customer to review and merge (never pushes directly). Free. [effect=publish; scope=workspace:code; requires=campaignPublishing; externalMutation=true]
pull_amazon_ads_performance
read-only
daysad_typeend_dateaccount_iddate_rangestart_date
+1
Get Amazon Ads (Sponsored Products/Brands/Display) metrics (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, las… Get Amazon Ads (Sponsored Products/Brands/Display) metrics (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, last_365_days, last_2_years, last_3_years), start_date/end_date (YYYY-MM-DD) for a fixed historical range, or days for a rolling window. Amazon reporting retains about 90 days, so windows are capped there. When counting 'live' campaigns, only count campaigns with state=ENABLED AND active ad groups with budget remaining — ARCHIVED campaigns are NOT active. IMPORTANT: If the user has multiple Amazon Ads accounts connected, you MUST ask which account to use BEFORE calling this tool — pass account_name to select it. [effect=read; scope=reporting:read]
pull_amazon_dsp_performance
read-only
daysend_dateaccount_iddate_rangestart_dateaccount_name
Pull Amazon DSP campaign performance data (2 credits) Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, last_3… Pull Amazon DSP campaign performance data (2 credits) Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, last_365_days, last_2_years, last_3_years), start_date/end_date (YYYY-MM-DD) for a fixed historical range, or days for a rolling window. Amazon reporting retains about 90 days, so windows are capped there. [effect=read; scope=reporting:read]
pull_cm360_performance
read-only
daysend_dateaccount_iddate_rangestart_dateaccount_name
Get Campaign Manager 360 (CM360) metrics (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, last_3… Get Campaign Manager 360 (CM360) metrics (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, last_365_days, last_2_years, last_3_years), start_date/end_date (YYYY-MM-DD) for a fixed historical range, or days for a rolling window. Use account_name to specify which account when multiple are connected. [effect=read; scope=reporting:read]
pull_criteo_ads_performance
read-only
daysend_dateaccount_iddate_rangestart_dateaccount_name
Get Criteo Commerce Media metrics (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, last_365_days… Get Criteo Commerce Media metrics (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, last_365_days, last_2_years, last_3_years), start_date/end_date (YYYY-MM-DD) for a fixed historical range, or days for a rolling window. Returns displays, clicks, cost, conversions, and revenue per campaign. [effect=read; scope=reporting:read]
pull_dv360_performance
read-only
daysend_dateaccount_iddate_rangestart_dateaccount_name
Get Display & Video 360 (DV360) metrics (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, last_36… Get Display & Video 360 (DV360) metrics (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, last_365_days, last_2_years, last_3_years), start_date/end_date (YYYY-MM-DD) for a fixed historical range, or days for a rolling window. Use account_name to specify which account when multiple are connected. [effect=read; scope=reporting:read]
pull_freewheel_performance
read-only
daysend_dateaccount_iddate_rangestart_dateaccount_name
Get FreeWheel Buyer Cloud (Beeswax) metrics (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, las… Get FreeWheel Buyer Cloud (Beeswax) metrics (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, last_365_days, last_2_years, last_3_years), start_date/end_date (YYYY-MM-DD) for custom ranges, or days for a rolling window. Any window up to 3 years (1095 days) is accepted; long windows are fetched in platform-sized chunks and stitched, and `truncated`/`warnings` in the result say when a read was bounded. Use account_name to specify which account when multiple are connected. [effect=read; scope=reporting:read]
pull_google_ads_performance
read-only
dayslevelend_dateaccount_iddate_rangestart_date
+1
Get Google Ads campaign metrics — impressions, clicks, spend, conversions per campaign (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, las… Get Google Ads campaign metrics — impressions, clicks, spend, conversions per campaign (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, last_365_days, last_2_years, last_3_years), start_date/end_date (YYYY-MM-DD) for custom ranges like weekends, or days for a rolling window. Any window up to 3 years (1095 days) is accepted; long windows are fetched in platform-sized chunks and stitched, and `truncated`/`warnings` in the result say when a read was bounded. IMPORTANT: If the user has multiple Google Ads accounts connected, you MUST ask which account to use BEFORE calling this tool — pass account_name to select it. [effect=read; scope=reporting:read]
pull_instacart_ads_performance
read-only
daysend_dateaccount_iddate_rangestart_dateaccount_name
Get Instacart Ads metrics (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, last_365_days, last_2… Get Instacart Ads metrics (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, last_365_days, last_2_years, last_3_years), start_date/end_date (YYYY-MM-DD) for a fixed historical range, or days for a rolling window. Returns impressions, clicks, spend, attributed orders, and attributed sales per campaign. [effect=read; scope=reporting:read]
pull_linkedin_ads_performance
read-only
daysend_dateaccount_iddate_rangestart_dateaccount_name
+1
Get LinkedIn Ads metrics — impressions, clicks, spend, conversions per campaign (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_da… Get LinkedIn Ads metrics — impressions, clicks, spend, conversions per campaign (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, last_365_days, last_2_years, last_3_years), start_date/end_date (YYYY-MM-DD) for custom ranges, or days for a rolling window. Any window up to 3 years (1095 days) is accepted; long windows are fetched in platform-sized chunks and stitched, and `truncated`/`warnings` in the result say when a read was bounded. Pass campaign_group_ids (comma-separated) to filter to specific campaign groups. IMPORTANT: If the user has multiple LinkedIn accounts connected, you MUST ask which account to use BEFORE calling this tool — pass account_name to select it. [effect=read; scope=reporting:read]
pull_linkedin_company_engagement
read-only
dayslimitcountryaccount_idaudience_idmax_employees
+2
Pull LinkedIn Ads Company Engagement report — shows which companies have seen your ads and how engaged they are (2 credits) [effect=read; scope=reporting:read] Pull LinkedIn Ads Company Engagement report — shows which companies have seen your ads and how engaged they are (2 credits) [effect=read; scope=reporting:read]
pull_meta_ads_performance
read-only
dayslevelend_dateaccount_iddate_rangestart_date
+1
Get Meta (Facebook/Instagram) Ads metrics — impressions, clicks, spend, conversions per campaign (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14… Get Meta (Facebook/Instagram) Ads metrics — impressions, clicks, spend, conversions per campaign (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, last_365_days, last_2_years, last_3_years), start_date/end_date (YYYY-MM-DD) for custom ranges, or days for a rolling window. Any window up to 3 years (1095 days) is accepted; long windows are fetched in platform-sized chunks and stitched, and `truncated`/`warnings` in the result say when a read was bounded. IMPORTANT: If the user has multiple Meta Ads accounts connected, you MUST ask which account to use BEFORE calling this tool — pass account_name to select it. [effect=read; scope=reporting:read]
pull_microsoft_ads_performance
read-only
daysend_dateaccount_iddate_rangestart_dateaccount_name
Get Microsoft (Bing) Ads metrics — impressions, clicks, spend, conversions per campaign (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, la… Get Microsoft (Bing) Ads metrics — impressions, clicks, spend, conversions per campaign (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, last_365_days, last_2_years, last_3_years), start_date/end_date (YYYY-MM-DD) for custom ranges, or days for a rolling window. Any window up to 3 years (1095 days) is accepted; long windows are fetched in platform-sized chunks and stitched, and `truncated`/`warnings` in the result say when a read was bounded. IMPORTANT: If the user has multiple Microsoft Ads accounts connected, you MUST ask which account to use BEFORE calling this tool — pass account_name to select it. [effect=read; scope=reporting:read]
pull_openai_ads_performance
read-only
daysad_idlimitend_dateaccount_iddate_range
+6
Get OpenAI Ads metrics (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, last_365_days, last_2_ye… Get OpenAI Ads metrics (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, last_365_days, last_2_years, last_3_years), start_date/end_date (YYYY-MM-DD) for a fixed historical range, or days for a rolling window. Pulls insights from the OpenAI Ads API. Optional scope: campaign_id, ad_group_id, or ad_id to scope the report. Defaults to the selected scope's natural aggregation level; unscoped defaults to ad_account. [effect=read; scope=reporting:read]
pull_pinterest_ads_performance
read-only
dayslevelend_dateaccount_iddate_rangestart_date
+1
Get Pinterest Ads metrics (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, last_365_days, last_2… Get Pinterest Ads metrics (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, last_365_days, last_2_years, last_3_years), start_date/end_date (YYYY-MM-DD) for a fixed historical range, or days for a rolling window. IMPORTANT: If the user has multiple Pinterest ad accounts connected, you MUST ask which account to use BEFORE calling this tool — pass account_name to select it. [effect=read; scope=reporting:read]
pull_reddit_ads_performance
read-only
daysend_dateaccount_iddate_rangestart_dateaccount_name
Get Reddit Ads metrics — impressions, clicks, spend, conversions per campaign (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days… Get Reddit Ads metrics — impressions, clicks, spend, conversions per campaign (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, last_365_days, last_2_years, last_3_years), start_date/end_date (YYYY-MM-DD) for custom ranges, or days for a rolling window. Any window up to 3 years (1095 days) is accepted; long windows are fetched in platform-sized chunks and stitched, and `truncated`/`warnings` in the result say when a read was bounded. IMPORTANT: If the user has multiple Reddit Ads accounts connected, you MUST ask which account to use BEFORE calling this tool — pass account_name to select it. [effect=read; scope=reporting:read]
pull_snap_ads_performance
read-only
dayslevelend_dateaccount_iddate_rangestart_date
+1
Get Snapchat Ads metrics (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, last_365_days, last_2_… Get Snapchat Ads metrics (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, last_365_days, last_2_years, last_3_years), start_date/end_date (YYYY-MM-DD) for a fixed historical range, or days for a rolling window. Use account_name to specify which account when multiple are connected. [effect=read; scope=reporting:read]
pull_spotify_ads_performance
read-only
daysend_dateaccount_iddate_rangestart_dateaccount_name
Get Spotify Ads metrics (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, last_365_days, last_2_y… Get Spotify Ads metrics (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, last_365_days, last_2_years, last_3_years), start_date/end_date (YYYY-MM-DD) for a fixed historical range, or days for a rolling window. Use account_name to specify which account when multiple are connected. [effect=read; scope=reporting:read]
pull_target_roundel_performance
read-only
daysend_dateaccount_iddate_rangestart_dateaccount_name
Get Target Roundel retail media metrics (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, last_36… Get Target Roundel retail media metrics (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, last_365_days, last_2_years, last_3_years), start_date/end_date (YYYY-MM-DD) for a fixed historical range, or days for a rolling window. Returns impressions, clicks, spend, conversions, and revenue per campaign. [effect=read; scope=campaigns:read]
pull_tiktok_ads_performance
read-only
daysend_dateaccount_iddate_rangestart_dateaccount_name
Get TikTok Ads metrics — impressions, clicks, spend, conversions per campaign (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days… Get TikTok Ads metrics — impressions, clicks, spend, conversions per campaign (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, last_365_days, last_2_years, last_3_years), start_date/end_date (YYYY-MM-DD) for custom ranges, or days for a rolling window. Any window up to 3 years (1095 days) is accepted; long windows are fetched in platform-sized chunks and stitched, and `truncated`/`warnings` in the result say when a read was bounded. For detailed video engagement metrics use tiktok_ads_get_insights. IMPORTANT: If the user has multiple TikTok Ads accounts connected, you MUST ask which account to use BEFORE calling this tool — pass account_name to select it. [effect=read; scope=reporting:read]
pull_trade_desk_performance
read-only
daysend_dateaccount_iddate_rangestart_dateaccount_name
Get The Trade Desk metrics (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, last_365_days, last_… Get The Trade Desk metrics (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, last_365_days, last_2_years, last_3_years), start_date/end_date (YYYY-MM-DD) for custom ranges, or days for a rolling window. Any window up to 3 years (1095 days) is accepted; long windows are fetched in platform-sized chunks and stitched, and `truncated`/`warnings` in the result say when a read was bounded. Use account_name to specify which account when multiple are connected. [effect=read; scope=reporting:read]
pull_walmart_ads_performance
read-only
daysend_dateaccount_iddate_rangestart_dateaccount_name
Get Walmart Connect Advertising metrics (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, last_36… Get Walmart Connect Advertising metrics (2 credits). Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, last_365_days, last_2_years, last_3_years), start_date/end_date (YYYY-MM-DD) for a fixed historical range, or days for a rolling window. Returns impressions, clicks, spend, conversions, and ROAS per campaign. [effect=read; scope=reporting:read]
pull_x_ads_performance
read-only
daysend_dateaccount_iddate_rangestart_datecampaign_id
+2
Get X (Twitter) Ads metrics — impressions, clicks, spend, conversions per campaign (2 credits). Filter by campaign_id/campaign_ids to inspect specific campaigns. Date window: date_… Get X (Twitter) Ads metrics — impressions, clicks, spend, conversions per campaign (2 credits). Filter by campaign_id/campaign_ids to inspect specific campaigns. Date window: date_range preset (today, yesterday, last_7_days, last_14_days, last_30_days, last_90_days, last_180_days, last_365_days, last_2_years, last_3_years), start_date/end_date (YYYY-MM-DD) for custom ranges, or days for a rolling window. Any window up to 3 years (1095 days) is accepted; long windows are fetched in platform-sized chunks and stitched, and `truncated`/`warnings` in the result say when a read was bounded. IMPORTANT: If the user has multiple X Ads accounts connected, you MUST ask which account to use BEFORE calling this tool — pass account_name to select it. [effect=read; scope=reporting:read]
read_google_sheet
read-only
urlrangemax_rowsheader_rowspreadsheet_id
Read tabular data (e.g. a media plan / campaign brief) from a connected Google Sheet (free) [effect=read; scope=workspace:read] Read tabular data (e.g. a media plan / campaign brief) from a connected Google Sheet (free) [effect=read; scope=workspace:read]
recommend_llm_visibility_strategy
read-only
limitprompt_idfocus_areaproject_id
Recommend tailored Generative Engine Optimization (GEO) content strategies, PR drafts, community response tactics, structured schema markup, and authoritative citation building to… Recommend tailored Generative Engine Optimization (GEO) content strategies, PR drafts, community response tactics, structured schema markup, and authoritative citation building to drive brand visibility in ChatGPT, Claude, Perplexity, and AI Overviews for tracked buying prompts. [effect=read; scope=intel:read]
reddit_ads_create_ad
can modify data
nameno_utmstatuspost_id*click_urlaccount_id
+3
Create a Reddit ad from an existing post in an ad group (5 credits) [effect=write; scope=campaigns:write; requires=campaignPublishing; externalMutation=true] Create a Reddit ad from an existing post in an ad group (5 credits) [effect=write; scope=campaigns:write; requires=campaignPublishing; externalMutation=true]
repair_account_structure
can modify data
applyplatformaccount_idaccount_name
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 duplica… 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]
research_campaign_opportunity
read-only
platformsaccount_idgeo_targetaccount_nameseed_keywords*include_trends
+2
Research real demand before planning a campaign: keyword volumes and CPCs, what competitors are actually running, and current trends. Run this BEFORE create_campaign_plan. [effect=… Research real demand before planning a campaign: keyword volumes and CPCs, what competitors are actually running, and current trends. Run this BEFORE create_campaign_plan. [effect=read; scope=campaigns:read]
run_gaql_query
read-only
query*account_idaccount_name
Execute a Google Ads Query Language (GAQL) query (2 credits). Use account_name to specify which account when multiple are connected. [effect=read; scope=reporting:read] Execute a Google Ads Query Language (GAQL) query (2 credits). Use account_name to specify which account when multiple are connected. [effect=read; scope=reporting:read]
run_launch_preflight
read-only
platformaction_namelanding_page_url
Run pre-launch conversion-tracking and landing-page checks at PLAN time, before presenting a campaign plan for approval. Read-only and free. Returns tracking issues and confirmatio… Run pre-launch conversion-tracking and landing-page checks at PLAN time, before presenting a campaign plan for approval. Read-only and free. Returns tracking issues and confirmation tokens. [effect=read; scope=campaigns:read]
run_llm_visibility_scan
can modify data
project_id*idempotency_key
Run an on-demand Synter LLM visibility scan for one active workspace project. Admin/Owner only. [effect=write; scope=intel:write] Run an on-demand Synter LLM visibility scan for one active workspace project. Admin/Owner only. [effect=write; scope=intel:write]
send_slack_message
can modify data
text*channel*
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:no… 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]
set_campaign_guardrail
can modify data
platformaccount_id*campaign_id*min_age_hoursspend_threshold*conversion_action_id*
Arm or replace a campaign-specific automatic pause rule. Google Ads rules pause one exact campaign only after both the minimum age and spend threshold are met with zero conversions… Arm or replace a campaign-specific automatic pause rule. Google Ads rules pause one exact campaign only after both the minimum age and spend threshold are met with zero conversions on one exact verified truth conversion action. Configuration is standing authorization for the future pause. Free. [effect=write; scope=guardrails:write; externalMutation=true]
set_spend_alert
can modify data
email*phonenotifyplatformsthreshold*
Set a weekly ad spend alert — notifies via email, Slack, SMS, and/or WhatsApp when total spend exceeds threshold (free) [effect=write; scope=guardrails:write; externalMutation=true… Set a weekly ad spend alert — notifies via email, Slack, SMS, and/or WhatsApp when total spend exceeds threshold (free) [effect=write; scope=guardrails:write; externalMutation=true]
setup_custom_domain
can modify data
slug*domain*
Assign a custom domain (e.g. go.acme.com) to a published landing page. Requires an active paid or pay-as-you-go plan. No credits charged. [effect=write; scope=landing_pages:write] Assign a custom domain (e.g. go.acme.com) to a published landing page. Requires an active paid or pay-as-you-go plan. No credits charged. [effect=write; scope=landing_pages:write]
setup_google_ads_trial_funnel
can modify data
trial_daysmonth_labelbusiness_name*landing_page_url*total_daily_budget
Set up a complete Google Ads trial acquisition funnel: branded Search campaign (maximize clicks, builds conversion history), PMax campaign (maximize conversions), and Display retar… Set up a complete Google Ads trial acquisition funnel: branded Search campaign (maximize clicks, builds conversion history), PMax campaign (maximize conversions), and Display retargeting campaign — all pointing to a Synter-hosted landing page. Requires an active Google Ads connection. [effect=write; scope=campaigns:write; externalMutation=true]
shopify_create_discount
can modify data
code*typetitle*valueends_atstarts_at
+6
Create a Shopify discount code and its price rule. Call this when launching a promotion that ad creative or a landing page will reference. The value must be negative, for example -… Create a Shopify discount code and its price rule. 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_webhook
can modify data
topic*formataddress*account_idaccount_name
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;… 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]
shopify_create_web_pixel
can modify data
site_key*account_idaccount_name
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… 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]
shopify_get_abandoned_checkouts
read-only
dayslimitpage_infoaccount_idaccount_namecreated_at_max
+2
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_i… 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
read-only
typelimitpage_infoaccount_idaccount_name
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:rea… 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
read-only
dayssegmentmin_spendaccount_idaccount_namemax_customers
+2
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. Emails… 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. Emails and phones are SHA-256 hashed unless include_raw is set. [effect=read; scope=audiences:read]
shopify_get_customers
read-only
dayslimitpage_infoaccount_idaccount_namecreated_at_min
+1
Get Shopify customers with creation and update filters. Call this to size an audience before exporting it; use shopify_get_customer_audience when you need the hashed audience file… Get Shopify customers with creation and update filters. Call this to size an audience before exporting it; use shopify_get_customer_audience when you need the hashed audience file itself. Paginate with page_info. [effect=read; scope=commerce:read]
shopify_get_discount_codes
read-only
limitpage_infoaccount_idaccount_name
Get Shopify discount codes and their price rules. Call this to check which promotions are live before referencing an offer in ad copy or a landing page. Paginate with page_info. [e… Get Shopify discount codes and their price rules. 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
read-only
limitmax_pagesaccount_idaccount_namelocation_idsinventory_item_ids
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=re… 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
read-only
limitstatusmax_pagesaccount_idaccount_namelow_stock_threshold
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 prod… 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
read-only
dayslimitstatuspage_infoaccount_idaccount_name
+4
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. Paginat… 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
read-only
limitformatstatusbase_urlcurrencyaccount_id
+4
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 M… 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_products
read-only
limitstatusvendorpage_infoaccount_idaccount_name
+2
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. P… 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_product_sales
read-only
daystop_nend_dategroup_bymax_pagesaccount_id
+2
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; sco… 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_sales_summary
read-only
daysend_datemax_pagesaccount_idstart_dateaccount_name
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 blende… 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
read-only
fieldsaccount_idaccount_name
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 ot… 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
read-only
limittopicaccount_idaccount_nameaddress_contains
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=r… 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]
stage_audience_artifact
can modify data
body*script_namettl_secondsi_have_consent
Stage a hashed-PII payload (newline-delimited identifiers) in Synter's private artifact store and return an opaque artifact_id. Pass that id to sync_audience via *_artifact_id para… Stage a hashed-PII payload (newline-delimited identifiers) in Synter's private artifact store and return an opaque artifact_id. Pass that id to sync_audience via *_artifact_id parameters. FREE — no credits charged. Use this instead of pasting hashed identifiers as inline tool args when you have more than ~500 entries. [effect=write; scope=audiences:write; requires=campaignPublishing; externalMutation=true]
sync_audience
can modify data
emailsphonescsv_urlcsv_pathplatform*batch_key
+17
Upload audience data (emails, phones, MAIDs, companies, a public CSV URL, or a private artifact id) to ad platforms. Supports inline pre-hashed identifiers, artifact-id references… Upload audience data (emails, phones, MAIDs, companies, a public CSV URL, or a private artifact id) to ad platforms. Supports inline pre-hashed identifiers, artifact-id references for >1k entries, and batch mode for Clay.com row-by-row workflows (staging is free, upload costs 10 credits — only on success). REQUIRED FROM 2026-05-21: pass i_have_consent=True confirming the customer has lawful basis under GDPR/CCPA and platform Customer Match terms for every identifier in the audience. [effect=write; scope=audiences:write; requires=campaignPublishing; externalMutation=true]
sync_wikidata_entity
can modify data
domainbrand_name*headquartersfounding_year
Query or generate a structured Wikidata entity payload (P31, P856, P571, P159) for direct LLM knowledge graph indexing via MediaWiki REST API. [effect=write; scope=intel:write] Query or generate a structured Wikidata entity payload (P31, P856, P571, P159) for direct LLM knowledge graph indexing via MediaWiki REST API. [effect=write; scope=intel:write]
synter_onboarding_start
can modify data
email
Start Synter onboarding without an account: returns a sign-in link and code for your human (no API key is ever returned through MCP) [effect=write; scope=workspace:write] Start Synter onboarding without an account: returns a sign-in link and code for your human (no API key is ever returned through MCP) [effect=write; scope=workspace:write]
synter_onboarding_status
read-only
device_codesession_token
Check whether the human finished Synter sign-in for a synter_onboarding_start device code; never returns a key [effect=read; scope=workspace:read] Check whether the human finished Synter sign-in for a synter_onboarding_start device code; never returns a key [effect=read; scope=workspace:read]
test_creatives
can modify data
actionplatform*campaign_id*reward_metric
Start or check a multi-armed bandit creative experiment using Thompson sampling (3 credits) [effect=write; scope=creative:generate] Start or check a multi-armed bandit creative experiment using Thompson sampling (3 credits) [effect=write; scope=creative:generate]
tiktok_ads_get_adgroup
read-only
account_idadgroup_id*account_name
Get full TikTok ad group configuration (free). Returns targeting, budget, bid, pixel, optimization goal, languages, locations, age groups, identity. [effect=read; scope=campaigns:r… Get full TikTok ad group configuration (free). Returns targeting, budget, bid, pixel, optimization goal, languages, locations, age groups, identity. [effect=read; scope=campaigns:read]
tiktok_ads_get_ad_groups
read-only
account_idcampaign_idaccount_name
List all TikTok ad groups, optionally filtered by campaign (free). Returns ID, name, status, budget, bid, optimization goal. [effect=read; scope=campaigns:read] List all TikTok ad groups, optionally filtered by campaign (free). Returns ID, name, status, budget, bid, optimization goal. [effect=read; scope=campaigns:read]
tiktok_ads_get_ads
read-only
account_idadgroup_idaccount_name
List all TikTok ads, optionally filtered by ad group (free). Returns ad_id, ad_name, adgroup_id, campaign_id, status, ad_format. [effect=read; scope=campaigns:read] List all TikTok ads, optionally filtered by ad group (free). Returns ad_id, ad_name, adgroup_id, campaign_id, status, ad_format. [effect=read; scope=campaigns:read]
tiktok_ads_get_campaign
read-only
account_idcampaign_id*account_name
Get full TikTok campaign configuration by ID (free). Returns name, objective, budget, status, timestamps. [effect=read; scope=campaigns:read] Get full TikTok campaign configuration by ID (free). Returns name, objective, budget, status, timestamps. [effect=read; scope=campaigns:read]
tiktok_ads_get_insights
read-only
daysaccount_iddata_levelaccount_name
Get TikTok Ads performance report with video metrics (2 credits). Returns spend, impressions, clicks, CTR, conversions, CPA, ROAS, and TikTok-specific video engagement metrics per… Get TikTok Ads performance report with video metrics (2 credits). Returns spend, impressions, clicks, CTR, conversions, CPA, ROAS, and TikTok-specific video engagement metrics per campaign/adgroup/ad. [effect=read; scope=reporting:read]
tiktok_ads_update_adgroup
can modify data
bidbudgetstatusage_maxage_minbid_type
+10
Update a TikTok ad group: status, budget, locations, age targeting, bid, languages, audiences, optimization goal, pixel tracking (5 credits) [effect=write; scope=campaigns:write; e… Update a TikTok ad group: status, budget, locations, age targeting, bid, languages, audiences, optimization goal, pixel tracking (5 credits) [effect=write; scope=campaigns:write; externalMutation=true]
update_campaign_budget
can modify data
platform*account_idcampaign_id*account_namedaily_budget*
Update a campaign's daily budget (5 credits) [effect=write; scope=budget:write; externalMutation=true] Update a campaign's daily budget (5 credits) [effect=write; scope=budget:write; externalMutation=true]
update_google_sheet
can modify data
urlrange*values*spreadsheet_idvalue_input_option
Write values (e.g. campaign IDs / status / spend) back into a range of an existing Google Sheet (2 credits) [effect=write; scope=workspace:external_docs] Write values (e.g. campaign IDs / status / spend) back into a range of an existing Google Sheet (2 credits) [effect=write; scope=workspace:external_docs]
update_gtm_tag
can modify data
htmlpausetag_id*publishset_paramaccount_id
+3
Pause/unpause a GTM tag of ANY type, replace its HTML body, or set its parameters — including the conversion VALUE (set_param conversionValue on a Google Ads tag, set_event_param v… Pause/unpause a GTM tag of ANY type, replace its HTML body, or set its parameters — including the conversion VALUE (set_param conversionValue on a Google Ads tag, set_event_param value on a GA4 event tag). MODIFIES LIVE SITE TRACKING once published or when publish=true is passed. Use this (not update_gtm_tag_html) for non-HTML tags like Google Ads/Meta/LinkedIn conversion tags — e.g. pausing a duplicate conversion tag. Pausing a conversion tag (awct/gclidw/sp/gaawe, or a name matching conversion/signup/purchase/lead) requires i_checked_conversion_volume=true or the underlying script refuses — see its parameter description. [effect=write; scope=tracking:write; externalMutation=true]
update_gtm_tag_html
can modify data
html*tag_id*account_idcontainer_id
Replace the HTML body of an existing GTM Custom HTML tag. MODIFIES LIVE SITE TRACKING once the container is published. Only type 'html' tags are allowed; the change stays in the wo… Replace the HTML body of an existing GTM Custom HTML tag. MODIFIES LIVE SITE TRACKING once the container is published. Only type 'html' tags are allowed; the change stays in the workspace until publish_gtm_container runs. [effect=write; scope=tracking:write; externalMutation=true]
update_landing_page_html
can modify data
slug*html_content*
Update the HTML content of an existing landing page you own without AI regeneration (free edit). Use this to patch copy, add logos, or tweak layout after reviewing a draft. If the… Update the HTML content of an existing landing page you own without AI regeneration (free edit). Use this to patch copy, add logos, or tweak layout after reviewing a draft. If the slug does not exist yet, this creates a new hosted page and costs 135 credits (same as create_landing_page). [effect=write; scope=landing_pages:write]
update_landing_page_tracking
can modify data
slug*meta_pixel_idfillout_form_idgoogle_pixel_idreddit_pixel_idlinkedin_pixel_id
+2
Set landing-page conversion pixels and the Google Ads conversion label, and wire a Fillout embed so form submits count as campaign conversions and route to HubSpot. Free edit of an… Set landing-page conversion pixels and the Google Ads conversion label, and wire a Fillout embed so form submits count as campaign conversions and route to HubSpot. Free edit of an existing page you own. Returns google_send_to plus a Fillout webhook URL. [effect=write; scope=landing_pages:write]
update_verified_page_replica
can modify data
slug*action
Get status, verify, or revoke source ownership for a verified page replica. [effect=write; scope=landing_pages:write] Get status, verify, or revoke source ownership for a verified page replica. [effect=write; scope=landing_pages:write]
upload_creative
can modify data
nameform_idheadlineplatform*asset_url*account_id
+5
Upload a generated creative asset to an ad platform and attach it to a campaign (5 credits) [effect=publish; scope=creative:publish; requires=campaignPublishing; externalMutation=t… Upload a generated creative asset to an ad platform and attach it to a campaign (5 credits) [effect=publish; scope=creative:publish; requires=campaignPublishing; externalMutation=true]
upload_landing_page_html
can modify data
slugtitlehtml_content*
Upload raw HTML as a new landing-page draft (no AI generation). Use to import an exported .html file or hand-written markup (embedded forms, Cal.com embeds, thank-you pages all sup… Upload raw HTML as a new landing-page draft (no AI generation). Use to import an exported .html file or hand-written markup (embedded forms, Cal.com embeds, thank-you pages all supported). Then publish_landing_page and attach it to an ad campaign. Creating a new hosted page costs 135 credits (same as create_landing_page); re-uploading to a slug you already own is a free edit. [effect=publish; scope=landing_pages:publish; requires=campaignPublishing; externalMutation=true]
upsert_plan_entity
can modify data
plan_id*platform*remote_identity_type*logical_key*desired_state
+4
Add or update an entity (campaign, ad, tweet, go_link, etc.) within a campaign plan. [effect=write; scope=campaigns:plan; externalMutation=true] Add or update an entity (campaign, ad, tweet, go_link, etc.) within a campaign plan. [effect=write; scope=campaigns:plan; externalMutation=true]
verify_custom_domain
read-only
slug*
Check if DNS is configured for a landing page's custom domain. Free — no credits charged. [effect=read; scope=landing_pages:read] Check if DNS is configured for a landing page's custom domain. Free — no credits charged. [effect=read; scope=landing_pages:read]
verify_pixel_ownership
read-only
url*platform*account_id
Cross-validate that the pixel/tag IDs on a landing page belong to the connected ad account. Detects wrong-pixel installs, domain registration gaps, and CAPI mismatches. Free — no c… Cross-validate that the pixel/tag IDs on a landing page belong to the connected ad account. Detects wrong-pixel installs, domain registration gaps, and CAPI mismatches. Free — no credits. [effect=read; scope=tracking:read]
verify_platform_accounts
read-only
daysplatform