Choose Meta's official Ads MCP when you want a free, first-party connector for Meta alone, Markifact when you need managed multi-account workflows and approval-gated writes across your marketing stack, and an open-source server when your developers want to own the code and infrastructure. Meta's connector is more capable than Google's current read-only Ads MCP, so this is not a simple official-versus-write-access decision. I tested the current endpoint, schemas, live Markifact read path, and a representative self-hosted implementation to show where each option actually fits.
The verdict
| Option | Setup | Reporting | Writes | Write safety | Scope | Maintenance | Cost |
|---|---|---|---|---|---|---|---|
| Meta's official Ads MCP | Low | Yes | Yes | Meta permissions plus your MCP client's confirmation settings | Meta Ads only | Meta maintained | Free during open beta |
| Markifact | Low | Yes | Yes | Every write waits for explicit approval | Meta Ads plus other advertising, analytics, ecommerce, and work platforms | Managed by Markifact | Paid managed service |
| Open-source or self-hosted | High | Usually | Varies | You configure or build the control policy | Usually Meta Ads only | You own deployment, tokens, upgrades, and security | Free code plus your infrastructure |
The official connector is the obvious starting point for a technical advertiser who wants Meta's own hosted route and only needs Meta Ads. Markifact's Meta Ads MCP is the stronger fit when account routing, a larger operational surface, cross-platform analysis, and a consistent approval queue matter. Open-source Meta Ads MCP servers make sense when code ownership is the goal and your team accepts the operational work that comes with it.
What I actually tested
The word "tested" needs a precise boundary, especially for a product released only a few months ago.
For Meta's official connector, I reviewed Meta's April 29, 2026 announcement, earnings materials, developer documentation, and the hosted MCP endpoint. On July 23, 2026, https://mcp.facebook.com/ads responded with HTTP 401 without authorization. That confirms the hosted service is reachable and protected by its OAuth boundary. I did not connect a live ad account or execute official tools, so I do not present imagined account results.
For Markifact, I inspected the production operation registry, which currently contains 56 meta_ads_* operations: 21 reads and 35 approval-gated writes. I ran live account discovery and a read-only meta_ads_get_report request against an authorized account. The selected last-seven-days range returned an empty result, which still verified the connection and read path without exposing any customer data. I also inspected the schemas for meta_ads_update_campaign_budget and meta_ads_create_flexible_ad. I did not approve or execute a write.
For the open-source category, I cloned and statically inspected one current MIT-licensed implementation as a representative example. Its current source registered 54 tools, with 35 read tools enabled by default and 19 write or lifecycle tools behind an opt-in environment flag. I reviewed its manifest, license, authentication model, tool registrations, and safety annotations. I did not install its dependencies, authenticate it, or run it against an ad account.
The open-source implementation is intentionally unnamed here. The useful comparison is the operating model, not a promotion for one repository that may change, stall, or be replaced.
Meta's official Ads MCP up close
Meta announced Ads AI Connectors on April 29, 2026 as an open beta. The launch lets an advertiser connect a Meta ad account directly to an AI assistant through Meta's hosted MCP endpoint.
As of July 23, 2026, the advertised surface covers 29 read and write tools across:
- Reporting and performance analysis
- Campaign creation and management
- Catalog and commerce workflows
- Signal and dataset diagnostics
- Account and object discovery
Meta also released an official Ads CLI for terminal workflows. Both releases matter because they show that Meta is treating agent access as a first-party product surface rather than leaving it entirely to community wrappers.
Setup and authentication
The hosted MCP URL is:
https://mcp.facebook.com/ads
The connection uses Meta Business OAuth. For the hosted official route, the advertiser does not need to build a separate Meta Developer App or manage a local MCP runtime. Availability can still depend on open-beta rollout, business permissions, ad-account access, and what the selected MCP client supports.
That setup is materially easier than maintaining a local server. Meta owns the hosted endpoint and product updates, while the user completes OAuth and selects the permitted business assets.
The official connector can make changes
Do not assume every official advertising MCP is read-only. Meta's current connector includes campaign-management actions as well as reporting. That is a major difference from the official Google Ads MCP tested in our Google Ads MCP comparison.
The safety model also deserves precise language. Meta applies its account permissions, and the MCP client may ask the user to confirm a tool call. That is not the same as a separate managed human approval queue enforced by the connector provider. If controlled execution matters, inspect the client settings and the exact tool schema before authorizing writes.
Where the official connector fits
Meta's option is attractive when:
- You want a connector built and maintained by Meta.
- Meta Ads is the only platform in scope.
- A free open-beta product fits your procurement needs.
- Your MCP client provides tool confirmation controls you trust.
- The current 29-tool surface covers the objects you need.
Its biggest limitation is scope. The server knows Meta Ads. It does not combine Meta performance with Google Ads, TikTok Ads, LinkedIn Ads, GA4, ecommerce data, or a reporting destination unless other connectors are present.
What Markifact changes
Markifact's Meta Ads MCP is also hosted and OAuth-based, but it is designed around broader marketing operations rather than a single first-party platform.
The current registry contains 56 Meta Ads operations. Read examples include meta_ads_get_report, meta_ads_get_campaign_settings, meta_ads_search_targeting, meta_ads_list_catalogs, meta_ads_check_catalog_diagnostics, and meta_ads_library. Write examples include meta_ads_create_campaign, meta_ads_create_adset, meta_ads_update_campaign_budget, meta_ads_update_adset_audiences, meta_ads_create_flexible_ad, and meta_ads_update_products.
Those operation names are examples, not an exhaustive list. The practical surface extends across reporting, campaigns, ad sets, audiences, creative formats, catalogs, products, targeting, and diagnostics.
Every write waits for approval
Markifact separates preparation from execution. An assistant can inspect the account, build a proposed payload, and explain the expected change. The mutation then waits for explicit approval before Markifact sends it to Meta.
The schema details matter. For example, meta_ads_update_campaign_budget accepts the new amount in the account's actual currency value, while some read settings may expose raw minor units. A capable MCP should not only have a tool called "update budget." It should communicate the units, object identifiers, prerequisites, and approval behavior clearly enough to prevent a 100-times budget error.
Multi-account and cross-platform context
Markifact can route requests across connected Meta ad accounts and place Meta Ads beside other systems. That creates workflows such as:
- Compare Meta and Google Ads spend before moving budget.
- Pull Meta campaign performance and validate downstream sessions in GA4.
- Review competitor creative through the Meta Ad Library workflow, then brief new concepts.
- Export findings to Sheets or Slides and notify a team in Slack.
- Analyze Meta Ads with TikTok Ads or LinkedIn Ads under the same reporting instructions.
If you only need a Meta campaign report, this breadth may be unnecessary. If the real job is "explain total paid-media performance and prepare the agreed changes," platform scope becomes the deciding factor.
What open-source and self-hosted servers provide
Open-source Meta Ads MCP servers trade convenience for control. Your team can inspect the code, modify tool definitions, choose where credentials live, host the runtime inside your infrastructure, and decide exactly which actions exist.
The representative implementation I reviewed was substantial. It registered 54 tools across accounts, campaigns, ad sets, ads, creatives, media, insights, targeting, Facebook Pages, budget schedules, activity logs, and pagination. Its 35 read tools were available by default, while 19 write and lifecycle tools required an explicit environment flag.
That opt-in boundary is sensible, but it is not a complete approval workflow. Once mutation tools are enabled, your team still needs to decide:
- Whether the MCP client confirms every write
- Whether certain operations should remain unavailable
- How access tokens are stored and rotated
- Which Meta business assets each token can reach
- Who reviews dependency and API-version changes
- Where logs, alerts, and audit history live
- How the server is patched when a vulnerability appears
The code may be free under an open-source license. The operating cost is engineering time, runtime infrastructure, security review, token management, monitoring, and ongoing maintenance.
Authentication is your responsibility
A self-hosted server generally calls the Meta Marketing API with an access token you supply. Read access needs the appropriate permissions, commonly including ads_read; writes require permissions such as ads_management. Depending on the implementation and deployment model, you may also need a Meta Developer App and a durable token lifecycle.
This route is strongest when the infrastructure requirement is intentional. It is a poor bargain when a marketer picks it only because the repository costs nothing.
The same tasks through each option
Feature counts are useful, but real requests show the differences more clearly.
Task 1: report campaign performance
The request:
Compare active campaigns for the last 30 complete days. Return spend, impressions, clicks, link clicks, conversions, conversion value, CPA, and ROAS. State the account currency and attribution setting before recommending any action.
Meta's official MCP: This is core first-party reporting work. The current connector is designed to retrieve performance and campaign information. I verified the protected endpoint and documented surface, but did not authenticate or run this report through the official server.
Markifact: meta_ads_get_report is one example from the broader read surface. I verified the live authentication and report path on July 23, 2026. The selected test range contained no rows, so I make no claim about fabricated performance figures.
Open-source or self-hosted: Reporting is commonly the strongest part of these servers. The implementation I inspected registered account, insight, campaign, ad-set, ad, creative, and pagination tools. Your team still owns authentication, schema validation, and runtime reliability.
Task 2: inspect settings and targeting
The request:
For the three highest-spend campaigns, inspect objective, status, budget source, optimization goal, bid strategy, attribution, placements, geo, age, audiences, exclusions, and creative. Flag configuration risks separately from performance risks.
Meta's official MCP: The official campaign-management and reporting surface can support first-party inspection, subject to the available tool schemas and the advertiser's permissions.
Markifact: Examples include meta_ads_get_campaign_settings, meta_ads_list_campaigns, meta_ads_search_targeting, and the reporting operations. Named operations here are examples, not a limit on what the integration supports.
Open-source or self-hosted: The representative source registered tools across campaign, ad-set, ad, creative, targeting, and Pages categories. Coverage varies by implementation, so inspect the real tool list instead of assuming every public server supports the same fields.
Task 3: update a campaign budget
The request:
Prepare a change from a daily budget of USD 250 to USD 300 for campaign 120000000001. Show the current value, proposed value, object ID, and expected timing. Do not execute until I approve the exact payload.
Meta's official MCP: The current connector can manage campaigns, but the exact confirmation experience depends on the MCP client and account permissions. Inspect the proposed call before execution.
Markifact: meta_ads_update_campaign_budget is an approval-gated write example. The assistant can prepare the payload, but Markifact holds it until the user approves. No real change was made during this test.
Open-source or self-hosted: Write support varies. The representative implementation kept mutation tools disabled by default and required an explicit opt-in flag. After enabling writes, approval enforcement is still the operator's responsibility.
Task 4: create ads and work with catalogs
The request:
Create a draft campaign structure for our approved objective and audience. Prepare one single-image ad, one flexible ad, and one catalog ad using the supplied assets. Validate every prerequisite and leave all writes pending.
Meta's official MCP: Meta advertises campaign creation, management, catalog work, and signal diagnostics. Verify the current tool inputs because the platform is still in open beta and can evolve.
Markifact: Write examples include meta_ads_create_single_image_ad, meta_ads_create_single_video_ad, meta_ads_create_carousel_ad, meta_ads_create_flexible_ad, meta_ads_create_catalog_ad, and meta_ads_update_products. They are examples from a broader set, and every write requires approval.
Open-source or self-hosted: Creative and catalog depth varies considerably. The representative server had creative, media, Page, and campaign lifecycle categories, but teams must verify whether their required formats and asset prerequisites are implemented correctly.
Which Meta Ads MCP should you choose?
Choose Meta's official Ads MCP if
- You want Meta's first-party hosted connector.
- You want reporting and campaign actions without running your own server.
- Meta Ads is the only advertising platform required for this workflow.
- The open-beta availability and current client support fit your environment.
- Meta permissions and your MCP client's confirmation controls meet your safety policy.
Choose Markifact if
- You want hosted Meta OAuth and managed account routing.
- You manage multiple Meta ad accounts or clients.
- You want a wider Meta Ads operation surface.
- You require every write to pause for explicit approval.
- You need Meta Ads alongside Google Ads, TikTok Ads, LinkedIn Ads, GA4, Sheets, Slides, Slack, or other marketing tools.
- Your users are marketers who should not maintain tokens, dependencies, or an MCP runtime.
If you are connecting from an assistant for the first time, use the Meta Ads to Claude guide or the Meta Ads to ChatGPT guide.
Choose open-source or self-hosted if
- Your developers need to inspect and change the server code.
- Credentials must remain inside infrastructure you control.
- You want to define a custom tool surface or safety policy.
- Your team can maintain the Meta API integration, token lifecycle, runtime, dependencies, logging, and upgrades.
- You are comfortable validating the implementation before enabling write tools.
For a broader view of what is official, available, limited, or absent across ad platforms, see The State of Advertising MCPs in 2026.
Can you run the official MCP and Markifact together?
Yes. MCP clients can connect to more than one server. You can keep Meta's official connector as a first-party route and use Markifact for cross-platform reporting, a broader operation set, or approval-gated execution.
Name the connectors clearly and tell the assistant which one should handle each request. For example:
Use the connector named Meta Official for read-only campaign inspection. Use the connector named Markifact only for cross-platform analysis or a proposed write. Never execute a write without showing the exact account, object ID, current value, proposed value, and approval status.
Clear routing prevents the assistant from choosing between similar tool descriptions without enough context.
A practical inspection prompt
Copy this into Claude, ChatGPT, Codex, or another MCP client after connecting a Meta Ads server:
Inspect the connected Meta Ads MCP before accessing account data. List the available tool categories and give representative tool names for reporting, campaign settings, targeting, creative, catalogs, and writes. Identify which tools are read-only, which can change an account, what approval or confirmation mechanism governs writes, who stores the credentials, who maintains the server, and whether it supports platforms beyond Meta Ads. Do not access an account or execute a tool until I confirm the account and date range.
That prompt forces the assistant to inspect the connector you actually installed, not rely on a remembered product page or an outdated tool list.
Frequently asked questions
Is there an official Meta Ads MCP?
Yes. Meta announced Ads AI Connectors on April 29, 2026 and provides a hosted MCP endpoint at https://mcp.facebook.com/ads. As of July 23, 2026, it is an open beta with read and write capabilities for Meta advertising workflows.
Is Meta's official Ads MCP free?
It is free during the open beta as of July 23, 2026. Meta has not announced long-term pricing, so teams should recheck the current product terms before making a lasting cost comparison.
Can Meta's official MCP change campaigns?
Yes. Unlike Google's current official Ads MCP, Meta's connector includes campaign-management capabilities. Meta account permissions and the selected MCP client's tool-confirmation settings govern what can run, so inspect the exact call before authorizing a change.
Does Markifact support more Meta Ads operations than the official connector?
The current Markifact registry contains 56 Meta Ads operations, while Meta's advertised official surface contains 29 tools as of July 23, 2026. Counts are not a complete quality measure, but Markifact currently exposes broader examples across reporting, settings, targeting, creative formats, catalogs, products, and approval-gated writes.
Does every Markifact write require approval?
Yes. The current Markifact Meta Ads registry marks all 35 write operations as requiring approval. An assistant can prepare and explain the requested change, but Markifact holds execution until the user explicitly approves it.
Are open-source Meta Ads MCP servers safe?
They can be safe when a qualified team reviews the code, limits permissions, protects tokens, controls write tools, patches dependencies, and monitors the runtime. Open-source licensing alone does not provide a managed approval queue, secure deployment, or ongoing maintenance.
Do I need a Meta Developer App?
Meta's hosted official MCP uses Meta Business OAuth and does not require the advertiser to build a separate developer app for that route. A self-hosted implementation may require a developer app, access tokens, the correct Marketing API permissions, and a token-renewal process.
Can I connect more than one Meta Ads MCP?
Yes. Most MCP clients can connect to multiple servers. Give each connector a clear name and specify which one should handle reporting, cross-platform analysis, and proposed writes so the assistant does not choose ambiguously.




