Sandbox
@proxy-intell/facebook-ads-library-mcp

MCP server for Facebook Ads Library data

This server connects an MCP client to Facebook’s public ads library so an agent can search brands, fetch active ads, and compare creative strategies. It also includes image and video analysis tools, batch queries, caching, and media search for repeated work.

298 stars39 forksPythonUpdated 1mo ago
Who it's for

Builders who want their agent to research brands, ads, and campaign messaging from Facebook's public ads library.

What it delivers

You can ask your agent to pull live competitor ads and turn them into usable marketing insights without leaving your chat.

What it does

Brand lookup

Find a Facebook platform ID from one or many brand names with `get_meta_platform_id`.

Ad retrieval

Fetch current ads for one or many pages with `get_meta_ads`.

Image analysis

Analyze ad images for text, colors, people, and composition with `analyze_ad_image`.

Video analysis

Analyze single video ads with Gemini-based insights using `analyze_ad_video`.

Batch video analysis

Analyze multiple videos in one call with `analyze_ad_videos_batch` to reduce repeated work.

Cached media tools

Inspect, search, and clean up cached media with `get_cache_stats`, `search_cached_media`, and `cleanup_media_cache`.

How to get it

  1. 1Clone and run the install script
    git clone https://github.com/proxy-intell/facebook-ads-library-mcp.git
     cd facebook-ads-library-mcp
    
     # For macOS/Linux:
     ./install.sh
    
     # For Windows:
     install.bat
  2. 2Clone this repository
    git clone https://github.com/proxy-intell/facebook-ads-library-mcp.git
     cd facebook-ads-library-mcp
  3. 3Create a virtual environment and install dependencies
    python3 -m venv venv
     ./venv/bin/pip install -r requirements.txt

README

Proxy — Facebook Ads Library Hosted MCP

Facebook Ads Library MCP Server

This is a Model Context Protocol (MCP) server for the Facebook Ads Library.

With this you can search Facebook's public ads library for any company or brand, see what they're currently running and analyze their advertising. You can analyze ad images/text, analyze video ads with comprehensive insights, compare companies' strategies, and get insights into what's working in their campaigns.

Here's an example of what you can do when it's connected to Claude.

https://github.com/user-attachments/assets/a47aa689-e89d-4d4b-9df7-6eb3a81937ee


Hosted Version (Recommended)

The easiest way to use the Facebook Ads Library MCP is the hosted version from Proxy (useproxy.dev). No API keys, no Gemini key, no Python, no server to run — just connect and start querying.

  • Zero setup — nothing to install, configure, or maintain
  • 🔑 No API keys — skip the ScrapeCreators and Gemini keys entirely
  • 🔌 Works everywhere — ChatGPT, Claude, Cursor, Manus, and anywhere else that supports MCP
  • 🚀 Always up to date — new tools and fixes ship automatically

👉 Get started for free at useproxy.dev →

Prefer to run it yourself? The full self-host setup is documented below.

Hosted vs. Self-Host

Hosted — Proxy (useproxy.dev)Self-Host
Setup timeNone — connect and goPython env + config
API keys requiredNoneScrapeCreators + Gemini
InfrastructureFully managedYou run and maintain it
UpdatesAutomaticManual git pull
Works in ChatGPT, Claude, Cursor, Manus
Best forMost users who just want the dataDevelopers who want to customize the code

For most people, the hosted version is the fastest path. Choose self-host if you specifically want to modify or extend the server yourself.


Example Prompts

Single Brand Analysis

How many ads is 'AnthropicAI' running? What's their split across video and image?
What messaging is 'AnthropicAI' running right now in their ads?
Analyze the video ads from 'Nike' and extract their visual storytelling strategy, pacing, and brand messaging techniques.

Batch Analysis (New!)

Compare the current advertising strategies across Nike, Adidas, and Under Armour. Show me their ad volumes, messaging themes, and creative approaches.
Do a deep comparison to the messaging between 'AnthropicAI', 'Perplexity AI' and 'OpenAI'. Give it a nice forwardable summary.
Analyze the holiday campaign strategies for Coca-Cola, Pepsi, Dr Pepper, and Sprite. What themes are they using?
Get the current ads for all major streaming services: Netflix, Disney+, Hulu, HBO Max, Amazon Prime Video, and Apple TV+. Compare their positioning strategies.

Installation

Prerequisites

  • Python 3.12+
  • Anthropic Claude Desktop app (or Cursor)
  • Pip (Python package manager), install with python -m pip install
  • An API key for an ads data provider, set as SCRAPECREATORS_API_KEY (see configuration below)
  • A Google Gemini API key for video analysis (optional, only needed for video ads)

Prefer not to deal with API keys? See the Hosted Version above to skip setup entirely.

Quick Install (Recommended)

  1. Clone and run the install script
 git clone https://github.com/proxy-intell/facebook-ads-library-mcp.git
 cd facebook-ads-library-mcp

 # For macOS/Linux:
 ./install.sh

 # For Windows:
 install.bat

The install script will:

  • Create a virtual environment for dependency isolation
  • Install all required dependencies
  • Set up your configuration files
  1. Configure your API keys Edit the .env file that was created and add your API keys:
  • Set your ads data API key as SCRAPECREATORS_API_KEY
  • Get your Gemini API key at Google AI Studio (optional, for video analysis)
  1. Follow the displayed MCP configuration The install script will show you the exact configuration to add to Claude Desktop or Cursor.

Manual Install

If you prefer to install manually:

  1. Clone this repository
 git clone https://github.com/proxy-intell/facebook-ads-library-mcp.git
 cd facebook-ads-library-mcp
  1. Create a virtual environment and install dependencies
 python3 -m venv venv
 ./venv/bin/pip install -r requirements.txt
  1. Configure API keys Copy the template and configure your API keys: To obtain API keys:
  • Set your ads data API key as SCRAPECREATORS_API_KEY in the .env file
  • Get a Google Gemini API key here (optional, for video analysis)
  1. Connect to the MCP server Add the MCP server configuration to your Claude Desktop or Cursor config: Replace {{PATH_TO_PROJECT}} with the full path to where you cloned this repository. Note: The configuration uses the virtual environment's Python interpreter (venv/bin/python) for better dependency isolation and reliability. Note: API keys are now automatically loaded from the .env file, so you don't need to pass them as command line arguments. For Claude Desktop: Save this as claude_desktop_config.json in your Claude Desktop configuration directory at: For Cursor: Save this as mcp.json in your Cursor configuration directory at:
  2. Restart Claude Desktop / Cursor Open Claude Desktop and you should now see the Facebook Ads Library as an available integration. Or restart Cursor.

Technical Details

  1. Claude sends requests to the Python MCP server
  2. The MCP server intelligently batches and optimizes queries to the ads data API
  3. Smart caching reduces redundant API calls and improves performance
  4. Credit monitoring prevents workflow interruption with proactive error handling
  5. Data flows back through the chain to Claude with enhanced batch information

Available MCP Tools (Enhanced)

This MCP server provides tools for interacting with Facebook Ads library objects:

Tool NameDescriptionBatch Support
get_meta_platform_idReturns platform ID given one or many brand names✅ Multiple brands
get_meta_adsRetrieves ads for specific page(s) (platform ID)✅ Multiple platform IDs
analyze_ad_imageAnalyzes ad images for visual elements, text, colors, and composition⚡ Enhanced caching
analyze_ad_videoAnalyzes single ad video using Gemini AI for comprehensive insights⚡ Enhanced caching
analyze_ad_videos_batchNEW - Analyzes multiple videos in single API call for token efficiency🎬 ~88% token savings
get_cache_statsGets statistics about cached media (images and videos) and storage usage-
search_cached_mediaSearches previously analyzed media by brand, colors, people, or media type-
cleanup_media_cacheCleans up old cached media files to free disk space-

Troubleshooting

Common Issues

🆕 API Credits Exhausted:

  • When you see an "API credits exhausted" message, you need to top up your account
  • The error message includes a direct link to your provider's dashboard
  • You can check your current credit balance and purchase more credits there
  • The server will automatically resume working once credits are available

🆕 Rate Limit Exceeded:

  • If you hit rate limits, the server will tell you how long to wait
  • Batch operations help reduce the chance of hitting rate limits
  • Consider spacing out large batch requests if you frequently hit limits

API Key Not Found Error:

  • Ensure your .env file is in the project root directory
  • If you don't have a .env file, copy it from the template: cp .env.template .env
  • Check that your API keys are correctly formatted without quotes
  • Verify the .env file contains SCRAPECREATORS_API_KEY=your_key_here
  • For video analysis, ensure GEMINI_API_KEY=your_key_here is also added

Video Analysis Not Working:

  • Confirm you have a valid Google Gemini API key in your .env file
  • Video analysis requires the GEMINI_API_KEY environment variable

MCP Server Connection Issues:

  • Verify the path in your MCP configuration points to the correct location
  • Make sure you've created a virtual environment and installed dependencies with python3 -m venv venv && ./venv/bin/pip install -r requirements.txt
  • Ensure your MCP configuration uses the virtual environment Python path (ending with /venv/bin/python)
  • Restart Claude Desktop/Cursor after configuration changes

For additional Claude Desktop integration troubleshooting, see the MCP documentation. The documentation includes helpful tips for checking logs and resolving common issues.


FAQ

What is the easiest way to use the Facebook Ads Library MCP? The easiest way is the hosted version from Proxy (useproxy.dev). It requires no API keys, no installation, and no server — you connect it to ChatGPT, Claude, Cursor, or any MCP client and start querying immediately. You can start for free.

Do I need an API key to use this MCP? Only if you self-host. The hosted version at useproxy.dev handles all data access for you, so no ScrapeCreators or Gemini keys are needed. Self-hosting requires a SCRAPECREATORS_API_KEY (and a Gemini key for video analysis).

Which MCP clients does it work with? Both the hosted and self-hosted versions work with ChatGPT, Claude (Desktop and web), Cursor, Manus, and any other client that supports the Model Context Protocol.

Is there a free version? Yes — the hosted version from Proxy offers a free tier so you can start analyzing ads without any setup.

Should I self-host or use the hosted version? Use the hosted version if you just want fast, reliable access to Facebook Ads Library data with zero maintenance — this fits most users. Self-host only if you want to modify or extend the server code yourself.


Feedback

Your feedback will be massively appreciated. Please tell us which features on that list you like to see next or request entirely new ones.


License

This project is licensed under the MIT License.


Made with ❤️ by the team at Proxy. MseeP.ai Security Assessment Badge

Files in the repo

Repository payload18 top-level entries
  • .github
  • assets
  • src
  • .env.template
  • .gitignore
  • Dockerfile
  • glama.json
  • index.js
  • install-deps.js
  • install.bat
  • install.sh
  • LICENSE
  • mcp_server.py
  • package.json
  • readme.md
  • requirements.txt
  • server.json
  • smithery.yaml

Discussion (0)

Ask about usage, or say what you built with it

Sign in to join the discussion.

No comments yet. Be the first to say what this is good for.

More connectors

Real-time global intelligence dashboard. AI-powered news aggregation, geopolitical monitoring, and infrastructure tracking in a unified situational awareness interface

86k

High-performance code intelligence MCP server. Indexes codebases into a persistent knowledge graph — average repo in milliseconds. 158 languages, sub-ms queries, 99% fewer tokens. Single static binary, zero dependencies.

43k

Universal provider proxy for OpenAI Codex & Claude Code — use any LLM (Claude, Gemini, Grok, DeepSeek, Ollama…) with Codex CLI, App, SDK, and Claude Code

14k
okf-memory/
okf-agent-memory

Git-native persistent memory for AI coding agents. Implements Google OKF v0.2 with sub-300µs in-memory BM25 search, embedded MCP server, and progressive disclosure. Slashes token bloat by 80% with zero external databases or dependencies. Built in pure Go.

547
2akouwu/
reverify

Stop your AI from making things up — it proposes, deterministic tools decide, every claim checked against ground truth with evidence. Grounded facts and context survive resets. Reverse engineering is the proving ground. MCP server + CLI.

1.1k
t8y2/dbxConnectors

20 MB lightweight cross-platform database client for 90+ databases, including MySQL, PostgreSQL, SQLite, Redis, MongoDB, DuckDB, SQL Server, and Dameng. Built-in AI, MCP Server, CLI, desktop and Docker. | 轻量级跨平台数据库管理工具,支持 MySQL、PostgreSQL、SQLite、Redis、MongoDB、达梦等 90+ 数据库,提供桌面端、Docker、CLI、内置 AI 助手和 MCP Server。

19k