PrivacyPill
Server Details
GDPR cookie banners with Consent Mode v2, plus a free scan of what loads before consent.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 9 tools
Most tools have clearly distinct targets (account, site, banner, presets, embed). The main risk zone is pre_consent_scan vs run_compliance_scan, which both fetch a public page and report trackers/cookies; the descriptions differentiate them (free/no-auth pre-consent focus vs scored, persisted scan with apply=true), but an agent could still pick the wrong one. create_site returning the embed snippet also mildly overlaps with get_embed_snippet.
Eight of nine tools follow a clean verb_noun pattern (configure_, create_, get_, list_, run_). pre_consent_scan breaks the convention with an adjective-first name, though it is still readable and unique.
Nine tools is well within the sweet spot for a cookie-consent/banner SaaS. Each tool maps to a concrete user need (account overview, site management, banner config, presets, embed, scanning) with no filler.
The lifecycle covers create/get/list/update for sites and banners, plus scanning and embed retrieval. However there is no delete or remove operation for a site or banner, which is a real gap given the free plan is limited to one site, and no way to change a site's domain or transfer ownership.
Available Tools
9 toolsconfigure_bannerConfigure bannerAIdempotentInspect
Update a site's cookie banner: layout (pill, bar, modal, corner), colours or preset, categories, services, Google Consent Mode v2, languages and wording. Only the fields you pass change. Pro sites can also switch geo-targeting and monthly rescans.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | ||
| design | No | Banner fields to change; nested objects merge. | |
| domain | No | Change the domain (bare domain). | |
| site_id | Yes | Site id from list_sites or create_site. | |
| geo_targeting | No | Pro: only show the banner where consent law applies. | |
| monthly_rescan | No | Pro: rescan the site automatically every month. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare mutation (readOnlyHint=false), idempotency, and non-destructiveness, so the bar is lower; the description still adds real value by disclosing patch-only semantics and the Pro gating on two fields. It does not say whether changes go live to visitors immediately or what the response contains, leaving a modest gap for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the verb and resource, then the editable surface, then the patch-semantics caveat and Pro caveat. The dense field enumeration earns its place by letting an agent map its intent to the right nesting level without opening the schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 6-parameter mutation tool with deep nested objects and no output schema, the description covers the essentials: what is mutable, that updates are partial, and that two fields are plan-gated. It could go further on whether the site must already have a banner and what changes return, but nothing critical to invoking it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 83%, so the schema already carries most parameter meaning, including the Pro notes on geo_targeting/monthly_rescan and the preset hint. The description's field list (layout values, categories, services, GCM v2, languages, wording) largely restates what the schema enumerates and adds no format or constraint detail beyond it. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Starts with a specific verb+resource ('Update a site's cookie banner') and enumerates exactly which banner aspects can be changed (layout, colours/preset, categories, services, GCM v2, languages, wording). This makes it clearly distinguishable from read-oriented siblings like get_site, list_banner_presets, and run_compliance_scan.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Only the fields you pass change' establishes partial-update semantics, which tells the agent it can call this repeatedly with narrow payloads rather than sending a full object. 'Pro sites can also switch geo-targeting and monthly rescans' flags a plan eligibility condition. It stops short of naming alternatives (e.g. use list_banner_presets to obtain valid preset values), so no explicit when-not guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_siteCreate siteAInspect
Add a domain to PrivacyPill and create its cookie banner. Returns the site, its banner settings and the embed snippet. The free plan includes one site.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Friendly name shown in the dashboard. | |
| design | No | Optional starting banner settings; see configure_banner for the fields. | |
| domain | Yes | Bare domain such as example.com (no https://). | |
| license_id | No | Attach a Pro or Lifetime license from get_account. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds useful return information (site, banner settings, embed snippet) and a plan constraint that annotations do not cover. However, it does not disclose what happens if the domain already exists, whether duplicate creation errors, or any permission requirements, which matters for a non-idempotent create tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences with zero waste: purpose first, return value second, plan constraint last. Every sentence earns its place and the purpose is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the nested design object and no output schema, the description adequately states the return shape and points to configure_banner via the schema for design fields. It still leaves gaps around duplicate-domain behavior, default banner creation semantics, and license requirements for a create operation with nested optional configuration.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents domain, name, license_id, and the nested design object, including a pointer to configure_banner for design fields. The description adds only the implicit domain parameter and no additional semantics beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: adding a domain and creating its cookie banner in PrivacyPill. It is clearly distinguishable from configure_banner (which modifies existing settings) and from get_site/list_sites.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by 'Add a domain' and the free-plan limit is mentioned, but there is no explicit when-to-use guidance, no mention of when to use configure_banner instead, and no explanation of what to do for an existing site.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_accountGet accountARead-onlyIdempotentInspect
Show the signed-in PrivacyPill account: number of sites, licenses (Free, Pro, Lifetime) and limits.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and openWorldHint=false, so the safety profile is covered. The description adds value by disclosing the actual return payload (site count, license tiers including Free/Pro/Lifetime, and limits), which is the main behavioral unknown for a parameterless read tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, front-loaded with the verb and resource, then the return contents. Every clause earns its place; nothing repeats the title or the annotations.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no parameters, no output schema, and annotations covering safety, the description supplies the essential missing piece: what the response contains. It stops just short of noting there are no arguments or any error case (e.g., not signed in), but the definition is otherwise sufficient to call correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters and the schema is an empty object, so there is nothing to disambiguate — baseline 4 applies. The description reinforces this by making clear the account is implicitly the signed-in one, so no identifier is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('Show the signed-in ... account') and enumerates what is returned: site count, license tier, and limits. It is clearly account-scoped rather than site-scoped, which implicitly separates it from get_site/list_sites, though it never names those siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'signed-in ... account' implies the context in which it is used, but there is no explicit when-to-use statement, no exclusions, and no routing to alternatives such as get_site for per-site detail. Usage is inferable rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_embed_snippetGet embed snippetARead-onlyIdempotentInspect
Get the one-line PrivacyPill embed (with Consent Mode fallback) for a site, plus install steps for HTML, Google Tag Manager, WordPress, Shopify and Webflow.
| Name | Required | Description | Default |
|---|---|---|---|
| site_id | Yes | Site id from list_sites or create_site. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and a closed-world scope, so the safety profile is covered. The description adds useful content context beyond the annotations: the snippet includes a Consent Mode fallback and ships with multi-platform install steps, which tells the agent what it will receive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero filler: the deliverable is named first, the platform list second. Nothing to trim.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description does the work of telling the agent what comes back (embed line plus install steps). It leaves one meaningful edge case unstated: behavior when the site has no banner or consent configuration yet, which an agent would need to interpret an error or empty result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the single parameter is documented inline ('Site id from list_sites or create_site'), so the schema carries the semantics. The description adds nothing about site_id. Baseline 3 applies for a one-parameter tool with a fully documented schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'Get the one-line PrivacyPill embed ... for a site', and enumerates the accompanying install steps (HTML, GTM, WordPress, Shopify, Webflow). This is clearly distinct from sibling mutations like configure_banner or create_site, so an agent can identify it without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: an agent infers it should call this when it needs embed code to hand to a site owner. There is no explicit when-to-use/when-not, no mention of the alternative of configuring a banner first, and no stated prerequisite that the site actually has a banner configured.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_siteGet site and banner settingsARead-onlyIdempotentInspect
Get one site with its full cookie banner settings (layout, colours, categories, Consent Mode, languages).
| Name | Required | Description | Default |
|---|---|---|---|
| site_id | Yes | Site id from list_sites or create_site. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and closed-world, so the safety profile is covered. The description adds value by disclosing the breadth of the returned banner payload, but says nothing about permissions, missing-site behavior, or response shape.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler; the parenthetical enumeration of settings earns its place by signaling the payload's scope.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter read-only tool with no output schema, the description is nearly sufficient: it conveys scope and the kind of settings returned. Only error/missing-record behavior is left implicit.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the single site_id parameter is documented with its provenance ('from list_sites or create_site'). The description adds no parameter detail beyond the schema, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Get) and resource (one site plus its cookie banner settings) and enumerates the bundled settings (layout, colours, categories, Consent Mode, languages), which clearly distinguishes it from a bulk list. It stops short of naming the sibling list_sites it contrasts with, but the 'one site' scope makes the intent unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'one site' implies this is the single-record fetch versus a list, but there is no explicit when-to-use vs list_sites or configure_banner, nor any stated precondition beyond the schema's site_id.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_banner_presetsList banner presetsARead-onlyIdempotentInspect
List the built-in banner colour presets and the allowed layouts, languages and categories.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and openWorldHint=false, so the safety profile is fully covered. The description adds that the presets are "built-in" (static, not user-authored), which is mildly useful context, but says nothing about response shape or ordering beyond that.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single well-formed sentence with no filler, and the core resource (banner colour presets) is front-loaded before the secondary domains. Nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description must carry the return-value burden, and it does list the categories of data returned. It is nearly complete for a simple zero-argument lookup, though it could note the return format (e.g., grouped lists) for full agent confidence.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the baseline is 4. The description's enumeration of what the call returns (presets, layouts, languages, categories) is helpful framing even though it is technically return-value information rather than parameter guidance.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ("List") with a specific resource ("built-in banner colour presets") and enumerates the domains covered (layouts, languages, categories). It is clearly distinguishable from configure_banner, though it never names that sibling or states the relationship explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use statement, but the nature of the tool as a reference/lookup of allowed values implies its role (fetch valid values before calling configure_banner). No alternatives or exclusions are named, leaving the agent to infer the workflow.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_sitesList sitesARead-onlyIdempotentInspect
List the domains (sites) on the PrivacyPill account with their plan, site key and last scan score.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and openWorldHint=false, so safety is covered. The description adds real value by disclosing the payload contents (plan, site key, last scan score), but says nothing about ordering, result limits, or whether an empty account returns an empty list.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, front-loaded with the verb and resource, and every clause (account scope, returned fields) earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description usefully enumerates the fields returned, which is the main gap a caller would otherwise face. Missing only operational details like result ordering or size limits for accounts with many sites.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Zero parameters with 100% schema coverage, so there is nothing for the description to disambiguate; baseline for a no-param tool applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb+resource ('List the domains (sites)') with the returned fields enumerated (plan, site key, last scan score), which clearly separates it from get_site and create_site. It doesn't name the sibling it replaces, so it stops short of 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: an agent can infer this is the 'get all' counterpart to get_site for a single domain, but the description never states when to prefer this over get_site or that no filtering/paging options exist.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pre_consent_scanCheck what loads before consent (free)ARead-onlyIdempotentInspect
Free, no sign-in: fetch a public page as a first-time visitor and report which trackers (GA4, Google Ads, Meta Pixel, TikTok, LinkedIn, Hotjar…) and cookies load before the visitor consents, which ones wait, which other sites the page contacts (e.g. Google Fonts), and how to fix it. Static check of the HTML and headers (no JavaScript runs). Limited to 10 checks per hour per visitor.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Public page to check, e.g. https://example.com |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations, the description discloses important behavior: no sign-in required, no JavaScript execution (static HTML/headers only), a rate limit of 10 checks per hour per visitor, and the kinds of findings returned. These are material execution constraints for an agent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single dense paragraph that front-loads the free/no-sign-in value and the core action. Parenthetical examples and the rate-limit note earn their place, though the text is somewhat packed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Although there is no output schema, the description enumerates what the report contains: trackers, cookies, which resources wait, third-party contacts, and remediation guidance. It also covers the no-JavaScript limitation and rate limit, making it complete for a one-parameter read-only scan.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is only one parameter, url, and the schema already has 100% description coverage with an example and length bounds. The description adds that the URL must be a public page, but provides no additional syntax or formatting guidance beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: fetch a public page and report trackers/cookies loaded before consent. It also scopes the check to static HTML and headers, which helps distinguish it from broader scanning tools, though it does not explicitly name the sibling run_compliance_scan.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the pre-consent focus and the free/no-sign-in note, and the 10-per-hour limit sets a practical boundary. However, it never states when to choose this over run_compliance_scan or when not to use it, and no alternative is named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_compliance_scanRun compliance scanAInspect
Scan a public web page for trackers (GA4, Google Ads, GTM, Meta Pixel, Hotjar, TikTok, LinkedIn…), cookies and Consent Mode setup, and get a 0–100 compliance score. Scans of your own domains are saved; apply=true adds the detected services to that site's banner.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Page URL, e.g. https://example.com | |
| apply | No | Add detected services and cookie names to the site's banner. | |
| site_id | No | Save the scan to this site (otherwise matched by domain). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=false and destructiveHint=false, so the write surface is partially covered; the description adds real value by disclosing the side effect that own-domain scans are persisted and that apply=true mutates the site's banner configuration. It stops short of saying whether apply is reversible or what permissions/plan are required.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences: capability and detected signal types first, then the persistence and apply semantics. Every clause carries information an agent needs; no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description must carry return semantics, and it names the headline output (0–100 compliance score). It omits the shape of the rest of the result (per-tracker detections, cookie list, Consent Mode findings) and whether the scan is synchronous or asynchronous, which matters for an open-world network fetch.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so all three parameters are already documented. The description restates the apply behavior and adds the useful default-resolution rule ("otherwise matched by domain") for site_id, but provides no format or constraint detail beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb ("Scan") plus a concrete resource ("a public web page") and an enumerated list of what it detects (GA4, GTM, Meta Pixel, cookies, Consent Mode) with a 0–100 score output. It does not, however, differentiate itself from the sibling pre_consent_scan, which reads as a closely related scan operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description conveys context ("Scans of your own domains are saved") and the effect of apply=true, which implies when the mutation path is appropriate. But it never states when to choose this over pre_consent_scan or configure_banner, and no exclusions or prerequisites are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
9 tool updates
- First observed
configure_banner - First observed
create_site - First observed
get_account - First observed
get_embed_snippet - First observed
get_site - First observed
list_banner_presets - First observed
list_sites - First observed
pre_consent_scan - First observed
run_compliance_scan
Related MCP Connectors
GDPR/CCPA cookie consent: scan sites for cookies, track consent rates, generate privacy policies.
Cookie consent for GDPR/CCPA: scan sites for trackers, configure consent banners, get install code.
Cookie consent scanner: GDPR, CCPA, GCMv2. PASS/FAIL compliance checklists with fix recommendations.
GDPR cookie banner any coding agent can install with no account: provision, snippet, scan, verify.
Related MCP Servers
- AlicenseAqualityAmaintenanceEnables AI coding agents to generate LGPD-compliant cookie banners by detecting trackers in local projects, and to scan published sites for privacy violations, returning actionable results.1820 npmApache 2.0
- FlicenseNot gradedqualityDmaintenanceEnables AI agents to install GDPR-compliant cookie consent banners on websites with a single command, handling domain registration, template assignment, and script injection.17 npm-
- AlicenseAqualityBmaintenanceOne-step legal compliance for vibe-coded apps: scans project, generates privacy policies/TOS, installs cookie consent banner, and checks EU AI Act risk.10233 npmMIT

Bannerproofofficial
AlicenseNot gradedqualityAmaintenanceEnables AI assistants to run EU cookie-consent audits on public websites, checking pre-consent trackers, banner rejection behavior, Consent Mode v2, IAB TCF, GPC, undisclosed cookies, and third-party embeds, with findings, evidence, fixes, and legal references.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.