Meta Ads MCP server

Connect Meta Ads to Claude, ChatGPT, Cursor, Claude Code, Codex, Gemini, GitHub Copilot and any other MCP client, for your whole team. Metorial adds security, governance, and tracing, and gives everyone one Magic MCP URL to connect.

What you can do with the Meta Ads MCP server

Ask your agent in plain language. Each of these maps to a real tool on the server.

  • Use the delete ad tool in Meta Ads
  • Use the get ad tool in Meta Ads
  • Use the list campaigns tool in Meta Ads
  • Use the search ad library tool in Meta Ads
  • Use the delete custom audience tool in Meta Ads
  • Use the get custom audience tool in Meta Ads

Supported Tools

delete_ad

Delete Ad

Delete an ad. This sets the ad status to DELETED.

get_ad

Get Ad

Retrieve detailed information about a specific ad by its ID.

list_campaigns

List Campaigns

Retrieve campaigns from the configured ad account. Supports pagination and filtering by status. Use this to browse existing campaigns and get their IDs for further operations.

search_ad_library

Search Ad Library

Search Meta's public Ad Library for ads running across Facebook, Instagram, Messenger, and WhatsApp. Useful for competitive research and market analysis. Returns publicly available ad data including creative text, page info, and estimated reach. **Note:** The Ad Library does not provide private performance KPIs. Spend and impressions are broad ranges, not precise figures.

delete_custom_audience

Delete Custom Audience

Delete a custom audience. This cannot be undone.

get_custom_audience

Get Custom Audience

Retrieve detailed information about a specific custom audience.

get_leads

Get Leads

Retrieve submitted lead data from a lead generation form. Returns user-submitted field data along with associated ad and campaign information. Requires leads_retrieval permission.

list_custom_audiences

List Custom Audiences

Retrieve custom audiences from the ad account. Custom audiences enable targeting specific groups of people based on customer data, website traffic, app activity, or engagement.

list_ad_sets

List Ad Sets

Retrieve ad sets from the ad account or a specific campaign. Ad sets define targeting, budget, schedule, and optimization settings.

update_campaign

Update Campaign

Update an existing campaign's settings including name, status, budget, and bid strategy. Only provided fields will be updated.

delete_ad_set

Delete Ad Set

Delete an ad set. This sets the ad set status to DELETED.

create_ad_creative

Create Ad Creative

Create a new ad creative. Creatives are immutable once created — to make changes, create a new creative. Supports link ads, image ads, and video ads via the objectStorySpec parameter.

create_custom_audience

Create Custom Audience

Create a new custom audience. After creation, add users to it using the "Add Users to Audience" tool. You can create up to 500 custom audiences per ad account.

delete_campaign

Delete Campaign

Delete a campaign. This sets the campaign status to DELETED. Deleted campaigns cannot be reactivated.

update_ad

Update Ad

Update an existing ad's name, status, or creative. Only provided fields will be updated.

add_users_to_audience

Add Users to Audience

Add users to an existing custom audience using hashed identifiers. All PII (emails, phone numbers, etc.) must be SHA-256 hashed before sending. Meta will match these against their user database.

get_insights

Get Performance Insights

Query performance metrics (impressions, clicks, spend, conversions, ROAS, etc.) at account, campaign, ad set, or ad level. Supports date ranges, time breakdowns, and dimensional breakdowns (age, gender, country, platform, placement, etc.). Use **objectId** to scope to a specific campaign/ad set/ad, or omit it to get account-level data. Use **level** to aggregate data at a specific level within the hierarchy.

get_campaign

Get Campaign

Retrieve detailed information about a specific campaign by its ID.

list_ads

List Ads

Retrieve ads from the ad account or a specific ad set. Ads are the actual creatives people see, combining an ad creative with an ad set's targeting.

create_ad_set

Create Ad Set

Create a new ad set within a campaign. Ad sets control targeting, budget, schedule, and optimization. The targeting object follows Meta's targeting spec format.

update_ad_set

Update Ad Set

Update an existing ad set's settings including targeting, budget, schedule, and status. Only provided fields will be updated.

create_ad

Create Ad

Create a new ad within an ad set. An ad links an ad creative to an ad set. You must first create an ad creative, then reference it here.

create_campaign

Create Campaign

Create a new advertising campaign. Campaigns are the top-level container in Meta's ad hierarchy defining the objective. After creating a campaign, create ad sets and ads within it.

send_conversion_events

Send Conversion Events

Send server-side conversion events via the Conversions API. This is the server-side alternative to Meta Pixel for tracking purchases, leads, and other conversions. Supports deduplication with browser-based pixel events via eventId. Events are sent to a dataset/pixel ID and used for ad optimization, targeting, and measurement.

list_lead_forms

List Lead Forms

Retrieve lead generation forms from a Facebook Page. Lead forms are used with lead ad campaigns to capture user information directly on Facebook/Instagram.

get_ad_set

Get Ad Set

Retrieve detailed information about a specific ad set including its targeting configuration.

get_ad_creative

Get Ad Creative

Retrieve detailed information about a specific ad creative.

list_ad_creatives

List Ad Creatives

Retrieve ad creatives from the ad account. Creatives define the visual and text content of ads. Use this to browse existing creatives for reuse or reference.

Connect Meta Ads to your AI client

Every client uses the same Magic MCP URL, and so does any other MCP client. Add it once and sign in with SSO.

  1. Enable Meta Ads in Metorial. In your Metorial portal, enable the Meta Ads MCP server and sign in with the account that owns the data. Access stays governed by your team policies.
  2. Add a custom connector. Open Customize, then Connectors. Select Add, then Custom, then Web.
  3. Paste your Metorial MCP URL. Name it Metorial, paste your Magic MCP URL (<your-magic-mcp-url>) and continue.
  4. Sign in. Select Add and sign in to load Meta Ads tools.

Run Meta Ads through the Metorial gateway

One governed layer for every app your agents reach, not a separate connector per tool.

  • Give Meta Ads and every other app to your whole team through one MCP gateway, behind your SSO.
  • Scope which teams and agents can use Meta Ads tools with role-based access control, and trace every call.
  • Prefer to run it yourself? Metorial is open source and self-hostable.

More integrations teams use with Meta Ads

GitHub

Manage repositories, issues, and pull requests. Create and configure branches, star repositories, review code, and merge changes. Automate CI/CD workflows with GitHub Actions, manage workflow runs, secrets, and artifacts. Track issues with labels, milestones, and assignees. Search across code, repositories, issues, and users. Manage organizations, teams, and memberships. Create and manage projects, gists, packages, deployments, and environments. Access security alerts including code scanning, secret scanning, and Dependabot alerts. Read and write file contents in repositories. Manage webhooks, notifications, and codespaces.

Salesforce

Manage CRM data including Accounts, Contacts, Leads, Opportunities, Cases, and custom objects. Create, read, update, and delete records. Query data using SOQL and search across objects using SOSL. Perform bulk data operations for large-scale imports, exports, and migrations. Execute composite requests to batch multiple operations in a single API call. Access analytics, reports, and dashboards. Manage files and attachments associated with records. Interact with Chatter feeds, posts, and groups for social collaboration. Manage org metadata including custom objects, fields, layouts, and workflows. Query data using GraphQL for precise data retrieval across related objects.

Apolloio

Search and prospect B2B contacts and companies from a database of over 275 million people and 70 million organizations. Enrich people and company data with emails, phone numbers, and firmographic details. Create and manage contacts, accounts, deals, and tasks. Add contacts to email sequences and manage sequence statuses. Log and search call records. Perform bulk operations for contact creation, account creation, task creation, and data enrichment.

Sharepoint

Manage SharePoint sites, document libraries, lists, and files. Create, read, update, and delete lists and list items with custom columns. Resolve site users to numeric Person/Group LookupId values. Upload, download, move, copy, and version files in document libraries. Search across sites, files, folders, lists, and list items using Microsoft Search. Manage permissions at site, list, and item levels with granular access control. Define and manage content types and site columns. Retrieve site properties and search for sites across Microsoft 365.

Hubspot

Create, read, update, and delete CRM objects including contacts, companies, deals, tickets, and custom objects. Manage associations between CRM records. Track engagements such as calls, emails, meetings, notes, and tasks. Send transactional and marketing emails, manage campaigns, and handle subscription preferences. Build and manage marketing workflows, sequences, and automation actions. Manage CMS content including blog posts, landing pages, and HubDB tables. Handle commerce data including products, orders, invoices, quotes, and payments. Create and manage contact lists for segmentation. Configure deal, ticket, and order pipelines with custom stages. Search and filter CRM records. Bulk import and export CRM data. Manage users, teams, and account settings.

Airtable

Create, read, update, and delete records in Airtable bases and tables. Manage base schemas including creating tables and fields. Filter records using formulas, sort by fields, and scope queries to specific views. Upsert records to find, create, or update in a single call. Upload attachments to records, read and write record comments, list accessible bases, and receive real-time base change events through webhooks.

Technical notes for Meta Ads

Create, manage, and optimize ad campaigns across Facebook, Instagram, Messenger, and WhatsApp. Build and configure campaigns, ad sets, and ads with targeting, budgets, and creatives. Retrieve performance insights including impressions, clicks, spend, conversions, and ROAS with configurable breakdowns. Manage custom audiences from customer data, website traffic, or app activity, and create lookalike audiences. Upload and manage ad creatives including images, videos, and carousels. Send server-side conversion events via the Conversions API. Manage product catalogs for dynamic ads. Retrieve lead ad submissions. Access the public Ad Library for competitive research. Receive webhooks for ad account status changes and lead generation events.

Frequently asked questions

Common questions about connecting Meta Ads to AI agents with Metorial.

  1. How many tools does the Meta Ads MCP server have?
    The Meta Ads MCP server exposes 28 tools, including Delete Ad, Get Ad, List Campaigns. Each one is governed and traced through Metorial.
  2. Meta Ads exposes tools your agents call on demand; it does not publish event triggers yet. Everything still runs through one governed MCP URL.
  3. Any MCP client, including VS Code, Windsurf, Zed, OpenCode and Grok. Each one reaches the Meta Ads MCP server through the same Metorial URL.
  4. Use role-based access control to decide which teams, users, and agents can use Meta Ads and which of its tools they can call.
  5. Yes. Metorial is open source, so you can run the Meta Ads MCP server yourself or use the hosted gateway.

Connect Meta Ads to production AI agents

See how Metorial gives your team governed access to Meta Ads, with tracing and security controls built in.