MCP Directory

Meta Ads MCP

Run Facebook & Instagram (Meta) Ads end to end from your AI client — launch campaigns, upload creatives, edit budgets, analyze performance.

Unverified
HTTP (remote)
OAuth
Python

Add to your client

Copy the config for your MCP client and paste it into its config file.

Paste into ~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "meta-ads-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://meta-ads.mcp.pipeboard.co/"
      ]
    }
  }
}

Claude Desktop connects to remote servers through the `mcp-remote` proxy (installed on first run via npx). Restart Claude Desktop after saving.

Step-by-step guides: Add to Claude Desktop · Add to Cursor · Add to Windsurf

Before you start

  • A Pipeboard account (pipeboard.co) with a connected Facebook/Meta Ads account
  • For remote MCP: an MCP-compatible client (Claude Pro/Max integrations, Cursor, or other) — no local setup
  • For Claude integrations: a Claude Pro or Max plan
  • Optional: a Pipeboard API token (pipeboard.co/api-tokens) for direct-token authentication
  • For local self-hosting (advanced): your own Meta Developer App — see STREAMABLE_HTTP_SETUP.md

About Meta Ads MCP

A Python MCP server for managing Facebook and Instagram (Meta) Ads end to end from any MCP-compatible AI client. The recommended deployment is the Pipeboard remote MCP (streamable HTTP) at https://meta-ads.mcp.pipeboard.co/, where you connect your ad account once via OAuth and then drive campaigns, creatives, targeting, and insights through conversation. It is one of five ad-platform MCP servers in the Pipeboard family that share a single auth and write-confirmation safety model. A local self-hosted install is documented for advanced users.

Tools & capabilities (29)

mcp_meta_ads_get_ad_accounts

Get ad accounts accessible by a user (by user_id or 'me'), with details.

mcp_meta_ads_get_account_info

Get detailed information about a specific ad account (act_XXXXXXXXX).

mcp_meta_ads_get_account_pages

Get Facebook Pages associated with a Meta Ads account, useful for ad creation.

mcp_meta_ads_get_campaigns

Get campaigns for an account with optional limit and status filter.

mcp_meta_ads_get_campaign_details

Get detailed information about a specific campaign.

mcp_meta_ads_create_campaign

Create a new campaign with an outcome-based (ODAX) objective, budget, status, and bid strategy.

mcp_meta_ads_get_adsets

Get ad sets for an account, optionally filtered by campaign.

mcp_meta_ads_get_adset_details

Get detailed information about a specific ad set.

mcp_meta_ads_create_adset

Create a new ad set with targeting, budget, optimization goal, billing event, and bid settings.

mcp_meta_ads_get_ads

Get ads for an account, optionally filtered by campaign or ad set.

mcp_meta_ads_create_ad

Create a new ad using an existing creative within an ad set.

mcp_meta_ads_get_ad_details

Get detailed information about a specific ad.

mcp_meta_ads_get_ad_creatives

Get creative details (text, images, URLs) for a specific ad.

mcp_meta_ads_create_ad_creative

Create a new ad creative from an uploaded image hash, supporting single or dynamic (A/B) headlines/descriptions and CTA.

mcp_meta_ads_update_ad_creative

Update an existing ad creative's name, copy, headlines/descriptions, dynamic spec, or CTA.

mcp_meta_ads_upload_ad_image

Upload an image for use in creatives; returns image details including the hash.

mcp_meta_ads_get_ad_image

Get, download, and visualize a Meta ad image for an ad in one step.

mcp_meta_ads_update_ad

Update an ad's status or bid amount; returns a confirmation link.

mcp_meta_ads_update_adset

Update an ad set's status, bid strategy/amount, targeting, or frequency caps; returns a confirmation link.

mcp_meta_ads_get_insights

Get performance insights for a campaign, ad set, ad, or account, with breakdowns, level, and attribution windows.

mcp_meta_ads_get_login_link

Get a clickable login link for Meta Ads authentication.

mcp_meta_ads_create_budget_schedule

Create a budget schedule (absolute or multiplier increase) for a campaign over a time window.

mcp_meta_ads_search_interests

Search interest targeting options by keyword; returns id, name, audience_size, and path.

mcp_meta_ads_get_interest_suggestions

Get interest suggestions based on a list of existing interests.

mcp_meta_ads_validate_interests

Validate interest names or IDs for targeting, returning valid status and audience size.

mcp_meta_ads_search_behaviors

List available behavior targeting options with id, name, audience-size bounds, path, and description.

mcp_meta_ads_search_demographics

Get demographic targeting options by class (demographics, life_events, industries, income, etc.).

mcp_meta_ads_search_geo_locations

Search geographic targeting locations (country, region, city, zip, geo_market, electoral_district).

mcp_meta_ads_search

Generic search across accounts, campaigns, ads, and pages; auto-includes page search when the query mentions 'page'.

What this server can do

Meta Ads MCP provides tools for these capabilities — tap one to see every MCP server that does the same:

When to use it

  • Launch and manage Facebook/Instagram ad campaigns, ad sets, and ads through conversation
  • Upload images and build or A/B-test creatives (headlines, descriptions, CTAs) without leaving your AI client
  • Pull performance insights and get AI-driven recommendations on budget, targeting, and creative
  • Research and validate interest/behavior/demographic/geo targeting options
  • Adjust budgets, bids, and frequency caps, and schedule budget increases for high-demand periods

Security notes

Remote MCP handles auth securely in the cloud with no local token storage; OAuth login to Pipeboard then connect your Facebook Ads account. A direct-token variant appends ?token=YOUR_PIPEBOARD_TOKEN to the URL (get a token at pipeboard.co/api-tokens) — keep that token secret. All write operations require explicit confirmation and new campaigns default to PAUSED. Licensed under Business Source License 1.1 (free for individual/business use; no competing hosted service; converts to Apache 2.0 on 2029-01-01).

Meta Ads MCP FAQ

Is this an official Meta product?

No. It is an independent open-source project that uses Meta's public APIs. Meta, Facebook, and Instagram are trademarks of their respective owners. For an officially approved Meta app, see Pipeboard.

What is the easiest way to set it up?

Use the remote MCP. In Claude (Pro/Max) add an integration with URL https://meta-ads.mcp.pipeboard.co/, or in Cursor add an mcpServers entry with that url, then log in to Pipeboard and connect your Facebook Ads account.

Can I authenticate without the interactive login?

Yes — append ?token=YOUR_PIPEBOARD_TOKEN to the MCP URL. Get a token at pipeboard.co/api-tokens. Keep it secret.

Can I self-host it locally?

Yes, for advanced users. The package supports a local streamable-HTTP transport and can be installed from source; you must create your own Meta Developer App. See STREAMABLE_HTTP_SETUP.md. The maintainers recommend the remote MCP instead.

How does it handle safety on write operations?

Writes are explicit and require confirmation, and new campaigns start paused where the platform supports it.

Alternatives to Meta Ads MCP

Compare all alternatives →

AI-powered task-management system for AI-driven development that drops into Cursor, Windsurf, Claude Code, and more.

Unverified
stdio (local)
API key
JavaScript
15 tools
Updated 2 months agoRepo

Background computer-use MCP server that drives native macOS, Windows, and Linux desktop apps without stealing focus.

Unverified
stdio (local)
No auth
Rust
33 tools
Updated 11 hours agoRepo

Self-hosted MCP server for Jira and Confluence Cloud and Server/Data Center.

Verified
stdio (local)
API key
Python
11 tools
Updated 2 months agoRepo