# CookieInspector

> Check what a site's cookie banner really blocks: CMP, trackers, cookies before consent.

- name: com.cookieinspector/cookieinspector
- version: 1.0.0
- connection class: R0 (autonomous)
- trust: 83/100 flags: no-repository
- quality: 90/100 (new)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/com.cookieinspector%2Fcookieinspector
- tools: https://api.protogrid.dev/v1/servers/com.cookieinspector%2Fcookieinspector/tools

**An agent can connect right now, no human step.** Remote endpoint, no authentication, reachable on the last probe.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "cookieinspector": {
      "type": "http",
      "url": "https://api.cookieinspector.com/mcp"
    }
  }
}
```


## Trust

- hygiene: 80
- liveness: 100
- freshness: 100
- provenance: 55
- drivers: +dns-namespace +website +reachable +uptime-100% +updated-1d-ago -no-repository
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 90/100 (new)

### protocol: 88 (weight 25)

- pass `protocol.modern`: supports 2026-07-28 (server/discover)
- pass `protocol.stateless`: answers without a session
- pass `protocol.transport`: streamable HTTP
- warn `protocol.list_ttl`: tools/list declares ttlMs 0, so clients re-fetch it on every use

### authorization: n/a (weight 15)

- n/a `auth.prm`, `auth.as_metadata`, `auth.cimd`: no remote uses OAuth
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 93 (weight 30)

- pass `tools.descriptions`: every tool has a description
- pass `tools.description_length`: descriptions are concise
- pass `tools.schemas`: every tool has an object input schema
- pass `tools.annotations`: 9 of 9 tools declare readOnlyHint or destructiveHint
- warn `tools.directory_hints`: 2 of 9 tools declare all four hints; missing: get_scan_summary (openWorldHint); get_scan_status (openWorldHint); get_prescan_result (openWorldHint); …
- pass `tools.token_cost`: about 1,251 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

### stability: n/a (weight 15)

- n/a `stability.changes`, `stability.rug_pull`: tool history recorded for 1 of the 7 days needed

### dependencies: n/a (weight 15)

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: no npm or PyPI package

- tools: 9, about 1,251 tokens to load them all
- tool set hash: 19dc8a161c8900fdd3d42b7f361e089a
- badge: [![protogrid quality](https://protogrid.dev/badge/com.cookieinspector/cookieinspector.svg)](https://protogrid.dev/servers/com.cookieinspector/cookieinspector)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

_No tool definition changes recorded._

## Remotes

- https://api.cookieinspector.com/mcp (streamable-http, auth none, reachable true, uptime30d 1)

## Packages

_none_

## Tools (9)

- `explain_finding`: Explain a CookieInspector finding code (e.g. THIRD_PARTY_PRE_CONSENT) or what to check in a named consent platform (e.g. Cookiebot). No network call. Technical findings, not legal advice.
- `get_capabilities`: Describe what CookieInspector checks on a website (cookies and trackers before and after the consent click, banner behaviour, consent platform, Google Consent Mode), which tools work without an account, which need a CookieInspector API key, and the quotas. Call this first when unsure which tool to use. Technical findings, not legal advice.
- `get_prescan_result`: Return the result of a pre-scan started with prescan_site: riskScore (0 best, 100 worst, the same scale as the full report), risk level, how many cookies load before consent, up to five trackers by name, the consent platform and its confidence, Google Consent Mode status, three findings, and the report link. This is a header-and-HTML pre-scan, single page; the full scan with a real browser, evidence and fix guide requires a CookieInspector account. Technical findings, not legal advice.
- `get_scan_findings`: The findings of a scan on the connected account, with severity, the affected resource and the recommendation, up to 25. Use explain_finding for what a code means. Technical findings, not legal advice.
- `get_scan_status`: Status of a scan on the connected account: queued, running, completed or failed, with the riskScore (0 best, 100 worst) once done. Technical findings, not legal advice.
- `get_scan_summary`: Summary of a completed scan on the connected account: risk score (0 best, 100 worst), verdict, banner and consent platform, cookie and tracker counts, the top issues and the report link. Technical findings, not legal advice.
- `list_scans`: The most recent scans on the connected account, newest first (up to 20), each with its riskScore (0 best, 100 worst). Technical findings, not legal advice.
- `prescan_site`: Start a quick, anonymous pre-scan of a public website's home page: HTTP headers and HTML only, no real browser. Returns a preScanId to pass to get_prescan_result and a link to the report on cookieinspector.com. CookieInspector works alongside any consent platform; it checks what the banner actually does. Technical findings, not legal advice.
- `start_scan`: Start a full CookieInspector scan with a real browser (before and after the consent click, up to 5 pages) on the connected account. Optional region: main (US East), us-west, eu-de (Germany, for EU-targeted banners). Uses the plan's monthly scans. Returns a scanId to poll with get_scan_status, then get_scan_summary. Technical findings, not legal advice.
