Skip to main content
Glama
get-mcp-ads

Meta Ads by Get MCP Ads

meta get insights

meta_get_insights
Read-onlyIdempotent

Query Meta Ads performance insights across 170+ metrics and 43+ breakdowns; intelligent query planning automatically splits incompatible combinations and merges results.

Instructions

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.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
adIdsNoRestrict ad-level insights to these ad IDs.
levelYesAggregation level: account, campaign, adset, or ad
limitNoMaximum number of returned items or rows. The declared bounds and default apply; use pagination for additional results.
metricsYesMetric keys from meta://metrics (e.g., impressions, spend, ctr)
timeRangeNoCustom date range with since/until in YYYY-MM-DD format
breakdownsNoBreakdown keys from meta://breakdowns (e.g., age, gender, country)
datePresetNoPredefined date range (e.g., last_7d, last_30d)
adAccountIdYesAd account ID (e.g., act_123456789)
timeIncrementNoTime granularity: 1 (daily), 7 (weekly), 'monthly', or 'all_days'
attributionModeNoUse Meta account settings, ad-set settings, or explicitly supplied windows. No setting is inferred from returned numbers.account
actionReportTimeNoDate basis for actions, sent explicitly to Meta.impression
attributionWindowsNoOnly with attributionMode explicit. These windows are sent identically to every split query and account total.
includeAccountTotalsNoAlso read native account-level totals with the same dates, metrics and attribution. Requires no adIds or breakdowns.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYesOriginal tool result: parsed JSON when the text is JSON, otherwise the text or multiple MCP content blocks. Provider fields depend on the selected query.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv2.0.1

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds valuable behavioral context beyond annotations: the query planner automatically splits incompatible metric/breakdown combinations into multiple API requests and merges results. This is a significant behavioral trait that an agent must know to understand response shape and performance. It doesn't mention pagination or rate limits, but the schema's limit parameter already covers pagination bounds.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences with zero waste. The core purpose is front-loaded, the resource pointers are concise, and the key behavioral trait (automatic splitting/merging) is stated last but is the most important non-obvious detail. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a complex tool with 13 parameters, nested objects, and an output schema, the description is reasonably complete. It covers the core purpose, available metrics/breakdowns, and the automatic query planning behavior. The output schema exists, so return values don't need explanation. The only minor gap is not explicitly mentioning pagination behavior beyond the limit parameter, but the schema's limit description already covers that.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 13 parameters thoroughly. The description adds the crucial context that metrics come from meta://metrics and breakdowns from meta://breakdowns, which is genuinely useful. However, it doesn't add much beyond that because the schema already explains each parameter's meaning, defaults, and constraints. Baseline 3 is appropriate when the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool queries Meta Ads performance insights, lists supported metrics/breakdowns, and distinguishes itself from siblings like meta_get_insights_raw by mentioning intelligent query planning and automatic splitting of incompatible combinations. The verb 'Query' plus the resource 'Meta Ads performance insights' is specific and unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context for when to use this tool (querying performance insights with metrics/breakdowns) and points to meta://metrics and meta://breakdowns resources for available values. It doesn't explicitly state when NOT to use it versus alternatives like meta_get_insights_raw, but the mention of automatic query planning and merging implies this is the higher-level, more convenient option. A clear exclusion of raw access would have made this a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.