Skip to main content
Glama

Upload a local cookie scan

upload_scan_report

Stores the result of a local crawl started with start_scan, as a report labelled a local scan. Send the cookies with their category from @cookiepal-oss/cookie-db. When robots.txt blocked the crawl, send blockedByRobots and no report is stored. Each scan ID can be uploaded once. The local run this needs is made only by the CookiePal plugin in Claude Code on the user’s own computer: the terminal, the desktop app or an IDE extension. claude.ai and Claude Code on the web run in the cloud, so they cannot make it, and a crawler or browser run anywhere else does not stand in for it. The result reports what was found. It does not assess whether a site, page or banner complies with any law, so it is never a verdict of compliant or non-compliant.

Input Schema

NameRequiredDescriptionDefault
scanIdYes
cookiesNo
truncatedNo
pagesScannedNo
blockedByRobotsNo
thirdPartyHostsNo

Output Schema

NameRequiredDescriptionDefault
domainIdYes
nextStepYes
byCategoryYes
reportedAtYes
scanSourceYes
pagesScannedYes
cookiesStoredYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior4/5

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

Annotations declare non-read-only, non-idempotent, non-destructive, closed-world, so the safety profile is partly covered; the description adds real value on top by disclosing that a second upload of the same scan ID is rejected, that a robots-blocked submission stores nothing, and that the stored result is descriptive rather than a compliance verdict. It does not describe failure modes for malformed cookie payloads or what happens to partial uploads, which keeps it below a 5.

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 action and the robots.txt edge case before the environment caveat, and each sentence carries a distinct constraint. The environment paragraph is somewhat long-winded and restates the same point (local-only) three ways, which costs a little density.

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?

An output schema exists, so return values need not be explained; what matters is covered — provenance of the crawl, the robots.txt branch, the one-upload rule, and the non-verdict framing. The remaining gap is the unexplained truncated/pagesScanned/thirdPartyHosts fields and any guidance on partial or failed submissions.

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 0% across six parameters, so the description must compensate. It explains the meaningful ones well — cookies must carry the category assigned from @cookiepal-oss/cookie-db, and blockedByRobots suppresses storage — but truncated, pagesScanned, and thirdPartyHosts are never mentioned, leaving half the surface to inference from property names.

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 ("Stores the result of a local crawl ... as a report labelled a local scan") and anchors it to the sibling that produces the input (start_scan). An agent can immediately distinguish it from start_scan (which runs the crawl) and get_scan_report (which reads one back).

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?

Gives explicit preconditions and exclusions: the local run must come from the CookiePal plugin in Claude Code on the user's own machine, and claude.ai, Claude Code on the web, or any other crawler/browser run does not qualify. It also names the robots.txt branch (send blockedByRobots and no report is stored) and the once-per-scan-ID limit, so the agent knows both when to call and when the call is pointless.

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