Facebook Ad Library MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| FBADS_BACKEND | No | The backend to use. Defaults to the free local browser. Set to 'scrapecreators' or 'apify' to use a hosted provider. | |
| META_ADS_ARCHIVE_TOKEN | No | Meta Ad Library API access token. Enables EU transparency data for ads. | |
| SCRAPECREATURES_API_KEY | No | API key for the Scrapecreators provider. Required when FBADS_ACKEND is set to 'scrapecreators'. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| search_adsA | Search Meta's public Ad Library by keyword, or list every ad from one advertiser by passing page_id. Returns advertiser, copy, creative count, destination domain, call to action, platforms and how long each ad has run. Works for ordinary commercial advertisers in any country. Spend and reach are null outside the EU, which is correct rather than a failure: that data is only published for EU and political ads. |
| list_advertisersA | Resolve a brand name to the advertiser Pages actually running ads for it, ranked by how many ads each is running. Use this first when you know the brand but not its Page ID, then pass that ID to search_ads to get everything they run. |
| get_adA | Fetch a single ad by its Ad Library ID, with every creative, all copy variants, the full destination URL and any transparency data. Use this after search_ads when one ad is worth studying properly. |
| transcribe_adA | Speech to text for a video ad, so its spoken script becomes readable. Only the scrapecreators backend can do this. On any other backend it explains that rather than failing silently. |
| ad_library_urlA | Turn a set of filters into the public Ad Library URL, so a person can open the same search in a browser and check the results independently. Useful when a search comes back empty and you need to tell 'no results' apart from 'blocked'. |
| view_ad_creativeA | Return the actual images from one ad so you can see them, rather than only reading its copy. Use this when the question is about what an ad looks like: the visual hook, the layout, the product shot, how the text sits on the image, or what several ads have in common visually. A carousel returns each card in order. Video ads have no still to show and report that instead. Needs no API key. |
| diff_advertiserA | Compare an advertiser's ads now against the last time this server looked, and report what they started and stopped running. The first call on a Page records a baseline and reports nothing changed, which is expected: call it again later to see movement. This is the only tool here that answers 'what changed' rather than 'what is running'. |
| get_eu_transparencyA | Spend, impressions, reach and demographic breakdown from Meta's official Ad Library API. Covers ads delivered in the EU and political or issue ads anywhere. Returns nothing for an ordinary US commercial ad because that data is not published, which is the correct answer rather than an error. Needs META_ADS_ARCHIVE_TOKEN, which is free. |
| backend_statusA | Which backend is serving requests, whether it costs money per call, and which optional features are available in this configuration. Call this when a tool reports something unavailable, before telling the user it cannot be done. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| competitor-teardown | Study one competitor's live ads and report what they are testing |
| creative-angles | Pull the distinct marketing angles being run for a keyword |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| ad-library-config | |
| ad-library-concepts |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/navidmoazzez/facebook-ad-library-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server