Meta's Ads MCP Connector vs Xylo: What Each One Can Actually Build
Meta ships an official Facebook and Instagram ads MCP connector. We tested both against a live ad account. Here is exactly where the two differ at the ad level.
Two connectors, one ad account
Meta now ships its own MCP connector for Meta (Facebook & Instagram) ads. Point Claude or ChatGPT at it, authorize your account, and your agent can read campaigns, pull insights, and build ads. It is real software from the platform itself, and for a lot of everyday work it is fine.
Xylo is an independent MCP server covering the same account, plus Google Ads, TikTok Ads, X Ads, and Klaviyo email and SMS.
If you are choosing between them, the marketing pages will not help you much. So we connected both to the same live ad account, read every tool schema, and built a real ad through Meta's connector to see what actually lands. This post is what we found, including the places where our first assumptions were wrong.
The short version
Meta's connector is good at reading your account and fine at building simple ads. The gap opens at the ad level, on the fields that decide how your creative is assembled and delivered. Those fields are largely absent from its documented inputs, and the ones you can smuggle in cannot be read back to verify.
Tool count is a context cost
Meta's connector exposes 97 tools. Xylo exposes 28.
This is not a scoreboard. Every tool description is loaded into your agent's context window before it does a single piece of work. Ninety-seven tool definitions is roughly a quarter of a large context window spent before you have asked your first question, and that is context your agent no longer has for your account, your brand, and the actual problem.
Xylo groups 300+ ad operations behind 28 dispatchers, so the surface area is comparable while the context cost is not.
Where the two are genuinely similar
Credit where it is due. Meta's connector handles campaign and ad set creation, insights and reporting, custom audiences, catalog and product feed management, pixel and dataset diagnostics, A/B and lift tests, and Page and Instagram asset lookups. Its catalog tooling in particular is deep, with feed rules, upload sessions, product sets, and event source health checks.
If your work is mostly reading performance and making straightforward single image or single video ads, you may not hit the ceiling described below.
The ad level, where the gap opens
Five primary texts and five headlines
Meta rotates copy variations and keeps the winner. One body and one headline is a single guess. This is the first thing serious Meta buyers ask about, so we tested it properly rather than trusting the schema.
Meta's documented creative tool takes exactly one message and one headline. No arrays.
But its ad tool accepts the creative as a free-form JSON string, and we confirmed on a live account that it forwards unrecognized top-level keys straight to the Graph API. A hand-written asset_feed_spec carrying five bodies and five titles was accepted and stored. So the honest answer is: it is possible, if you write raw Graph API JSON yourself.
Two problems remain. First, none of that is documented, so your agent has no way to know the capability exists and will never reach for it unprompted. Second, the connector cannot read the result back. Its creative reader has no field for asset_feed_spec, bodies, or titles, so it can write text variations it is then unable to verify. We had to use a different tool to confirm our own write had landed.
Xylo sends up to five of each on every new ad by default, and reads them back.
Every Advantage+ enhancement lands off
This one surprised us. The ad we built through Meta's connector came back with all ~85 Advantage+ creative features set to OPT_OUT. Image touch-ups, uncrop, text and voiceover translation, product tags, business AI, generated music, every one of them off. No format display options either.
That is not the connector zeroing anything out. No tool in it accepts degrees_of_freedom_spec, creative_features_spec, or format_transformation_spec, so nothing is sent, and Meta leaves any unsent enrollment opted out.
We checked this against a control: an ad built by Xylo in the same ad set came back with exactly the two features Xylo explicitly opted into and the rest opted out. So enrollment tracks what the creator sends, and there is no account-level default quietly filling the gap.
The practical consequence is that ads built this way ship in a creative configuration you did not choose and cannot inspect through the same connector.
Xylo exposes twenty-five enhancements you can set, and returns the full enrollment matrix so you can diff a new ad against the parent you cloned it from.
Feed and Story in one ad
A square crop stretched into Reels looks broken. The right build carries both canvases in a single ad.
Meta's connector takes one image per creative. Carousel cards are separate cards, not placement variants of the same ad.
Xylo pairs a square feed asset with its 9:16 Story or Reel sibling at upload time and keeps them together when the ad is written.
Site links, UTMs, partnership ads, and shop destinations
None of these appear in the connector's documented inputs:
- Site links. Extra destinations under the ad on Facebook feed, so one ad can route to three or four pages.
- URL parameters. Without a UTM string, the traffic lands in your analytics unattributed.
- Partnership ads. Creator content only runs as a partnership ad when the creator is tagged as the paid partner.
- Website and shop destination. Meta's personalized destinations, which send each click to whichever on-site page is likeliest to convert.
The same raw JSON escape hatch described above may reach some of these. We did not test each one, and neither will your agent, because none of them are in a schema it can see.
Flexible and multi-media formats
Meta's connector builds single image, single video, manually built carousels, and catalog carousels.
It does not expose Flexible ad format or multi-media ads, where you hand Meta up to ten assets and let it serve the best one per person and placement.
Catalog items on a static ad
The "Add catalog items" panel puts shoppable product tiles under an ordinary image or video ad. Meta's connector supports full catalog carousels but not product extensions on a static ad. Xylo supports both, and sets the display formats the catalog needs in order to render at all.
Media in and out
Getting creative in. Meta's connector uploads from a public direct URL only. Its own documentation notes that Google Drive and Dropbox links are rejected, because they return a sign-in page instead of the file. Your assets are usually on your machine or in cloud storage, which means a manual hosting step first. Xylo uploads straight from a local folder, stages in a dashboard, or takes a URL.
Getting media back out. To restyle or reuse a winning video you need the file. Meta's connector returns a permalink and a thumbnail, not a downloadable source. Xylo resolves the actual source file for the ad and its Story variant.
What the connector remembers
Nothing. There is no memory tool in the 97.
Every session starts from zero: your naming conventions, starting budgets, preferred geos, audiences, brand voice, and where new ads are supposed to go. You retype it, or you accept whatever the agent guesses.
There is a sharper version of this problem. The connector requires a Page ID on every creative call, and its Instagram field is optional. Omit it and the ad ships without ever serving on Instagram. Nothing warns you.
Xylo saves the Page, Instagram account, pixel, catalog, and product set once and fills them in automatically. It also keeps an account brief, a brand profile with real logos and product shots, and a winning-ads library that new creative can be built from.
Everything around Meta
Meta's connector is Meta only, which is exactly what you would expect from a first-party tool. Budget decisions rarely stop at one platform, though. Xylo covers Google Ads, TikTok Ads, X Ads, and Klaviyo email and SMS on the same connection, with blended cross-platform reporting.
Xylo also generates new creative with AI, analyzes existing ads frame by frame against their own delivery data, and builds live shareable dashboards from a sentence. Meta's connector does none of these, and schedules report exports rather than dashboards.
How we tested this
Every claim here was read off both connectors' published tool inputs in July 2026, and the ad-level findings were confirmed against a live Meta ad account. We built a real ad through Meta's connector with a hand-authored asset_feed_spec, read it back to see what Meta actually stored, compared it against an ad built by Xylo in the same ad set, and deleted the test ad.
We also got things wrong on the first pass. We initially wrote that five primary texts were impossible through Meta's connector. They are not, as the test above shows. The claim that survives is narrower and more useful: they are undocumented, unreachable by an agent working from the schema, and unverifiable afterward.
Meta's connector is capable software and it is improving. Re-check anything here before you rely on it.
Which one should you use
Use Meta's own connector if you want a first-party tool, your work is mostly reading performance, and your ads are single image or single video with one body and one headline.
Use Xylo if you build ads where the details decide the outcome: multiple text variations, paired feed and Story canvases, deliberate Advantage+ choices, site links, UTMs, partnership ads, catalog extensions. Or if you run more than one platform, want the agent to remember how your account works, or want it to make and analyze creative rather than only place it.
Try it
See the full side-by-side on the Meta ads page, or connect and judge for yourself. Create a free account with no credit card, point your AI app at https://xylomcp.com/api/mcp, and run one of the Meta prompts against your real campaigns. The free tier connects one account per platform.
Related reading: Meta Ads API vs Xylo covers the raw API path rather than the MCP one, the MCP protocol explainer covers how connectors work at all, and the Meta Ads guide covers the platform itself.
Hand your ad accounts to an AI agent
Connect Xylo to Claude, ChatGPT, or any AI agent free — no code, no card required.
Related posts
Meta Ads API vs Xylo: Hand Your Ad Accounts to an AI Agent
The raw Meta Ads API is built for engineers. Xylo lets you manage Meta, Google, TikTok, and X ads by talking to your AI agent in plain English.
Top Meta Ads API Wrappers and Connectors Compared (2026)
A plain-English comparison for brands and agencies: Xylo, Meta's own MCP connector, the Facebook Business SDK, Pipeboard, AdEspresso, and Smartly.io, with pricing.
Your Winning Ads Are Now a Library Your AI Agent Can Use
Xylo's new brand creative library saves your best-performing ads with stats, creative analysis, and plain-language descriptions, so your AI agent can reference proven winners when it builds or generates new creative.