Meta Ads by Get MCP Ads
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| LOG_LEVEL | No | debug, info, warn, error. Default is info. | |
| META_API_VERSION | No | Graph API version. Override to pin another. Default is v26.0. | |
| META_ACCESS_TOKEN | Yes | Required. Your Meta access token. | |
| META_ENABLE_WRITES | No | Set to '1' to register the 23 write tools. Default is unset. |
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
} |
| resources | {
"subscribe": false,
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| meta_health_checkA | Agent-ready read-only health check: validates token metadata, lists accessible ad accounts, and warns about missing read scopes without exposing the access token. |
| meta_get_business_assetsA | Discover accessible Meta Business assets read-only: businesses, pages, Instagram accounts, pixels, and datasets when permissions allow. |
| meta_get_pagesA | List accessible Facebook Pages with id, name, category, tasks, picture, and linked Instagram account references when available. |
| meta_get_instagram_accountsA | List Instagram accounts linked to accessible Pages, Business Manager assets, or an ad account when permissions allow. |
| meta_get_pixelsA | List pixels and datasets from an ad account or Business Manager when accessible, returning actionable warnings for permission-limited edges. |
| meta_get_ad_activityA | Read ad account activity logs from /{ad_account_id}/activities with object, event, actor, timestamp, and extra_data fields. |
| meta_get_delivery_diagnosticsA | Aggregate read-only delivery diagnostics across campaigns, ad sets, and ads using status/effective_status/issues_info where available plus simple delivery insights. |
| meta_get_creative_assetsA | Return ad-linked creative media with actual ad names, collection covers, all carousel/flexible components, resolved image hashes and video URLs. Catalog-only ads are classified separately; use the hosted GetMCPAds service for an interactive visual gallery. Raw creative metadata remains available for diagnostics. |
| meta_get_audience_detailsA | Read detailed custom, saved, and lookalike audiences with pagination and rich fields where permissions allow. |
| meta_get_catalog_productsA | Read Product Catalogs and Product Items when catalog access is available. Returns join-ready product metadata without creating or updating catalog assets. |
| meta_join_product_insightsA | Query product-breakdown insights and enrich rows with Product Catalog metadata when catalog access is available. |
| meta_get_brand_safety_controlsA | Read brand safety, suitability, placement, and context-control signals from ad account/ad set targeting and optional block-list edges. |
| meta_interpret_experiment_resultsA | Read and interpret A/B test or conversion lift study results with confidence guardrails, cells, objectives, and optional cell entities. |
| meta_get_organic_content_enrichmentA | Read Facebook Page posts and Instagram media with URLs, native periods and optional insights. These are content insights, not Ads Insights; do not infer an organic-only breakdown. |
| meta_list_ad_accountsA | List all Meta ad accounts accessible with the current token. Returns account ID, name, currency, timezone, and status. |
| meta_get_account_detailsA | Get detailed information for a specific Meta ad account: name, currency, timezone, spend cap, status, business info. |
| meta_get_campaignsA | List campaigns for a Meta ad account. Returns campaign ID, name, status, objective, budget, and bid strategy. |
| meta_get_adsetsA | List ad sets for a Meta ad account, optionally filtered by campaign. Returns targeting, budget, optimization, and schedule info. |
| meta_get_adsA | List ads for a Meta ad account, optionally filtered by ad set. Returns ad ID, name, status, and creative reference. |
| meta_get_insightsA | Query Meta Ads performance insights. Supports 170+ metrics, 43+ breakdowns with intelligent query planning. Use meta://metrics resource to see available metrics. Use meta://breakdowns for available breakdowns. The query planner automatically splits incompatible metric/breakdown combinations into multiple API requests and merges results. |
| meta_get_campaign_structureA | Get hierarchical campaign structure: campaigns -> ad sets -> ads. Useful for understanding account organization. |
| meta_get_creativesB | Get ad creative content: text, images, videos, links, call-to-action. Returns creative details for specified ads. |
| meta_get_audiencesB | List custom, saved, and lookalike audiences for a Meta ad account. |
| meta_get_ad_studiesA | List conversion lift studies and A/B tests (Ad Studies) for an ad account. Includes study type, status, and cells. |
| meta_get_study_resultsA | Get detailed results for a conversion lift or A/B test study. Returns objectives, cells, and lift results. |
| meta_validate_queryA | Validate a metric/breakdown combination BEFORE executing. Returns errors and warnings. Use this to check if your query will work. |
| meta_get_page_postsA | Read published Facebook Page posts using a Page token resolved from the connected user. Returns exact PageID_PostID, message, permalink and media attachments. Use postId for an exact existing-post ad preflight. No Instagram media, comments, likes or insights are requested; this read alone does not establish advertising eligibility. |
| meta_debug_tokenA | Check the current access token validity, expiration, and granted scopes. Useful for diagnosing auth issues. |
| meta_search_entitiesA | Search campaigns, ad sets, or ads by name within an ad account. Useful for finding specific entities. |
| meta_get_node_fieldsA | Read arbitrary flat fields from one Meta Graph node. This GET-only escape hatch covers newly released campaign, ad set, ad, creative, audience, catalog, Page, Instagram, pixel, and other accessible node fields without waiting for a fixed MCP schema update. |
| meta_list_edge_rawA | List an allowlisted read-only Meta Graph edge with caller-selected flat fields, filters, and cursor pagination. Use this for broad metadata/entity discovery when a specialized tool does not expose a newly added field. |
| meta_get_insights_rawA | Query the Meta Insights edge with validated native field names, breakdowns, action breakdowns, attribution windows, filters, sort, summary, and pagination. This complements meta_get_insights when Meta adds fields before the curated metric catalog is updated. |
| meta_search_targeting_optionsA | Search Meta's read-only targeting metadata for interests, validated interests, geographies, locales, countries, cities, regions, markets, or postal codes. |
| meta_get_ad_previewA | Get the read-only preview markup for an existing Meta ad in a requested placement format. The response may contain an iframe body but never creates or edits a creative. |
| meta_list_ad_imagesA | List the ad account image library (/adimages): hash, name, dimensions, status, a permanent publicly served display URL (permalink_url), short-lived CDN URLs, and optionally the creatives using each image. |
| meta_list_ad_videosA | List the ad account video library (/advideos): title, duration, processing status, and publicly served thumbnails (preferred and largest sizes). Source file URLs are returned only on request because they expire quickly. |
| meta_get_video_sourcesA | Resolve fresh download URLs (source) and thumbnails for specific ad videos. Call this at download time: the returned URLs are signed and expire quickly. |
| meta_get_entity_configurationA | Read a specific entity in its ad account for reconciliation. Read-only; never creates, changes or retries the entity. Missing or normalized fields must be inspected before claiming an exact match. |
| meta_get_uploaded_videoA | Check video processing and membership in the selected account library. If the first page misses the ID, use the video title to narrow the account-scoped lookup. A direct video read alone never proves membership or readiness. Bounded pagination; not_found is not success. |
| meta_get_adset_configurationA | Read an existing ad set, its parent campaign budget/objective and account currency before preparing an edit. Returns native settings; no mutation. |
| meta_get_catalog_batch_statusA | Read the completion and per-item errors for a catalog batch handle. Acceptance of a batch is not proof that every product succeeded. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| meta-metrics | |
| meta-breakdowns | |
| meta-compatibility | |
| meta-manifest | |
| meta-recipes | |
| meta-p2-readonly | |
| meta-app-review |
TDQS
Scored across 41 tools
Multiple tool names are nearly identical or easily confused: meta_get_creatives vs meta_get_creative_assets, meta_get_audiences vs meta_get_audience_details, and meta_get_ad_studies vs meta_get_study_results. There is also a cluster of raw/escape-hatch tools (meta_get_node_fields, meta_list_edge_raw, meta_get_insights_raw) that overlap conceptually. Descriptions help, but an agent would need to read closely to avoid misselecting.
All names share the meta_ prefix and snake_case, making them readable, but verb usage is inconsistent: meta_get_campaigns, meta_list_ad_accounts, meta_validate_query, meta_debug_token, and meta_interpret_experiment_results mix get/list/debug/validate/interpret. The list/get distinction is not applied predictably across collection endpoints.
With 41 tools, this surface is too large for a coherent MCP tool set and starts to resemble raw API exposure rather than a curated interface. The broad domain justifies many tools, but this count will slow agent selection and increase the risk of choosing the wrong endpoint.
For a read-only Meta Ads server, the coverage is exceptionally complete: account discovery, entity hierarchy, creatives, media, audiences, insights, studies, catalogs, diagnostics, and raw fallbacks are all present. The server even includes validation, preview, and health-check tools, so there are no obvious dead ends for the stated read-only purpose.