Meta Ads API MCP server

Provides a bridge to Facebook's Marketing API for analyzing ad campaigns, reviewing creatives, and monitoring metrics through secure OAuth authentication
Back to servers
Setup instructions
Provider
Yves Junqueira
Release date
Apr 12, 2025
Language
Python
Package
Stats
40.6K downloads
311 stars

Meta Ads MCP is a server implementing the Model Context Protocol (MCP) that allows you to manage and analyze your Meta advertising campaigns through AI interfaces. With it, you can retrieve performance data, visualize ad creatives, and get strategic insights for ads running on Facebook, Instagram, and other Meta platforms.

Getting Started with Remote MCP (Recommended)

The fastest way to get started is to use the Remote MCP service, which requires no technical setup.

For Claude Pro/Max Users

  1. Go to claude.ai/settings/integrations (requires Claude Pro or Max)
  2. Click "Add Integration" and enter:
    • Name: "Pipeboard Meta Ads" (or any name you prefer)
    • Integration URL: https://mcp.pipeboard.co/meta-ads-mcp
  3. Click "Connect" next to the integration and follow the prompts to:
    • Login to Pipeboard
    • Connect your Facebook Ads account

For Cursor Users

Add the following to your ~/.cursor/mcp.json. Once you enable the remote MCP, click on "Needs login" to finish the login process.

{
  "mcpServers": {
    "meta-ads-remote": {
      "url": "https://mcp.pipeboard.co/meta-ads-mcp"
    }
  }
}

For Other MCP Clients

Use the Remote MCP URL: https://mcp.pipeboard.co/meta-ads-mcp

Quick Local Setup

If you prefer to run the server locally:

# Install via uvx (recommended)
uvx meta-ads-mcp

# Set your Pipeboard token
export PIPEBOARD_API_TOKEN=your_pipeboard_token

Features

  • AI-Powered Campaign Analysis: Let your LLM analyze campaigns and provide actionable insights
  • Strategic Recommendations: Get data-backed suggestions for optimizing ad spend, targeting, and creatives
  • Automated Monitoring: Track performance metrics and get alerts about significant changes
  • Budget Optimization: Receive recommendations for reallocating budget to better-performing ad sets
  • Creative Improvement: Get feedback on ad copy, imagery, and calls-to-action
  • Dynamic Creative Testing: Easy API for both simple ads and advanced A/B testing
  • Campaign Management: Request changes to campaigns, ad sets, and ads
  • Cross-Platform Integration: Works with Facebook, Instagram, and all Meta ad platforms
  • Universal LLM Support: Compatible with any MCP client

Available MCP Tools

Account Management

  • mcp_meta_ads_get_ad_accounts - Get ad accounts accessible by a user
  • mcp_meta_ads_get_account_info - Get detailed information about a specific ad account
  • mcp_meta_ads_get_account_pages - Get pages associated with a Meta Ads account
  • mcp_meta_ads_get_login_link - Get a clickable login link for Meta Ads authentication

Campaign Management

  • mcp_meta_ads_get_campaigns - Get campaigns for a Meta Ads account with optional filtering
  • mcp_meta_ads_get_campaign_details - Get detailed information about a specific campaign
  • mcp_meta_ads_create_campaign - Create a new campaign in a Meta Ads account
  • mcp_meta_ads_create_budget_schedule - Create a budget schedule for a Meta Ads campaign

Ad Set Management

  • mcp_meta_ads_get_adsets - Get ad sets for a Meta Ads account with optional filtering
  • mcp_meta_ads_get_adset_details - Get detailed information about a specific ad set
  • mcp_meta_ads_create_adset - Create a new ad set in a Meta Ads account
  • mcp_meta_ads_update_adset - Update an ad set with new settings

Ad Management

  • mcp_meta_ads_get_ads - Get ads for a Meta Ads account with optional filtering
  • mcp_meta_ads_get_ad_details - Get detailed information about a specific ad
  • mcp_meta_ads_create_ad - Create a new ad with an existing creative
  • mcp_meta_ads_update_ad - Update an ad with new settings

Creative Management

  • mcp_meta_ads_get_ad_creatives - Get creative details for a specific ad
  • mcp_meta_ads_create_ad_creative - Create a new ad creative using an uploaded image hash
  • mcp_meta_ads_update_ad_creative - Update an existing ad creative with new content
  • mcp_meta_ads_upload_ad_image - Upload an image to use in Meta Ads creatives
  • mcp_meta_ads_get_ad_image - Get, download, and visualize a Meta ad image

Analytics and Insights

  • mcp_meta_ads_get_insights - Get performance insights for a campaign, ad set, ad or account

Targeting Tools

  • mcp_meta_ads_search_interests - Search for interest targeting options by keyword
  • mcp_meta_ads_get_interest_suggestions - Get interest suggestions based on existing interests
  • mcp_meta_ads_validate_interests - Validate interest names or IDs for targeting
  • mcp_meta_ads_search_behaviors - Get all available behavior targeting options
  • mcp_meta_ads_search_demographics - Get demographic targeting options
  • mcp_meta_ads_search_geo_locations - Search for geographic targeting locations
  • mcp_meta_ads_search - Generic search across accounts, campaigns, ads, and pages

Usage Examples

Creating a Campaign

{
  "name": "2025 - Bedroom Furniture - Awareness",
  "account_id": "act_123456789012345",
  "objective": "OUTCOME_AWARENESS",
  "special_ad_categories": [],
  "status": "PAUSED",
  "buying_type": "AUCTION",
  "bid_strategy": "LOWEST_COST_WITHOUT_CAP",
  "daily_budget": 10000
}

Testing Your Connection

  1. Verify account access: Ask your LLM to use mcp_meta_ads_get_ad_accounts
  2. Check account details: Use mcp_meta_ads_get_account_info with your account ID
  3. List campaigns: Try mcp_meta_ads_get_campaigns to see your ad campaigns

Troubleshooting

If you encounter any issues with the local installation, consider switching to the Remote MCP at pipeboard.co for a hassle-free experience.

How to install this MCP server

For Claude Code

To add this MCP server to Claude Code, run this command in your terminal:

claude mcp add-json "meta-ads-remote" '{"command":"npx","args":["mcp-remote","https://mcp.pipeboard.co/meta-ads-mcp"]}'

See the official Claude Code MCP documentation for more details.

For Cursor

There are two ways to add an MCP server to Cursor. The most common way is to add the server globally in the ~/.cursor/mcp.json file so that it is available in all of your projects.

If you only need the server in a single project, you can add it to the project instead by creating or adding it to the .cursor/mcp.json file.

Adding an MCP server to Cursor globally

To add a global MCP server go to Cursor Settings > Tools & Integrations and click "New MCP Server".

When you click that button the ~/.cursor/mcp.json file will be opened and you can add your server like this:

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

Adding an MCP server to a project

To add an MCP server to a project you can create a new .cursor/mcp.json file or add it to the existing one. This will look exactly the same as the global MCP server example above.

How to use the MCP server

Once the server is installed, you might need to head back to Settings > MCP and click the refresh button.

The Cursor agent will then be able to see the available tools the added MCP server has available and will call them when it needs to.

You can also explicitly ask the agent to use the tool by mentioning the tool name and describing what the function does.

For Claude Desktop

To add this MCP server to Claude Desktop:

1. Find your configuration file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json

2. Add this to your configuration file:

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

3. Restart Claude Desktop for the changes to take effect

Want to 10x your AI skills?

Get a free account and learn to code + market your apps using AI (with or without vibes!).

Nah, maybe later