ClaudeCodeMod

All shelves / MCP servers

Facebook Ads MCP Server

Tisik79/MCP-Facebook · 13 stars · TypeScript

MCP server MCP server pro zadávání a vyhodnocování reklamních kampaní na Facebooku pomocí Claude AI

Install

The repo has no one-line install. Follow its README.

Open the repo

Files

README.md

Facebook Ads MCP Server

🇨🇿 Česká verze

MCP server for managing Facebook ads straight from Claude AI. No manual token hunting — sign in with Facebook once and you're done.

Features

  • Campaign management (create, update, delete)
  • Ad sets and individual ads
  • Analytics and insights
  • Custom and lookalike audiences
  • Page posts
  • Automatic token management (page tokens are permanent)

Installation

Requirements

  • Node.js 18+
  • Claude Desktop

1. Clone the repository

git clone https://github.com/Tisik79/MCP-Facebook.git
cd MCP-Facebook
npm install
npm run build

2. Add to Claude Desktop

Open the Claude Desktop config file:

  • Mac: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Add:

{
  "mcpServers": {
    "facebook-ads": {
      "command": "node",
      "args": ["/PATH/TO/MCP-Facebook/dist/index.js"]
    }
  }
}

3. First run — 5-minute setup

On first start, a wizard walks you through creating your own Facebook App:

Steps:
  1. Click "Create App"
  2. Choose type: "Business"
  3. Enter any name (e.g. "My Ads")
  4. After creation, go to Settings → Basic
  5. Copy the App ID and App Secret
  6. Add the "Facebook Login" product and set:
     Valid OAuth Redirect URIs: http://localhost:3456/auth/callback
  7. In Basic settings, add "localhost" to App Domains

After entering the App ID and Secret, a browser opens automatically → sign in with Facebook → done.

Re-login / adding pages

node dist/index.js login

Usage in Claude

"Show my active campaigns"
"Create a campaign for MyBrand with a $20 daily budget"
"How did my ads perform last month?"
"Post an update to page XY"

Available Tools

Tool Description
connect_facebook_account / set_facebook_token Sign in via OAuth / store a token from Graph API Explorer
list_connected_accounts / set_active_account Show connected pages & accounts / switch the active one
facebook_setup_help Step-by-step connection guide
get_campaigns List campaigns
create_campaign Create a new campaign
update_campaign Update a campaign (incl. bidStrategy) — read-after-write
get_campaign_details Campaign detail (budget, bid_strategy, spend today)
delete_campaign Delete a campaign
get_campaign_insights Campaign analytics
get_adset_insights / get_ad_insights Ad set / ad level analytics
get_adsets List ad sets
create_ad_set Create an ad set (incl. lead fields promotedObject / destinationType)
update_adset Update an ad set (name / status) — real write + read-after-write verification
get_ads List ads (filtered via adSetId/campaignId edge + status)
get_ad Ad detail incl. creative (link, CTA, copy, video/image)
upload_ad_media Upload an image (image_hash) or video (video_id)
create_adcreative Create a creative from object_story_spec
create_ad Create an ad (defaults to PAUSED)
update_ad Update an ad (name/status/creative) — read-after-write
delete_ad Delete an ad
create_lead_form Create an instant lead form on a page
get_lead_forms List lead forms (id, name, status, leads_count)
get_pixels Account pixels (id, name) for promoted_object
create_pixel / update_pixel / get_pixel Pixel management (detail incl. last_fired_time)
get_pixel_stats Pixel event statistics (verify events are flowing)
search_interests / get_interest_suggestions Interest search & suggestions for targeting
search_behaviors Behavior categories for targeting
search_geo_locations Geo keys (region/city/zip) for targeting.geo_locations
estimate_audience_size Audience size estimate for a given targeting spec
send_conversion_event / send_conversion_events_batch Conversions API — server-side events (auto SHA-256 PII hashing)
get_custom_conversions / get_custom_conversion List / detail of custom conversions
create_custom_conversion / update_custom_conversion / delete_custom_conversion Custom conversions (custom_conversion_id for lead campaigns)
get_offline_conversion_sets / create_offline_conversion_set / upload_offline_conversions Offline conversions from your CRM
update_adcreative Update a creative (name/status — content is immutable)
get_audiences Custom audiences
create_custom_audience Create an audience
create_lookalike_audience Lookalike audience
create_post Page post
create_video_post Video page post (resumable upload, unpublished by default)

The scope of the targeting/conversion tool set was inspired by Draivix/aidvertaiser (David Strejc, MIT) — thanks!

Lead Campaigns (OUTCOME_LEADS)

Lead collection has two paths; both require promotedObject + destinationType on the ad set:

  • Website conversions — optimizationGoal=OFFSITE_CONVERSIONS, destinationType=WEBSITE, promotedObject={ pixel_id, custom_event_type: "LEAD" } (find your Pixel ID via get_pixels).
  • Instant form — optimizationGoal=LEAD_GENERATION, destinationType=ON_AD, promotedObject={ page_id }, creative with call_to_action.value.lead_gen_form_id (create the form via create_lead_form).

Without promotedObject + destinationType, Meta returns "Invalid parameter". For accounts with campaign-level budget (CBO), do not set a budget on the ad set — it inherits from the campaign. If the campaign uses a cap bid strategy (LOWEST_COST_WITH_BID_CAP), the ad set requires bidAmount; otherwise set the campaign to bidStrategy=LOWEST_COST_WITHOUT_CAP.

License

MIT

Facts

Kind
MCP server
Repo
Tisik79/MCP-Facebook
Group
Uncategorized
Stars
13
Language
TypeScript
Last push
2026-07-06
Forks
7

More on this shelf

  1. 1REAio.github.morluto/reaReverse engineer anything from your terminal or agent with one CLI and MCP server.125.3k
  2. 2com.browser-use/browser-usecom.browser-use/browser-useControl a real Chrome browser to complete any task: fill forms, extract data, book flights.117.7k
  3. 3World Monitorapp.worldmonitor/mcpLive markets, conflicts, country risk, chokepoints, energy, and China decision signals. 93 tools.88.3k
  4. 4Scrapling MCP Serverd4vinci/scrapling🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl! Don't be shy, join here: https://discord.gg/EMgGbDceNQ and follow here for daily tips and tricks: https://x.com/Scraplingdev86.9k
  5. 5Everythingmodelcontextprotocol/serversThis MCP server attempts to exercise all the features of the MCP protocol. It is not intended to be a useful server, but rather a test server for builders of MCP clients. It implements prompts, tools, resources, sampling, and more to showcase MCP capabilities.85.8k
  6. 6Fetchmodelcontextprotocol/serversA Model Context Protocol server that provides web content fetching capabilities. This server enables LLMs to retrieve and process content from web pages, converting HTML to markdown for easier consumption.85.8k