Changelog

Xylo changelog

New MCP tools, ad platform coverage, and improvements to Xylo.

v1.1.9ImprovementJuly 5, 2026

Brand links on the brand profile

Brand profiles now hold the brand's URLs: the website, shop, and key landing pages. Your AI saves the site it researched and reads it back on every future call, and the dashboard editor gets a Links section.

  • New urls field on the brand profile: an array of {url, label} entries, merged like every other profile key
  • Account research now saves the brand website URL it worked from, so future sessions start from the same source
  • Links section in the dashboard brand profile editor, with click-to-open
v1.1.8FeatureJuly 5, 2026

AI video generation

Generate ad videos with Seedance 2.0, Kling 3.0, and Gemini Omni straight from your AI, using your brand assets and generated images as references, then edit any video with plain English. Same credits, same pipeline: preview, then push to Meta.

  • New video models: Seedance 2.0 (premium cinematic, richest reference control), Kling 3.0 (dialogue and lip-sync, the only 4K option), and Gemini Omni (the cheapest generator, plus natural-language video editing)
  • Text-to-video and image-to-video, using brand assets, generated stills, or a prior generation as the starting frame
  • Edit any video with plain English: trim a scene, change a line of dialogue, swap a background, no re-shoot needed
  • Generation is async: submit a job, then poll for status while it renders
  • Same generation-credit system and staging pipeline as image generation: preview before it ever touches Meta
v1.1.7ImprovementJuly 5, 2026

GPT Image 2 for static product ads, with a quality dial

The flagship static-ad model upgrades to GPT Image 2 — the strongest model available for text-overlay product ads — and generation cost is now under your control with a quality setting.

  • gpt-image-edit now runs on GPT Image 2: sharper in-image text and layout, faithful product and logo references, and every key ad ratio including 4:5 and 9:16 (previously square and landscape only)
  • New quality setting on gpt-image-edit: defaults to medium at 20 credits per image (half the previous price); if fine text or a small logo isn't perfect, re-run the same prompt at high (45 credits) for the crispest rendering — low (10 credits) covers rough drafts
  • The generation guide teaches the escalation pattern: start at medium, pay for high only when a result needs it
  • gpt-image (text-to-image) also upgraded to GPT Image 2 with the same quality setting and ad ratios; GPT Image 1.5 is fully retired
v1.1.6FeatureJuly 5, 2026

Catalog product photos as AI generation references

Generating creative for an e-commerce product no longer requires a text description or a manually uploaded photo. The agent can pull a product's own images straight out of your Meta catalog and use them as reference images.

  • New action: stage a Meta catalog product's photos (main image plus additional angles) into free, 24-hour staging for use as generation references
  • Catalog products can now be found by name search, not just by retailer ID
  • Staged previews are returned inline so the agent can vet each shot (clean studio angle vs. lifestyle clutter) before generating
  • Kept images feed straight into creative generation as reference images, alongside brand assets and winning-ad media
v1.1.5FeatureJuly 5, 2026

Brand knowledge: your whole brand's research in one place

Everything your agent learns about a brand now travels with the brand, not just one ad account. Agents working any attached account see what the brand's other accounts already taught them, and the dashboard shows all of it on the brand.

  • Reading an account's brief on a multi-account brand also returns every sibling account's brief and remembered facts, so researching a second platform starts from what the first one already knows
  • New Knowledge tab on each Brand Profile: the research brief and remembered facts for every attached account, side by side, with a link to edit them on the account
  • Top-performers (winners) insights default to a 30-day window so large accounts answer fast; pass an explicit date range for 90 or 180 days
  • Asset refs like winning_ad:{id} resolve on their own; no platform or account id needed
  • Winning-ad usage counts skip archived and deleted ads, so "runs in N ads" reflects real usage
v1.1.4FeatureJuly 4, 2026

Premium image models for product ads + a creative-director prompting guide

AI image generation graduates from basic composites: GPT Image 1.5 and Nano Banana Pro join the model lineup, static product ads route to models that get the product, the logo, AND the in-image text right in one pass, and the generation guide now teaches agents to prompt like a creative director.

  • New gpt-image-edit model (GPT Image 1.5): renders your exact product shots and logo from reference images with polished layout and near-perfect in-image text — the new default for static promo cards and offer ads
  • New nano-banana-pro and nano-banana-pro-edit models (Gemini 3 Pro Image): premium text rendering and design sense across every aspect ratio, with up to 14 reference images — the pick for 4:5 and 9:16 product ads
  • The creative_generation guide now documents per-model prompting technique — layered art direction (subject, surface, lighting, exact copy in quotes with layout positions, finish) instead of flat one-line prompts
  • num_images semantics documented honestly: N images = near-identical takes on one prompt; agents are steered to generate distinct concepts as separate prompts, then variants of the direction you pick
  • Ads can now be listed and name-searched account-wide (no ad set ID required), so agents can pull your actual winning creatives to ground new designs on real pixels instead of text summaries
v1.1.3Bug FixJuly 4, 2026

Partnership-ad video analysis, honest Google listings, leaner payloads

Creative analysis now recovers Partnership / whitelisting videos through their public Instagram post, Google campaign lists surface your live campaigns first and stop under-reporting, and the big insights lenses default to sizes an AI agent can actually read.

  • Partnership / whitelisting video ads analyze at full fidelity again: when Meta locks the Facebook video node, Xylo resolves the creative's public Instagram post and analyzes the real video — thumbnail-only is now the rare per-asset exception, and its message no longer claims the ad is unanalyzable
  • Google campaign lists order live campaigns first (active before paused, newest first), report has_more honestly across every Google list tool, and each campaign carries delivery_status (Google's primary_status) so ENABLED-but-ended campaigns read as ENDED
  • Google insights with time_granularity "all" return one aggregated row per entity as documented, instead of silently exploding into daily rows
  • Copy-performance breakdowns default to the aggregated view with the top 15 variants per ranking — full per-ad dumps are opt-in, so large accounts no longer overflow the conversation
  • Number-vs-string parameter mixups (like limit: 60) are coerced instead of erroring, and the onboarding playbook now rejects black-and-white-only palettes and generic font families as failed brand extractions
v1.1.2ImprovementJuly 4, 2026

Smarter account onboarding: better winners, seedable briefs, sturdier memory

First-run account ingestion learned from its first real-world outing. Winners are now grouped by what each ad set actually optimizes for, agents can seed the narrative Account Brief, and saved memory sticks to durable conventions instead of live state that drifts.

  • Winners insights group by optimization goal (ordered by spend), so cheap link-click campaigns no longer bury your real lead-gen or purchase winners
  • update_account_brief can seed the freeform Account Brief during first-time ingestion — written only while empty; once set it stays yours
  • Memory guidance hardened: agents save durable conventions (e.g. budgets for NEW ad sets), never current budgets or running promotions, and re-verify stored offers before reusing them in new ads
  • Onboarding playbook now requires concrete brand colors and fonts (hex + font families) before finishing, flags billing-inactive accounts up front, and stays inside response-size limits on big accounts
  • Passing a channel to channel-agnostic tools (like list_brands) no longer errors, and date_preset docs list exactly the values Meta accepts
v1.1.1ImprovementJuly 2, 2026

Bulk tools: reliable counts, safe retries, no more mystery timeouts

Every bulk tool now tells you exactly what happened — even when the ad platform is slow. Timed-out operations are verified and retried automatically, and re-running the same call safely skips work that already happened.

  • meta_bulk_create_ads and meta_duplicate_ads lead with a summary (requested / created / skipped_existing / failed), auto-verify timed-out operations against the target ad set, retry the genuinely missing ones, and skip already-existing ads on a re-run — safe retries, no duplicates
  • meta_bulk_update_ads / ad sets / campaigns auto-retry writes that time out inside Meta's batch (field updates are idempotent), so failed[] now means "definitively did not apply"
  • TikTok bulk status updates no longer stop at the first failed batch — every chunk runs, and the response reports exactly which IDs changed and which didn't
  • Large Meta batches run in parallel and MCP tool calls get up to 5 minutes, so big launches finish instead of timing out
v1.1.0FeatureJune 30, 2026

Account Brief: persistent per-account memory

Every connected ad account now has a persistent Account Brief the agent reads before it works and writes to as you share preferences, so you stop repeating yourself. Works the same across Meta, Google, and TikTok.

  • Two universal MCP tools, on every connector: read_account_brief (recall the account's saved context at the start of a task) and update_account_brief (remember new facts as you state them)
  • Structured memory captures the things you'd otherwise re-explain: naming conventions, default budgets, geo and audience preferences, product sets, which campaigns are which and where new ads go, brand voice, and ad copy preferences
  • New "Remembered by AI" panel on each account in the dashboard — view, edit, add, or remove any remembered fact, alongside the existing freeform Account Brief
  • Cross-platform REST endpoint GET/PATCH/DELETE /v1/account-memory, gated by the same per-account read/write permissions as the rest of the API
  • Available on every plan, including Free
v1.0.0ReleaseApril 21, 2026

Enterprise Tier: Data Warehouse, Async Insights & Ad Integrity

Enterprise-tier release. A local data warehouse that refreshes Meta account state daily, async insights jobs for heavy queries that would time out synchronously, and an ad integrity checker that flags suspicious landing pages, unknown Pages, and unauthorized Instagram accounts on scheduled daily runs.

  • Scheduled daily bulk pulls — campaigns, ad sets, ads with creatives, and daily-granularity insights on a rolling 90-day window — with incremental sync (re-pulls last 7 days each run to catch late conversion attribution, backfills older history 30 days at a time)
  • Transparent local-snapshot serving for /v1/insights on enterprise accounts; response includes data_freshness: 'local_snapshot' with snapshot_at timestamp
  • Async insights jobs via meta_start_insights_job / meta_check_insights_job MCP tools — threshold-routed (sync / sync_slow / async_recommended / async_required / refused) based on estimated row count (entities × date buckets × breakdowns)
  • meta_check_ad_integrity MCP tool — flags ads linking to unknown domains, using unknown Facebook Pages, on unknown Instagram accounts, or with no destination URL
  • Business website field on the account dashboard — sets the reference domain for the integrity checker; subdomains accepted automatically
  • Approved domains panel in the dashboard — mark domains as known-good to stop future anomaly flags
  • New endpoints: POST /v1/insights/async/start, GET /v1/insights/async/:job_id, GET /v1/ai/integrity-check, POST /v1/cron/bulk-pull
  • URL history tracking — ad_url_history table records every unique landing URL per account, with first/last seen timestamps and seen_count
v0.9.0FeatureApril 19, 2026

Publishing, Media Pipeline & MCP Polish

Meta MCP parity push: a staged media pipeline that dedupes and groups assets before finalizing to Meta, Page and Instagram publishing with comment management, and a broad round of MCP and insights polish.

  • Staged media upload with dedupe and grouping — stage in Vercel Blob, finalize pushes to Meta while keeping blobs alive for Page/IG reuse
  • Facebook Page and Instagram publishing with comment management and engagement counts on Page post responses
  • List user-managed Pages without requiring a connected ad account
  • Catalog discovery fixes and per-account default catalog selector, plus meta_list_catalogs and meta_list_catalog_products MCP tools
  • Insight deduping across standard events and lead counts to match Ads Manager, with funnel metrics exposed
  • MCP polish: accept xy_sk_ API keys as bearer tokens, keyword hints in tool descriptions for claude.ai tool_search, latest-post shortcuts for Page and Instagram, and lead form tools (meta_list_lead_forms, meta_get_lead_submissions)
  • Dropped read_insights from the Meta OAuth scope to simplify consent
  • Fixes for duplicate campaign/ad-set on Meta v25, budget schedule ISO parsing, and IG media delete via Page access token
  • Ads Library preview removed
v0.8.0FeatureApril 3, 2026

Google Ads Search Terms & Negative Keywords

Deep Google Ads optimization tools: search term reports, campaign and shared negative keyword lists, and full MCP tool coverage for search term management.

  • Search term performance reports with date range filtering
  • Campaign-level negative keyword management (add, remove, list)
  • Shared negative keyword lists with campaign linking
  • MCP tools for all search term and negative keyword operations
  • Negative keyword list ↔ campaign association endpoints
v0.7.0FeatureMarch 28, 2026

Performance Max & Experiments

Full support for Google Ads Performance Max asset groups and A/B experiment management. Run experiments, promote winners, and manage PMax creative assets programmatically.

  • Performance Max asset group CRUD and asset linking
  • A/B experiment creation, promotion, and end lifecycle
  • Google Ads change history and recommendation engine integration
  • Keyword quality score reporting
  • Budget management endpoints (shared budgets)
  • User list and customer match audience management
v0.6.0FeatureMarch 20, 2026

Instagram & Facebook Pages Publishing

Publish content directly to Instagram and Facebook Pages through the API and MCP. Images, videos, Reels, Stories, carousels, and comment management across both platforms.

  • Instagram publishing: images, videos, Reels, Stories, and carousels
  • Facebook Page post creation, scheduling, and management
  • Comment management for both Pages and Instagram
  • Meta Pixel management and Conversions API (server-side events)
  • Media insights and publishing rate limit checks
  • MCP tools expanded to ~195 across all platforms
v0.5.0FeatureMarch 8, 2026

TikTok Ads & Multi-Provider Auth

TikTok Ads platform integration and a complete auth overhaul supporting email/password, Meta OAuth, and Google OAuth sign-in. Team management with role-based access control.

  • TikTok Ads: campaigns, ad groups, ads, insights, and audiences
  • Email/password authentication with bcrypt and email verification
  • Google OAuth login (separate from Google Ads connection)
  • Team management: roles (owner/admin/member/viewer), invites
  • OAuth 2.1 with PKCE for MCP server authentication
  • Webhook subscriptions for campaign and ad set events
  • Bulk operations endpoint for sequential multi-request execution
  • AI-powered campaign audit, budget optimization, and report generation
  • Cross-platform insights with normalized metrics and grand totals
v0.4.0FeatureMarch 15, 2026

Google Ads Support

Full Google Ads API integration with the same normalized response format as Meta. Manage campaigns, ad groups, ads, and pull performance reports across both platforms with a single API key.

  • Google Ads campaign CRUD operations
  • Ad group management with targeting options
  • Cross-platform normalized response schema
  • Google Ads insights and performance reporting
  • Keyword targeting and bid management endpoints
  • Conversion action tracking and offline conversion uploads
  • Asset management (sitelinks, callouts, structured snippets, images)
v0.3.0FeatureFebruary 20, 2026

MCP Server Release

Introduced the Xylo MCP server, enabling AI agents like Claude, GPT-4, and Cursor to manage ad campaigns through natural language. Configure in your AI tool of choice.

  • MCP server with Streamable HTTP transport and OAuth 2.1 auth
  • Meta campaign, ad set, ad, audience, and insights tools
  • Claude Desktop, Claude Code, and Cursor integration
  • Typed tool schemas with descriptions for AI discovery
  • Read and write operations with safety confirmations
v0.2.0FeatureJanuary 25, 2026

Meta Ads Full Coverage

Expanded Meta Ads API coverage to include audiences, creatives, lead forms, catalogs, and Instagram-specific endpoints. Added response caching and rate limit handling.

  • Custom audience and lookalike audience management
  • Creative asset upload and management
  • Lead form retrieval and lead data access
  • Product catalog integration
  • Instagram account and media endpoints
  • Response caching with configurable TTLs
  • Automatic retry with exponential backoff for rate limits
  • Page management endpoints
v0.1.0ReleaseJanuary 5, 2026

Initial Launch

First public release of Xylo. Core Meta Ads API wrapper with campaign, ad set, and ad management. REST API with API key authentication and AES-256-GCM token encryption.

  • Meta Ads campaign CRUD operations
  • Ad set management with targeting configuration
  • Ad creation and status management
  • Performance insights and reporting endpoints
  • API key authentication with SHA-256 hashing
  • Meta OAuth connection flow
  • Account management dashboard
  • Organization and team support
  • Usage logging and request tracking
  • Docker deployment configuration