Skip to main content

Adiffy Meta Ads MCP Server

Model Context Protocol (MCP) server for Meta Ads API

Provides 29+ tools for managing Meta (Facebook/Instagram) advertising campaigns through any MCP-compatible client.

Features

  • Account Management — List ad accounts, get account details
  • Campaign Operations — Create, read, update campaigns
  • Ad Set Management — Manage targeting, budgets, schedules
  • Ad Management — Create/edit ads with creatives
  • Insights & Reporting — Performance metrics with breakdowns
  • Targeting — Interest search, audience estimation, demographics
  • Creative Management — Preview ad creatives and images
  • Budget Schedules — Automated budget management
  • Ads Library — Search Meta's Ad Library

Quick Start

Prerequisites

  • Python 3.10+
  • Meta App credentials (META_APP_ID, META_APP_SECRET)
  • Meta API access token (META_ACCESS_TOKEN)

Environment Variables

# Required
export META_APP_ID="your_meta_app_id"
export META_APP_SECRET="your_meta_app_secret"
export META_ACCESS_TOKEN="your_access_token"

# Optional
export META_ADS_ENABLE_REPORTS="1"          # Enable report generation
export META_ADS_DISABLE_CALLBACK_SERVER="1" # Disable local OAuth server
export META_ADS_DISABLE_LOGIN_LINK="1"      # Disable login link tool

Installation

# Install with pip
pip install -e .

# Or with uv
uv pip install -e .

Running

# Default: stdio transport (for MCP clients like Claude Desktop)
adiffy-meta-ads-mcp

# HTTP transport (for web integrations)
adiffy-meta-ads-mcp --transport streamable-http --port 8080

# Login only
adiffy-meta-ads-mcp --login

Docker

docker build -t adiffy-meta-ads-mcp .
docker run -e META_APP_ID="..." -e META_APP_SECRET="..." -e META_ACCESS_TOKEN="..." adiffy-meta-ads-mcp

MCP Client Configuration

Add to your MCP client config (e.g., mcp_config.json):

{
  "meta-ads": {
    "command": "adiffy-meta-ads-mcp",
    "env": {
      "META_APP_ID": "your_app_id",
      "META_APP_SECRET": "your_app_secret",
      "META_ACCESS_TOKEN": "your_token"
    }
  }
}

Available Tools

Tool Description
get_ad_accounts List all accessible ad accounts
get_account_info Get details for a specific account
get_campaigns List campaigns with filtering
get_campaign_details Get campaign details and metrics
create_campaign Create a new campaign
get_adsets List ad sets with filtering
get_adset_details Get ad set details
update_adset Update ad set settings
get_ads List ads with filtering
get_ad_details Get ad details
get_ad_creatives Get creative details for ads
get_creative_details Get specific creative details
get_ad_image Download ad creative images
update_ad Update ad settings
get_insights Get performance insights
search_interests Search for targeting interests
get_interest_suggestions Get interest suggestions
estimate_audience_size Estimate target audience size
search_behaviors Search targeting behaviors
search_demographics Search demographics
search_geo_locations Search geographic locations
create_budget_schedule Create budget schedules
get_login_link Start OAuth authentication
search OpenAI deep research search
fetch OpenAI deep research fetch

Authentication

The server supports two authentication modes:

  1. Direct Token (recommended for production): Set META_ACCESS_TOKEN environment variable
  2. Local OAuth (for development): Uses a local callback server to handle the Meta OAuth flow

License

MIT License — see LICENSE for details.

Metadata

Release files for adiffy-meta-ads-mcp 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for adiffy-meta-ads-mcp 1.0.0
File Size Uploaded
adiffy_meta_ads_mcp-1.0.0.tar.gz 229.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for adiffy-meta-ads-mcp 1.0.0
File Interpreter ABI Platform
adiffy_meta_ads_mcp-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 307.9 kB

Release files / adiffy_meta_ads_mcp-1.0.0.tar.gz

Download URL adiffy_meta_ads_mcp-1.0.0.tar.gz
Size 229.4 kB
Tags Source
SHA-256 checksum
How to use checksums
c6e58cda6aff656a70bc94c3e6a8ad4d43e6ebc4eaf9e962fc00c10bb85c8cac
BLAKE2b-256 checksum
How to use checksums
d658f13b7cd2b2ab519d97b4b3f08db231c57a27fd62496b71894f4cad322490
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.0

Release files / adiffy_meta_ads_mcp-1.0.0-py3-none-any.whl

Download URL adiffy_meta_ads_mcp-1.0.0-py3-none-any.whl
Size 78.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9abb3faa0b4dd706bf087886ce3a31a917b5bb1c606c24523c9a39eeffc38854
BLAKE2b-256 checksum
How to use checksums
14c7940c1c09cbf6e4bdceaaeddcf915820bda50094d3ba98b26dd435857bd06
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.0

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page