mcp-registry/co.cookie-compliance/cookie-consent · v1.0.0
As of 2026-10-27 15:09 UTC, the Cookie Compliance Cookie Consent MCP server is up with a Glimind reliability score of 80/100 (grade B). Over the last 30 days it answered 99.6% of Glimind's liveness checks. It had 22 outages in 90 days, with a median recovery of 8 minutes.
Add a cookie consent banner that blocks trackers before consent and records proof of consent.
Point your MCP client at this streamable-http endpoint: https://mcp.cookie-compliance.co/mcp
8 tool name(s) contain "." or exceed 64 characters, which OpenAI-compatible function calling rejects (^[a-zA-Z0-9_-]{1,64}$).
Use "_" or "-" instead of "." and keep names to 64 characters, so clients built on OpenAI-style tool calling don't have to rename (or drop) them. How to fix →
2 tool(s) look like they change state (create/send/delete/pay…) but declare no destructiveHint.
Set annotations {"readOnlyHint": false, "destructiveHint": true|false, "idempotentHint": …}. Clients use these to ask the user before a side effect and to auto-approve safe reads. How to fix →
3 parameter(s) across 1 tool(s) have no description.
Add a "description" to each parameter with its format and an example ("ISO 8601 date, e.g. 2026-10-17"). This is the commonest cause of wrong arguments on the first call. How to fix →
Handshake + tools/list takes ~1,559 ms.
Serve tools/list from memory, keep the process warm, and host close to your users. Every new agent session pays this before its first call.
No tool declares an outputSchema.
Declare outputSchema and return structuredContent (MCP 2025-06-18+). Agents can then parse results without guessing, and chain tools reliably. How to fix →
In the last 30 days: 0 tool(s) removed and 8 schema change(s).
Add new tools or optional parameters instead of renaming or removing; deprecate first (say so in the description) and remove later. Agents cache tool contracts. How to fix →
Paste-ready definitions with the problems above fixed. Changes marked verify need a human look. 1 tool(s) still need parameter descriptions written by someone who knows the API. All of them as JSON: /v1/readiness/mcp-registry%2Fco.cookie-compliance%2Fcookie-consent/fixes
{
"name": "demo_explainConfigKey",
"description": "OBSOLETE ALIAS, kept only so existing callers do not break: this tool is now `help.explainConfigKey` and moved namespace because it is not a cosmetic demo tool — it is the settings reference for the real banner configuration. It still works and returns exactly the same answer. Call `help.explainConfigKey` instead; this name will be retired.",
"inputSchema": {
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"key": {
"type": "string",
"description": "One key to explain. Accepts a bare name (`blocking`, `bodyText`, `bannerBackground`) or a dotted path exactly as the preview tools take it (`config.blocking`, `config.regulations.gdpr`, `design.primaryColor`, `text.bodyText`, `consentConfig.*`). Every match is returned when a bare name exists in more than one vocabulary."
},
"list": {
"enum": [
"config",
"regulations",
"consentConfig",
"design",
"text",
"snippet",
"all"
],
"type": "string",
"description": "Enumerate a whole vocabulary instead of explaining one key: `config` (the 70 BannerConfigJSON settings, each with its tier and consequence), `regulations`, `consentConfig`, `design`, `text`, `snippet` (the huOptions keys that go in the page, including `blocking`, plus preview-only keys that must never go in the page), or `all`. Use this to find out WHICH setting does what you want before naming one — start with `config` for anything about consent categories, geolocation, consent mode or GPC."
}
},
"additionalProperties": {}
},
"annotations": {
"readOnlyHint": true
},
"title": "OBSOLETE — renamed to help.explainConfigKey"
}{
"name": "demo_generateSnippet",
"description": "LOOK-ONLY PREVIEW of the Cookie Compliance banner — for showing someone how it would LOOK, never for adding consent management to a site. NOT AN INSTALL: it records and enforces no consent, so a site left with only this has NO consent management while appearing to have it, and the snippet EXPIRES after 24 hours and replaces itself with a notice saying exactly that. Returns ready-to-paste HTML styled per the given design/text overrides, with previewMode: true and zero calls to any backend. The pr",
"inputSchema": {
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"text": {
"type": "object",
"properties": {
"en": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
},
"description": "Partial overrides of huOptions.text.en.",
"additionalProperties": {}
},
"design": {
"type": "object",
"description": "Partial overrides of huOptions.design (see help.explainConfigKey for valid keys).",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"blocking": {
"type": "boolean"
},
"globalCookie": {
"type": "boolean"
},
"currentLanguage": {
"type": "string"
}
},
"additionalProperties": {}
},
"annotations": {
"readOnlyHint": true
},
"title": "Generate a Hu-manity consent-banner preview snippet"
}{
"name": "demo_suggestDesign",
"description": "THE TOOL TO USE when the banner needs to look like the site it sits on. Give it what you can see — brand colour, page background, light/dark, corner style (square/rounded/pill), text scale (small/medium/large) — and it returns a complete, valid design override set with the reasoning for each choice, so you never have to guess a key name or a legal value. It also validates design values you already have, and checks every colour pair a visitor must actually read (body text and headings on the bann",
"inputSchema": {
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"brand": {
"type": "object",
"properties": {
"theme": {
"enum": [
"light",
"dark"
],
"type": "string",
"description": "Force a light or dark banner. Inferred from pageBackground when omitted."
},
"textScale": {
"enum": [
"small",
"medium",
"large"
],
"type": "string",
"description": "Overall text size: small, medium (the widget default) or large."
},
"brandColor": {
"type": "string",
"description": "The site's brand/accent colour as hex, e.g. \"#20c19e\" — becomes the banner's button and accent colour."
},
"cornerStyle": {
"enum": [
"square",
"rounded",
"pill"
],
"type": "string",
"description": "Button corner shape: square (0px), rounded (6px) or pill (25px, the widget default)."
},
"pageBackground": {
"type": "string",
"description": "The page's background colour as hex, e.g. \"#0f1117\" — the banner surface is matched to it, and the theme is inferred from it if theme is omitted."
}
},
"description": "Facts about the site's own look. Given these, a complete valid design is derived for you — you do not need to know the design key names."
},
"design": {
"type": "object",
"description": "Explicit huOptions.design overrides to validate. Applied on top of anything derived from brand.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
},
"additionalProperties": {}
},
"annotations": {
"readOnlyHint": true
},
"title": "Make the consent banner match a site — derive and check its design"
}Get an email or webhook when this server's readiness drops by 10+ points, tool-poisoning text appears, or a tool breaks:
curl -X POST https://glimind.com/v1/subscriptions -H 'content-type: application/json' -d '{"tools":["mcp-registry/co.cookie-compliance/cookie-consent"],"email":"[email protected]"}'Agents: watch_tool({"toolId": "mcp-registry/co.cookie-compliance/cookie-consent"}) over MCP.
demo.suggestDesign ~519 tokensinstall.getSnippet ~498 tokenshelp.explainConfigKey ~464 tokensdemo.explainConfigKey ~416 tokensdemo.generateSnippet ~324 tokensStatic checks of the advertised tools/list (schema, descriptions, annotations, tool-poisoning patterns, names, size) plus observed protocol, uptime, latency and contract changes. Read-only: no tool is ever called. Weights: schema 15, docs 20, safety 15, efficiency 15, compatibility 15, protocol 5, reliability 10, stability 5. Token counts are estimates (~3.6 characters per token).
Operator? Fix these, then re-check live. Embed the readiness badge:
[](https://glimind.com/server/mcp-registry%2Fco.cookie-compliance%2Fcookie-consent?ref=badge)
<a href="https://glimind.com/server/mcp-registry%2Fco.cookie-compliance%2Fcookie-consent?ref=badge"><img src="https://glimind.com/v1/readiness/badge/mcp-registry%2Fco.cookie-compliance%2Fcookie-consent.svg" alt="MCP agent-readiness"></a>
.. image:: https://glimind.com/v1/readiness/badge/mcp-registry%2Fco.cookie-compliance%2Fcookie-consent.svg :target: https://glimind.com/server/mcp-registry%2Fco.cookie-compliance%2Fcookie-consent?ref=badge :alt: MCP agent-readiness
Glimind records every version of this server's tool definitions in a signed, append-only transparency log. Current manifest sha256:aa0f6f232701c7e4…, first seen 2026-10-17, included at leaf 264 of 79,969. Version history · verify what your client received.
Compare: most reliable knowledge servers · most reliable web servers · most reliable security servers · most reliable other servers
Glimind tells agents whether a server is up right now and how to call it, then fails over to a live alternative when it isn't.
Claude Code
claude mcp add --transport http glimind https://glimind.com/mcp
Claude Desktop · Windsurf · Cline (mcpServers JSON)
{
"mcpServers": {
"glimind": {
"type": "http",
"url": "https://glimind.com/mcp"
}
}
}
As of 2026-10-27 15:09 UTC, the Cookie Compliance Cookie Consent MCP server is up with a Glimind reliability score of 80/100 (grade B). Over the last 30 days it answered 99.6% of Glimind's liveness checks. It had 22 outages in 90 days, with a median recovery of 8 minutes.
Cookie Compliance Cookie Consent MCP server advertises 8 tools, including demo.explainConfigKey, demo.generateSnippet, demo.suggestDesign, help.authStatus, help.explainConfigKey.
Point your MCP client at this streamable-http endpoint: https://mcp.cookie-compliance.co/mcp
Glimind scanned all 8 tool definitions for tool-poisoning patterns — hidden or invisible characters, instructions that override the model, concealment from the user, requests to read credential or MCP config files, conversation exfiltration and cross-tool shadowing — and found none. This checks what the server tells the model, not what its code does; review the source before granting access to sensitive data.
Status page: 90-day uptime, every outage and how long it lasted.
Claim this listing to get the Verified operator marker, a remediation checklist and owner analytics, or embed the live badge from any of the tool pages above. Maintainers: alerts, deploy attestation and monthly reports.
Status is an automated estimate from Glimind's liveness checks (handshake and tool listing only; no tool is ever called) and may lag or differ from your network. Glimind is not affiliated with this server or its operator. Operator? Request a correction or opt out at https://glimind.com/opt-out.