Skip to main content
Glama

Check a page's ad pixels

check_page
Idempotent

Check whether a web page's Meta, TikTok and OpenAI pixels work (the Meta Pixel is the former Facebook Pixel), with a grade for each: cookie consent, duplicate events, event IDs, the ad click IDs (e.g. fbclid -> _fbc) and signs of server-side tracking. A browser in the EU visits the page twice. Reuses a result from the last 24 hours unless recheck is true. Waits for the result up to wait_seconds (a check takes 20 to 60 seconds); if it is still running, call get_report later.

Input Schema

NameRequiredDescriptionDefault
urlYesThe page to check, usually the landing page the ads point to, e.g. https://example.com/landing
recheckNoStart a fresh check instead of reusing a recent result (allowed once the last check is an hour old). Use after a fix was deployed.
wait_secondsNoHow long to wait for the result, 0 to 45 seconds (default 40).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior5/5

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

Annotations declare openWorldHint=true and readOnlyHint=false, but the description supplies the operational context they cannot: a real EU browser visits the page twice, checks take 20-60 seconds, and results are cached. This explains the latency, the non-trivial side effects, and the async model without contradicting the annotations.

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 core purpose and packed with useful detail in three sentences, with no filler. The first sentence is long and parenthesis-heavy, marginally slowing scanability, but every clause 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 no-output-schema tool it does well: it lists the graded dimensions, the caching and latency behavior, and the async follow-up path. It omits failure modes (invalid URL, page unreachable, blocked by consent wall), which an agent would otherwise have to discover.

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 baseline would be 3, but the description adds real meaning: wait_seconds is bounded by the 20-60 second check duration, and recheck interacts with the 24-hour reuse window and the one-hour cooldown. It stops short of restating the 0-45 range or default 40, which the schema already carries.

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 and resource: checking whether a page's Meta, TikTok and OpenAI pixels work, with a named grade breakdown. It even disambiguates the Meta/Facebook Pixel naming, so an agent can distinguish it from get_report and get_fix_guide at a glance.

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?

Explicitly covers reuse (24-hour cache unless recheck is true) and the fallback path: if the check is still running after wait_seconds, call get_report later. That names the alternative sibling and the condition that selects it.

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.

Resources