Skip to main content
Glama
thenavidm

Facebook Ad Library MCP

by thenavidm

Get one ad in full

get_ad
Read-onlyIdempotent

Fetch a single Facebook ad by its Ad Library ID to retrieve all creatives, copy variants, destination URL, and transparency data for detailed analysis.

Instructions

Fetch a single ad by its Ad Library ID, with every creative, all copy variants, the full destination URL and any transparency data. Use this after search_ads when one ad is worth studying properly.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
countryNoTwo-letter country code. Default US.
library_idYesThe Ad Library ID, the long number in an ad's URL.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
adNo
noteNo
foundYes
library_idNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changedv0.6.1
    • removedInput schema / $schema
      Removed value: -"http://json-schema.org/draft-07/schema#"
    • removedInput schema / additionalProperties
      Removed value: -false
    • removedOutput schema / $schema
      Removed value: -"http://json-schema.org/draft-07/schema#"
  2. First observedv0.4.0

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, openWorldHint and destructiveHint=false, so the safety profile is covered. The description adds content-scope behavior (full creative, all copy variants, transparency data) that helps the agent anticipate result richness beyond what the annotations say.

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?

Two sentences, zero filler, with the resource and return scope front-loaded before the routing hint. Every clause earns its place.

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?

With rich annotations, an output schema, and fully documented parameters, the description needs only to state purpose, scope and routing, which it does. Nothing an agent needs to invoke it correctly is missing.

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% and both parameters are documented in the schema, including the country default of US. The description reinforces the library_id meaning ("the long number in an ad's URL" is already in the schema) but adds no new syntax or format detail, so baseline 3 applies.

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 (Fetch) and resource (a single ad by Ad Library ID) and enumerates exactly what is returned: creative, copy variants, destination URL, transparency data. This distinguishes it clearly from search_ads, which retrieves sets rather than one ad in full.

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?

"Use this after search_ads when one ad is worth studying properly" names the sibling and the condition that selects it, which is real routing guidance. It stops short of an explicit when-not or a note on other siblings like view_ad_creative, so it is clear but not exhaustive.

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