MCP docs › Tools › Meta Ad Library Search
Meta Ad Library Search
facebook_ads_scrape slow · returns a job Social platforms
Search Meta's Ad Library (Facebook + Instagram) for LIVE ads by brand, advertiser or keyword. Returns each ad's advertiser page, real ad copy, call-to-action, start date, media type and Ad Library link. An empty result means the library genuinely has no matching ads; a blocked run is reported as an error instead.
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
query |
string | yes | — | Keyword or advertiser/page name to search the Ad Library for. |
country |
string | no | "US" |
ISO country code to scope ads to, e.g. 'US', 'GB', 'PK'. |
status |
string | no | "active" |
Ad delivery status. One of: active, inactive, all. |
limit |
integer | no | 20 |
Max ads to return. |
Returns
One row per ad creative.
Each row typically carries: advertiser page_url ad_text cta media_type start_date ad_library_url platforms
The response body is { status, count, fields, results }. Runs that exceed the inline wait return { status: "running", job_id, tool_flow } instead — see Jobs & errors.
Call it over MCP
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "facebook_ads_scrape",
"arguments": {
"query": "Athletic Greens",
"country": "US",
"status": "active",
"limit": 20
}
}
}
Call it over the REST API
curl -X POST https://convertfleet.online/api/tool-run \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"tool":"fbads","params":{"query":"Athletic Greens","country":"US","status":"active","max_results":20}}'
Both paths run the same job engine, enforce the same plan limits and count against the same monthly quota. See the REST API page.
Related tools
JSON Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Keyword or advertiser/page name to search the Ad Library for."
},
"country": {
"type": "string",
"description": "ISO country code to scope ads to, e.g. 'US', 'GB', 'PK'.",
"default": "US"
},
"status": {
"type": "string",
"description": "Ad delivery status.",
"enum": [
"active",
"inactive",
"all"
],
"default": "active"
},
"limit": {
"type": "integer",
"description": "Max ads to return.",
"default": 20
}
},
"additionalProperties": false,
"required": [
"query"
]
}