Skip to main content
Glama

Adako: Google Ads, Meta Ads & Linkedin Ads MCP

Meta Ads — reads and tool lookup

meta_ads
Read-only

Reads and tool lookup for Meta Ads; nothing called here changes anything. The 16 Meta Ads tools that change something run through meta_ads_write.

meta_ads(action="execute", tool_name="…", arguments={...}). action="list_tools" (the write half included) and action="get_tool_schema" are free; never guess a tool_name. accounts=["…","…"] or accounts="all_active": one read across up to 20 Meta Ads accounts, free like every read. Not in this router, called by name: meta_get_campaign_performance (meta campaign performance).

Tools by category: analysis meta_analyze_audiences, meta_analyze_wasted_spend, meta_detect_creative_fatigue, meta_get_audience_insights, meta_optimize_budget, meta_optimize_placements targeting meta_browse_targeting, meta_get_ad_set_delivery_estimate, meta_get_ad_set_targeting, meta_search_targeting diagnostics meta_explain_anomaly, meta_validate_creative_url assets meta_get_ad_creatives, meta_list_instagram_accounts, meta_list_media, meta_list_pages, meta_list_promotable_apps performance meta_get_ad_performance, meta_get_adset_performance structure meta_get_lead_form_submissions, meta_list_ad_sets, meta_list_ads, meta_list_campaigns, meta_list_lead_forms audiences meta_list_custom_audiences, meta_list_saved_audiences conversions meta_list_pixels

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
actionYesThe first two are free; execute bills the tool.
accountsNoRepeat one READ across these accounts, or "all_active"; free like every read, max 20.
argumentsNoThe tool’s own arguments, as its schema declares them.
tool_nameNoExact tool name. Needed by get_tool_schema and execute.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.8/5.0
Behavior5/5

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

Beyond the annotations' readOnlyHint/destructiveHint, the description discloses cost semantics ("execute bills the tool", lookups and reads are free), a 20-account fan-out cap for accounts="all_active", and that list_tools returns the write half too. Billing behavior is material for an agent deciding whether to probe, and it is not present in the annotations or schema.

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

Conciseness4/5

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

Front-loaded with the routing contract, then bolded category lists that genuinely aid discovery across 29 routed tools. Slightly repetitive (the free-read point is made twice) and the enumerated tool inventory is long, but the size is justified for a router of this breadth.

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

Completeness5/5

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

A router with no output schema, 100% schema coverage and read-only annotations needs: routing contract, cost model, discovery path, and sibling ownership. All four are present, so an agent can call it correctly without further context.

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

Parameters4/5

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

Schema coverage is 100%, so the structured baseline is 3, but the description adds real meaning over the schema: the free-vs-billed split per action value, the exact-match requirement on tool_name ("never guess"), and the all_active read fan-out. It stops short of explaining the nested arguments object beyond pointing back at the target tool's schema.

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?

States a specific verb+resource pair ("Reads and tool lookup for Meta Ads") and immediately scopes it by declaring nothing here mutates state, routing all 16 write tools through meta_ads_write. An agent can distinguish this read router from meta_ads_write and from the per-channel routers without opening any schema.

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

Usage Guidelines5/5

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

Explicit invocation contract: action="execute"/"list_tools"/"get_tool_schema", "never guess a tool_name", and the two lookup actions are declared free. It also names the sibling that owns the write half (meta_ads_write) and the one tool deliberately excluded from the router (meta_get_campaign_performance), giving both when-to-use and when-not-to-use.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.