Skip to content
v1.2.1MIT

Plan and operate advertising campaigns through Synter’s hosted MCP server over OAuth. Review performance, write ad copy, and approve campaign changes before execution.

Changelog

[1.2.1] - Unreleased

  • Add a portable OpenAI package targeting the existing Synter Ads MCP draft, with directory metadata, OAuth discovery, and reviewer test cases.
  • Preserve the four existing creative, page, visibility, and creator-brief skill entry points with scopes limited to available tools and explicit production gaps.
  • Use canonical Synter domains in active client manifests and onboarding links.
  • Build separate Claude and OpenAI archives from explicit runtime files, verify every archived byte, and emit source identity and SHA-256 checksums.
  • Keep the Claude session primer out of the public OpenAI archive.

All notable changes to the Synter plugin are documented here. This project follows semantic versioning.

[1.2.0] - 2026-10-02

  • Cursor connects to https://mcp.synterai.com; Claude retains https://mcp.syntermedia.ai to match the connector under review. Both use browser OAuth.
  • Setup and support documentation now describe the hosted connection, shipped skills, and local hook accurately.
  • Removed unsupported workflows and limited instruction tool references to the approved 34-tool directory. Ad-copy writing and existing-asset selection remain supported.
  • Added offline directory validation and an optional OAuth-authenticated live MCP comparison.

[1.1.2] — 2026-09-06

Fixed

  • Aligned post-approval installation guidance with Anthropic's current plugin-directory documentation: approved plugins are surfaced through the automatically available claude-plugins-official marketplace.

[1.1.1] — 2026-09-06

Fixed

  • Replaced the stale rasterized plugin artwork with Synter's canonical transparent 1024×1024 brand mark. Cursor consumes this asset through its supported logo manifest field; Claude's current strict plugin manifest has no icon field, so the same asset is prepared for the authenticated Anthropic directory submission rather than adding an unsupported manifest key.

[1.1.0] — 2026-09-06

Changed

  • Claude and Cowork now authenticate the hosted Synter MCP through secure browser OAuth 2.1 instead of collecting a static API key in plugin configuration. The MCP endpoint publishes protected-resource and authorization-server metadata, supports dynamic client registration and PKCE, and returns a standards-compliant 401 challenge for protected tool calls.
  • Installation and troubleshooting guidance now distinguishes direct GitHub marketplace installation from Anthropic directory discovery and tells users never to paste credentials into chat.
  • Claude and Cursor package versions remain aligned so release archives and marketplace caches receive the updated skills and documentation.

Added

  • Anthropic community directory submission fields, policy evidence, test prompts, and reviewer checklist.
  • Strict Claude plugin validation in pull-request and release CI.

[1.0.0] — 2026-08-27

Changed

  • Account mutations and spend changes require explicit user approval. Read-only reports and account lookups run without asking.
  • Version canonicalized to 1.0.0 across .claude-plugin/plugin.json, .cursor-plugin/plugin.json, and .cursor-plugin/marketplace.json, closing the skew between the Claude and Cursor packaging surfaces.

Added

  • Packaging and release automation — a zip build produces dist/synter-plugin-<version>.zip with the plugin at the archive root, matching Claude Desktop's zip-upload layout. CI validates every PR (manifest JSON, marketplace/plugin name match, skill frontmatter, .mcp.json/mcp.json interpolation guards) and a release workflow attaches the built zip to the GitHub Release on each synter--v* tag push.

[0.4.1] — 2026-08-19

Added

  • Cursor plugin manifest, marketplace index, and remote MCP configuration.

[0.4.0] — 2026-08-04

RSA asset floor: the Google Ads API accepts as few as 3 headlines and 2 descriptions, but ads built at that minimum score "Poor" on Google Ad Strength and get throttled in the auction. The plugin now enforces a real floor everywhere ad copy is created or reviewed.

Changed

  • ad-copy-generation — RSAs require 11 headlines / 4 descriptions minimum (15/4 recommended), every slot filled, the ad group's actual keywords echoed in at least 5 headlines, no filler padding, no truncation (rewrite to the character limit instead).
  • campaign-preflight — new blocking "Creative asset completeness" check: per-ad asset counts read from the platform and compared against the floor; Google Ad Strength POOR/AVERAGE must be fixed before launch; the same fill-every-slot rule applies on every platform at its own ceiling.
  • creative-director and media-buyer agents — carry the floor rule wherever they direct ad creation or launch.

[0.3.0] — 2026-07-25

Fourteen new skills deepening diagnostics, measurement, and creative coverage — every one grounded exclusively in public Synter MCP tools.

Added

  • Platform depth — meta-ads-diagnostics (Learning Phase, fatigue, overlap, Advantage+), google-ads-quality-score, google-shopping-optimizer (feeds, disapprovals, Shopping vs PMax), performance-max-optimizer (asset groups, brand cannibalization), linkedin-ads-targeting (ABM, lead gen forms).
  • Measurement & data — pixel-capi-auditor (dedup, Event Match Quality), first-party-data-strategy (Enhanced Conversions, server-side tagging, Consent Mode v2), incrementality-testing (geo holdouts, lift studies), attribution companions via measure_incrementality and get_attribution.
  • Strategy — retargeting-sequence-designer (staged funnels, recency windows, exclusions), seasonal-budget-planner (build your own seasonality index from your account data), audience-expansion-strategy (lookalike ladders, seed quality, layering), geo-integrity-audit (location-criteria and click-geography verification).

[0.2.0] — 2026-07-22

Broadened skill and agent coverage so the operator can plan, port, and run campaigns across every platform without falling back on internal tools it cannot reach.

Added

  • replicate workflow skill (/synter:replicate) — rebuild an existing campaign from one platform onto another (read the source structure, map it to the target, preflight, ship). Fixes the gap where "build my Google campaign on Microsoft" had no guided path.
  • Platform playbooks — platform-google, platform-microsoft, platform-meta, platform-linkedin, platform-tiktok, platform-reddit, platform-x, platform-amazon, platform-openai. Structure, targeting, and the real cross-platform mapping differences per channel.
  • Operational skills — media-plan, keyword-research, negative-keywords, bid-optimization, dayparting, kill-scale-rules, pre-pause-analysis, platform-benchmarks, conversion-tracking, attribution, utm-builder, competitor-analysis, creative-testing, ad-copy-generation.
  • Agents media-buyer and campaign-strategist now point at the replicate workflow and the platform playbooks.

Changed

  • campaign-preflight moved from internal backend scripts to public MCP checks.
  • mmm-budget-planner rewritten around the public optimize_budget, get_attribution, and measure_incrementality tools instead of internal scripts that are not available through the MCP.

Note on exclusions

The new kill-scale-rules, platform-benchmarks, and pre-pause-analysis skills ship generic methodology only. Synter's proprietary numeric thresholds and cost-benchmark tables remain withheld — these skills teach the approach and defer to the account's own data, they do not carry the internal numbers. Internal runbooks and infrastructure-coupled skills are still not shipped.

[0.1.0] — 2026-06-16

Initial release. The AI Agent Operator for Ads, packaged for Claude Code / Claude Desktop.

Added

  • Workflow skills (/synter:*) — quickstart, connect, audience, launch, optimize, report, help.
  • Craft skills — 9 generic advertising-methodology skills: ad-policy-compliance, anomaly-detector, campaign-preflight, campaign-structure-auditor, creative-fatigue-detector, executive-reporting, mmm-budget-planner, roas-calculator. Deliberately excluded from the public package: internal-execution runbooks (Doppler/DB-coupled), Synter's proprietary operating playbooks (kill/scale thresholds, cost-benchmark + budget-split logic), and skills referencing internal infrastructure (pixel pipeline, table names, non-public tools).
  • Agents — campaign-strategist, media-buyer, audience-builder, creative-director, budget-optimizer, performance-analyst.
  • Hook — SessionStart primer enforcing the money-safety rules and brand voice.
  • Output style — synter agent voice.
  • Context — bundled brand-voice and safety rules referenced by skills and agents.
  • SDK runner (sdk/synter-agent.mjs) — headless @anthropic-ai/claude-agent-sdk harness that loads the plugin and runs the operator unattended. Read-only by default (spend/mutation auto-denied via canUseTool); --allow-writes to lift. Verified: SDK loads all 23 skills + 6 agents.