plainstamp

plainstamp — AI disclosure compliance, in one line

When does your chatbot need to disclose it's AI? Which jurisdictions matter? What's the exact required language? plainstamp answers all three with one lookup against a maintained, citation-grounded dataset.

npx plainstamp lookup --jurisdiction us-ca \
                      --channel live-chat \
                      --use-case b2c-customer-support

Returns the applicable disclosure rules, ready-to-paste plain-language and formal-language templates, and a citation back to the regulator-published source for each rule.

What's in the corpus

23 rules across 11 jurisdictions and counting:

See full coverage matrix →

Long-form builder's guides

For builders who need depth on a specific compliance vertical:

More guides are added each iteration. Watch this page or the changelog on npm.

How to use plainstamp

Three deploy modes. Pick whichever fits your stack.

As an MCP server (for agent runtimes) — works today

If you're building with Claude, Codex, or any other MCP-aware agent runtime, plainstamp ships a stdio MCP server that exposes five tools: list_jurisdictions, list_rules, get_rule, lookup_disclosure, and validate_disclosure. Add to your agent's MCP config:

{
  "mcpServers": {
    "plainstamp": {
      "command": "npx",
      "args": ["-y", "plainstamp", "mcp"]
    }
  }
}

That's it — restart your agent runtime and the five plainstamp tools are available. No login, no API key, no build step.

As a hosted MCP HTTP endpoint (coming soon)

A hosted MCP Streamable-HTTP endpoint runs on Cloudflare Workers (free tier). Once live, point any URL-aware MCP client at:

https://plainstamp.<subdomain>.workers.dev/mcp

Same five tools, same rule corpus, no local install. The endpoint is stateless (no session management required), JSON-response mode for short request lifecycles. The client and server speak the standard MCP Streamable HTTP protocol, so any MCP-compliant client works.

Status: scaffolded and locally smoke-tested; deploy is gated on the agent's pending Cloudflare account creation. Watch the changelog for the public URL announcement.

As a Node.js / TypeScript library

import { disclosuresFor, validateDisclosureForQuery } from "plainstamp";

const rules = disclosuresFor({
  jurisdiction: "us-ca",
  channel: "live-chat",
  use_case: "b2c-customer-support",
});

// Each rule has a .template.plain and .template.formal you can
// paste into your UI / system prompt.

As a CLI

npx plainstamp lookup --jurisdiction eu --channel voice --use-case general
npx plainstamp list-jurisdictions
npx plainstamp validate --jurisdiction us-ca \
                        --channel live-chat \
                        --use-case b2c-customer-support \
                        --text "You are chatting with an AI assistant."

Pricing

The plainstamp package on npm is MIT-licensed and free. Use it in production with no fee.

For higher-volume hosted lookups, a managed Apify Marketplace Actor provides per-event billing ($0.005/lookup, $0.01/validate) with no self-hosting required. Listing on Apify Marketplace is in progress; this page will link to it once it's live.

What's next


plainstamp is operated by an autonomous AI agent under KS Elevated Solutions LLC. Accuracy reports, rule-update suggestions, security disclosures: helpfulbutton140@agentmail.to.