Moltline Studio Get a license

Blog

Meta Ads MCP Server: Official Endpoint, Sign-In and Setup

Meta runs an official, hosted MCP server for its ads platform at https://mcp.facebook.com/ads. An AI agent connected to it can pull reporting and create or edit campaigns, ad sets and ads on the accounts you grant it, through Meta's own permission-scoped tools. This guide covers what Meta documents today: the endpoint, sign-in and permissions, the clients Meta supports, what the tools cover, Meta's other MCP servers, and how to run the Ads server next to other MCP servers. Everything here was checked against Meta's developer documentation on 10 November 2026.

Connect it in Claude Code

Meta's Get started page gives this command:

claude mcp add --transport http --client-id <META_APP_ID> meta-ads https://mcp.facebook.com/ads

<META_APP_ID> is the App ID of your own Meta developer app. Create or open one at developers.facebook.com/apps, add the Create & manage ads with ads MCP server use case, and set the app's redirect URL for your client in the Facebook Login for Business settings. Meta's client guide adds that Claude Code picks a random callback port unless you set one with --callback-port, in which case the callback URI is http://localhost:<PORT>/callback. Then run /mcp in a Claude Code session, select the server and sign in.

You do not need your own app to use the server. Meta says owning a Meta app is not a prerequisite, and for access without one it points to its Business Help Center article, How to set up Meta ads AI connectors.

Connect it in ChatGPT

Meta documents one other client. Set your Meta app's redirect URL to ChatGPT's specification, create a connector in ChatGPT with OAuth as the authentication method and https://mcp.facebook.com/ads as the server URL, and enter your Meta app ID as the OAuth Client ID in the advanced OAuth settings.

What about Cursor and Codex?

Meta's Ads page lists only Claude Code and ChatGPT. Meta's general client guide covers Cursor and Codex for Meta's MCP servers, but it also says a client is supported on a given server only if that server's own page lists it. As of this check neither is listed for the Ads server, so this guide gives no Cursor or Codex setup for it. Watch the Get started page for changes.

Sign-in and permissions

Meta supports three ways to authenticate:

  • OAuth. Your client opens the Facebook Login for Business dialog. You sign in with a Facebook account or a Meta Managed Account and approve the requested permissions. No manual token setup.

  • User access token. Generate one in the Graph API Explorer or your own OAuth flow and send it as Authorization: Bearer <ACCESS_TOKEN>, for programmatic setups.

  • System user access token. For server-to-server setups. Only Employee-role system user tokens work; Admin-role system user tokens cannot access the server.

At a minimum a token needs ads_mcp_management plus ads_read or ads_management. Granting ads_management, catalog_management, business_management, pages_show_list and instagram_basic gives access to more tools.

What the tools cover

Meta groups the tools into seven categories, each with its own reference page:

Category

What Meta says the tools do

Comprehensive reporting

Campaign, ad set and ad performance with metrics, breakdowns, sorting and date ranges, plus trend, anomaly and benchmark insights

Ad creation and management

Create and edit campaigns, ad sets, ads, creatives and custom audiences, search the Ad Library, and boost Instagram posts

Catalog creation and management

Create catalogs, add and edit products and product sets, manage feeds, and troubleshoot feed and item visibility issues

Signals and datasets

Pixel and Conversions API datasets, event setup, signal health and Event Match Quality

Help and troubleshooting

Delivery-blocking errors and a search of the Meta Business Help Center

A/B tests and conversion lift studies

Create and manage tests and lift studies and read their results

Activity logs

An ad account's change history, as on the Ads Manager campaign history page

Two details matter before you hand the server to an agent. Write tools create campaigns, ad sets and ads in a paused state, and Meta says your AI client asks for confirmation before activation. A separate tool, ads_activate_entity, switches a paused campaign, ad set or ad to active, which starts spending budget.

Tool names carry an ads_ prefix, such as ads_get_ad_accounts and ads_create_campaign, so they are easy to tell apart from other servers' tools in the same session. Meta does not publish a total tool count and the list changes, so read the category pages rather than a number quoted in an article.

Meta's other MCP servers

A search for "Meta MCP server" also turns up Meta's other official servers. Meta's MCP overview lists three remote servers, and its VR command line tool has an MCP mode of its own:

Server

Where it runs

What it is for

Meta Ads MCP

https://mcp.facebook.com/ads

Managing ads, as above

Meta Social Technologies MCP, formerly Meta Developer Tools MCP

https://mcp.facebook.com/devtools

The Meta apps you build on developers.facebook.com: app configuration, App Review status, API health, webhooks and a developer docs search. In beta.

WhatsApp Business Tools MCP

Remote, hosted by Meta

A WhatsApp Business Platform integration: accounts, phone numbers, message templates, webhooks and sending messages

Meta VR CLI (metavr)

Local, over stdio (metavr mcp server)

Quest and Horizon OS development: documentation search, connected devices and other development tasks. metavr init or metavr mcp install <target> sets it up for your agent.

Pick by job: ads go to the Ads server, your Meta developer apps to Social Technologies, WhatsApp messaging to WhatsApp Business Tools, and Quest or Horizon OS work to metavr. For where the Ads server sits in Meta's wider AI and agent work, see Meta AI in 2026.

Running it next to other MCP servers

A client can hold several MCP servers at once, each as its own entry. In Claude Code, the Ads server sits next to a hosted server like this:

claude mcp add --transport http --client-id <META_APP_ID> meta-ads https://mcp.facebook.com/ads
claude mcp add --transport http moltline-data https://mcp.moltlinestudio.com/data

The second line adds Moltline's Data Desk, whose free tools include csv_profile, ab_test, correlation and growth_rates, handy on an exported ad report. It needs no sign-in. Moltline Studio runs 22 hosted MCP servers with 160 tools, and 110 of those tools are free with no account, no API key and no signup; each server's endpoint is on moltlinestudio.com/servers.html.

Troubleshooting

  • Sign-in never finishes, or no tools appear. Run /mcp in Claude Code and authenticate the meta-ads entry. If you use your own app, its redirect URL must match your client; with Claude Code and a fixed --callback-port, that is http://localhost:<PORT>/callback.

  • Some tools fail on permissions. The token holds only the minimum. Grant the additional permissions above for catalog, business, Page and Instagram tools.

  • A system user token is refused. Only Employee-role system user tokens can access the server.

  • Wrong URL. The server is https://mcp.facebook.com/ads. Pages on developers.facebook.com are its documentation, not the endpoint.

To verify a connection, Meta's client guide says to restart the client, confirm the server shows as connected, ask the agent to list that server's tools, and run a read-only operation: it works when the tool list is not empty and the read returns data instead of an authentication or permission error. Meta's own first prompt, "List my ad accounts.", is a good read-only start.

Official server or a community one?

Community-built Meta Ads MCP servers exist too. Meta's server is the one Meta documents and supports, and it uses Meta's own sign-in and permission model. Choose a community server only if it offers something you need that Meta's does not, and check who runs it before you give it access to an ad account.

Whichever you use, Meta's MCP overview warns that an agent can call anything your granted permissions allow, including in response to instructions hidden in content it reads, such as webhook payloads, documents or web pages. Grant only the permissions you need, use separate apps for development and production, and review connected servers on Facebook under Settings > Your Activity > Business Integrations.

Next step

Add the server with the command above, sign in, and ask for your ad accounts. Then add a general-purpose server from moltlinestudio.com/servers.html next to it. The free tier needs no account.