Skip to main content
Glama
anhnguyen0905

Meta Ads MCP

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
META_APP_IDNoMeta App ID for browser login flow.
META_APP_SECRETNoMeta App Secret for browser login flow.
META_ACCESS_TOKENNoLong-lived user access token for Meta Marketing API.
META_AD_ACCOUNT_IDNoAd account ID in the form act_<digits>.
META_GRAPH_API_VERSIONNoMeta Graph API version.v23.0
META_OAUTH_REDIRECT_URINoCustom OAuth redirect URI (default http://localhost:8721/callback).

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_ad_accountsA

List Meta ad accounts available to the configured access token.

Args: params: Maximum result count and JSON or Markdown response format.

Returns: A rendered {"success": bool, "data": list[object] | null, "error": string | null} envelope containing account identifiers, names, statuses, and currencies.

Use this to discover an account ID before account-scoped reads. Do not use it to inspect campaigns or to create, update, or delete ad accounts.

get_campaignsA

Get campaigns for an explicit or configured default ad account.

Args: params: Optional account ID, maximum result count, and JSON or Markdown response format.

Returns: A rendered {"success": bool, "data": list[object] | null, "error": string | null} envelope containing campaign identifiers, names, statuses, objectives, and budgets.

Use this for an account-level campaign inventory. Do not use it for performance metrics or for campaign creation, edits, or status changes.

get_adsetsA

Get ad sets beneath an account or campaign parent.

Args: params: Parent account or campaign ID, maximum result count, and JSON or Markdown response format.

Returns: A rendered {"success": bool, "data": list[object] | null, "error": string | null} envelope containing ad set identifiers, names, statuses, campaign IDs, and daily budgets.

Use this to inspect the ad-set hierarchy for a known parent. Do not use it for performance metrics or to create, edit, pause, or delete ad sets.

get_adsA

Get ads beneath an account, campaign, or ad-set parent.

Args: params: Parent object ID, maximum result count, and JSON or Markdown response format.

Returns: A rendered {"success": bool, "data": list[object] | null, "error": string | null} envelope containing ad identifiers, names, statuses, ad-set IDs, and campaign IDs.

Use this to inspect ads for a known hierarchy parent. Do not use it for performance metrics or to create, edit, pause, or delete ads.

get_insightsA

Get raw Meta performance metrics for an object and reporting period.

Args: params: Object ID, aggregation level, either a date preset or custom since/until range, maximum row count, and response format.

Returns: A rendered {"success": bool, "data": list[object] | null, "error": string | null} envelope containing raw Meta insight rows with spend, delivery, click, action, and purchase ROAS fields.

Use this for flexible read-only metric retrieval at account, campaign, ad-set, or ad level. Do not use it to modify delivery or to infer causal lift from platform-attributed results.

performance_summaryA

Rank campaign performance and flag heuristic symptoms for review.

Args: params: Optional account ID, reporting preset, CTR, ROAS, and frequency thresholds, and JSON or Markdown response format.

Returns: A rendered {"success": bool, "data": {"caveat": string, "truncated": bool, "campaigns": list[object]} | null, "error": string | null} envelope. Campaign records are sorted by spend and include metric values plus zero or more heuristic flag names.

Use this for read-only campaign triage, not as proof of causation or a verified diagnosis. Conversions and ROAS are platform-reported using Meta attribution, not incremental; a holdout or lift test is required to claim incrementality, and periods should be compared at similar spend. Do not use this tool to make delivery changes or assert causal campaign impact.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

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

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