Skip to main content
Glama
hashcott

Meta Ads MCP Server

by hashcott

Get Meta Campaign Insights

meta_ads_get_campaign_insights
Read-onlyIdempotent

Retrieve performance insights for a specific Meta ad campaign. Analyze metrics like impressions, clicks, conversions, and spend to optimize advertising performance.

Instructions

Retrieve performance insights for a specific Meta ad campaign.

Fetches advertising statistics for a campaign, allowing analysis of metrics like impressions, clicks, conversions, spend, etc.

Args:

  • campaign_id (string): Campaign ID, e.g., '23843xxxxx'

  • fields (string[]): Metrics to retrieve. Common: campaign_name, impressions, clicks, spend, ctr, reach, actions, objective, cpc, cpm, date_start, date_stop

  • date_preset (string): Relative time range preset (default: last_30d)

  • time_range (object): Custom range {'since':'YYYY-MM-DD','until':'YYYY-MM-DD'}

  • level (string): Aggregation level: campaign, adset, ad (default: campaign)

  • breakdowns (string[]): Segment by: age, gender, country, publisher_platform, impression_device, etc.

  • See full parameter list in inputSchema

Returns: Object with:

  • data (array): List of insight records with requested metrics

  • paging (object): Pagination cursors. Use meta_ads_fetch_pagination_url with paging.next to get more results

Pagination note: When response contains paging.next, use meta_ads_fetch_pagination_url to retrieve additional pages automatically.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
fieldsNoMetrics and dimensions to retrieve. Common examples: impressions, reach, clicks, spend, ctr, cpc, cpm, cpp, frequency, actions, conversions, cost_per_action_type, date_start, date_stop
date_presetNoPredefined relative time range. Options: today, yesterday, this_month, last_month, this_quarter, maximum, last_3d, last_7d, last_14d, last_28d, last_30d, last_90d, last_week_mon_sun, last_week_sun_sat, last_quarter, last_year, this_week_mon_today, this_week_sun_today, this_year. Default: last_30d. Ignored if time_range, time_ranges, since, or until is providedlast_30d
time_rangeNoSpecific time range {'since':'YYYY-MM-DD','until':'YYYY-MM-DD'}. Overrides date_preset
time_rangesNoArray of time range objects for period comparison. Overrides time_range and date_preset
time_incrementNoTime breakdown granularity: integer 1-90 (days per point), 'monthly', or 'all_days' (single summary). Default: all_daysall_days
levelNoLevel of aggregation: account, campaign, adset, or ad
action_attribution_windowsNoAttribution windows for actions. Examples: 1d_view, 7d_view, 28d_view, 1d_click, 7d_click, 28d_click, dda, default
action_breakdownsNoSegments the actions results. Examples: action_device, action_type, conversion_destination, action_destination. Default: [action_type]
action_report_timeNoWhen actions are counted: impression (time of ad impression), conversion (time of conversion), mixed. Default: mixed
breakdownsNoSegment results by dimensions. Examples: age, gender, country, region, dma, impression_device, publisher_platform, platform_position, device_platform
default_summaryNoIf true, include an additional summary row in the response. Default: false
use_account_attribution_settingNoIf true, use the attribution settings defined at the ad account level. Default: false
use_unified_attribution_settingNoIf true, use unified attribution settings defined at the ad set level. Recommended for consistency with Ads Manager. Default: true
filteringNoList of filter objects. Each has 'field', 'operator', and 'value'. Example: [{field: 'spend', operator: 'GREATER_THAN', value: 50}]
sortNoSort field and direction. Format: {field}_ascending or {field}_descending. Example: impressions_descending
sinceNoStart timestamp for time-based pagination (Unix or strtotime). Only used when time_range and time_ranges are not set
untilNoEnd timestamp for time-based pagination (Unix or strtotime). Only used when time_range and time_ranges are not set
localeNoLocale for text responses (e.g., en_US). Controls language and formatting
limitNoMaximum number of results to return per page (1-100, default: 25)
afterNoCursor for the next page of results, from response.paging.cursors.after
beforeNoCursor for the previous page of results, from response.paging.cursors.before
offsetNoAlternative pagination: number of results to skip
campaign_idYesCampaign ID, e.g., '23843xxxxx'

Latest Blog Posts

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/hashcott/meta-ads-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server