Privacy Policy URL
Server Details
Hosted privacy policy URLs for apps, sites, stores and lead forms, created by an agent in one call
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 3 tools
The three tools each map to a distinct action: create a hosted policy, check its live status, and list supported resource types. No two tools overlap in purpose; an agent can easily choose the right one.
All names use snake_case verb_noun phrasing (check_, create_, list_) with clear object references. The slight noun variation (privacy_policy_url vs resource_types) still follows the same predictable pattern.
Three tools is a tight, well-scoped set for a service whose core jobs are creating and verifying a privacy policy URL. No tool feels redundant or missing for the intended scope.
Core lifecycle operations—create and check—are covered, plus list_resource_types supports discovery. However, there is no update, delete, or enumeration of existing policies, which are minor gaps for a URL-hosting service.
Available Tools
3 toolscheck_privacy_policy_urlCheck a privacy policy URLARead-onlyIdempotentInspect
Confirm whether a hosted privacy policy is live. Returns status (active or not_found), liveUrl, and updatedAt when live.
| Name | Required | Description | Default |
|---|---|---|---|
| companySlug | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already state readOnlyHint, idempotentHint, and openWorldHint=false, so safety behavior is covered. The description adds useful return behavior by naming the status values (active or not_found) and the liveUrl/updatedAt fields returned when live.
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 short sentences, front-loaded with the tool's purpose followed by return details. There is no filler or redundancy.
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 simple read-only existence check, the description covers the return shape despite no output schema, and annotations cover safety. The remaining gap is that the sole required input parameter is left unexplained.
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 schema has one required parameter, companySlug, with 0% description coverage. The description never explains what companySlug means, where to obtain it, or its expected format, so it does not compensate for the schema gap.
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: 'Confirm whether a hosted privacy policy is live.' This clearly distinguishes the check operation from the sibling create_privacy_policy_url without needing to name it.
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 implies the tool is used to verify liveness of a hosted policy, but it gives no explicit when-to-use guidance, no when-not-to-use conditions, and does not mention the create_privacy_policy_url alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_privacy_policy_urlCreate a hosted privacy policy URLAIdempotentInspect
Generate and host a privacy policy for a business, app, store or site and return its stable HTTPS URL. Free resource types and Agent API key holders get liveUrl at once; other types get a Stripe Checkout link ($29/year) for a human to pay, plus the pendingUrl that goes live after payment. Repeating a call with the same inputs (or the same idempotencyKey) within 24 hours returns the first result.
| Name | Required | Description | Default |
|---|---|---|---|
| ccpa | No | Include CCPA/CPRA (California) sections. | |
| gdpr | No | Include GDPR (EU/UK) sections. | |
| coppa | No | Include COPPA (children under 13) sections. | |
| Yes | Owner contact email. Receives the live link and manages the URL later. | ||
| caloppa | No | Include CalOPPA sections. | |
| companyName | Yes | Business, app or site name as it should appear in the policy. | |
| companySlug | No | URL slug (a-z, 0-9, hyphens). Defaults to a slug of companyName. | |
| resourceType | Yes | What the policy covers. See list_resource_types for which are free. | |
| idempotencyKey | No | Your own retry key. Defaults to a hash of the other inputs. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only flag idempotentHint=true; the description goes further by giving the 24-hour idempotency window and the same-inputs-or-key trigger, plus the distinct liveUrl/pendingUrl return branches and the $29/year price. This is exactly the kind of context beyond the annotation set that agents need.
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 tight sentences, purpose front-loaded, every sentence conveying distinct operational information (return artifacts, payment branch, idempotency). Slightly dense - a single sentence packs three separate outcomes - but 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 compensates by naming the returned artifacts (liveUrl, pendingUrl) and the conditional payment path. It does not cover failure modes (e.g., invalid resourceType, checkout expiry) or how the human payment completes, leaving a small gap for a mutation tool with external side effects.
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 the baseline is 3, but the description adds meaning to idempotencyKey (its retry semantics and default hashing) and to resourceType (free vs paid consequences) that the schema does not convey. Coverage of the boolean compliance flags and companySlug is left to the schema, which is reasonable.
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 ('Generate and host a privacy policy') and names the destination artifact ('stable HTTPS URL'). This clearly separates it from siblings check_privacy_policy_url (verification) and list_resource_types (enumeration).
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?
Explains the two operating paths - free/API-key holders get liveUrl immediately, others get a Stripe Checkout link requiring human payment - and describes repeat-call behavior. It gives clear context but does not explicitly say when to pick this over a sibling or what prerequisites exist for the Agent API key path.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_resource_typesList resource typesARead-onlyIdempotentInspect
The resourceType values create_privacy_policy_url accepts, and which of them are hosted free. No side effects.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, and 'No side effects' largely restates that rather than adding new context. The description does disclose what the response contains (values plus their free-hosting status), which is useful given there is no output schema, but it adds little behavioral depth beyond 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, front-loaded with the payload and its qualifier. The trailing 'No side effects' is redundant against readOnlyHint, so it does not fully earn its place, but the overall size is appropriate.
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 and no output schema, the description carries the burden of describing the return content, and it does so by naming the values and their free-hosting flag. It stops short of describing the response shape (list vs. map), which is a minor gap for such a simple tool.
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 there is nothing for the description to disambiguate; the baseline for a parameterless 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?
The description names a specific resource (the resourceType values accepted by create_privacy_policy_url) and an extra attribute (which are hosted free), so the agent knows exactly what comes back. It ties itself to a sibling tool, aiding differentiation, though it states the action as a noun phrase rather than an explicit verb.
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?
Referencing create_privacy_policy_url implies this is used to discover valid values before invoking that tool, but the description never says when to call it or when not to. 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.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
3 tool updates
- First observed
check_privacy_policy_url - First observed
create_privacy_policy_url - First observed
list_resource_types
Related MCP Connectors
Pay-per-call agent infrastructure: file storage & handoff, compute tools, messaging, e-sign, KYC.
One-step legal compliance for vibe-coded apps: privacy, terms, cookie banner and EU AI Act check.
AI voice agents on SMB websites — fully autonomous build in 2–3 min. 23 MCP tools. EU, GDPR.
Manage Meta apps: creation, configuration, webhooks, permissions, compliance, and App Review.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceSelf-hosted MCP server providing secure, multi-tenant access to Meta Marketing API for managing Facebook and Instagram Ads via AI agents, with OAuth, encrypted tokens, and compliance features.20MIT

PromptSwingofficial
AlicenseNot gradedqualityBmaintenanceEnables an AI assistant to publish a storefront it built to live hosting, read the live site back, add, update or delete a single page, manage the catalogue, orders and reviews, and restore any earlier version in one call. Hosting requires a paid subscription, and a free pre-publish assessment reports which documented signal calls, contrast pairs or hardcoded prices would fail.33 npmApache 2.0- AlicenseNot gradedqualityBmaintenanceA self-hosted Model Context Protocol (MCP) server that gives AI agents secure, multi-tenant access to the Meta Marketing API for Facebook Ads and Instagram Ads. It enables campaign management, audience targeting, insights, lead management, and more across multiple ad accounts.MIT
- AlicenseBqualityAmaintenanceEnables AI agents to operate a Store Builder site end-to-end — designing pages, filling them with data, reviewing screenshots, and publishing — without human intervention.374,737 npmMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.