Skip to main content

Unprofane

com.unprofane/unprofaneVersion 0.1.5

Should I allow this text? Profanity and toxicity checks that are hard to fool, with the evidence.

Status

Responds699 msAnswered our handshake without sign-in.

Registry data may be out of date

We could not refresh it, so this page shows the last copy.
Last checked
Nov 14, 2026, 14:20 UTC
Latency
699 ms
Remotes responding
1 of 1
Sign-in
API key
Hosting
Hosted outside the EU (detected)
Registry data as of
Nov 14, 2026, 22:14 UTC

Data from the official MCP Registry, checked by run.zero. How we check

Connect

Streamable HTTP
https://api.unprofane.com/mcpResponds699 ms
No sign-in

Claude Code

claude mcp add --transport http unprofane https://api.unprofane.com/mcp --header 'Authorization: Bearer <YOUR_TOKEN>'

Replace <YOUR_TOKEN> before running.

Claude Desktop and claude.ai

Settings > Connectors > Add custom connector
Name: unprofane
Remote MCP server URL: https://api.unprofane.com/mcp
This server expects the header Authorization.

Cursor

{
  "mcpServers": {
    "unprofane": {
      "url": "https://api.unprofane.com/mcp",
      "headers": {
        "Authorization": "Bearer <YOUR_TOKEN>"
      }
    }
  }
}

Replace <YOUR_TOKEN> before running.

VS Code

code --add-mcp '{"name":"unprofane","type":"http","url":"https://api.unprofane.com/mcp","headers":{"Authorization":"Bearer <YOUR_TOKEN>"}}'

Replace <YOUR_TOKEN> before running.

Built your own server? run.zero hosts MCP servers on European infrastructure.

Host your own MCP server on run.zero

Tools

5 tools

Tools of Unprofane
Read-only
Idempotent
Open world
check_batchCheck up to 100 texts in one call, 30,000 characters in all, with the same settings. Each item has your id and a text; results come back in order, each with its id and either a result (as check_text returns) or an error. Read-only; counts one check per item.NoYesYesNo
check_textDecide whether one text should be allowed: profanity, slurs, insults, threats and sexual language, disguised spellings included (sh1t, f.u.c.k, leetspeak, homoglyphs). Returns the action (allow, review, block), the matches with their categories and the tricks used, a one-sentence reason and a censored version. Read-only; counts one check against the plan. If the action is wrong, report it with report_result and the result's id.NoYesYesNo
get_integration_snippetA complete, runnable recipe for adding Unprofane to a platform in a language: code to paste. Use it when asked to add a profanity or username filter to an app. Read-only and free: it checks no text.NoYesYesNo
get_usageThe checks this key's account has used in the current billing period, how many its plan includes and any overage, with the share answered by the rules alone, the model or the cache. Counts up to the last full hour. Read-only and free.NoYesYesNo
report_resultTell Unprofane a check got it wrong (or right): the result's id, the verdict and, if you know it, the action it should have taken. A person reads every report and corrections ship in a later engine. Writes a report; it changes no result and counts no check.NoNoNoNo

Details

Registry status
Active
Published
Oct 24, 2026
Updated
Oct 24, 2026
Repository
Not given
Categories
Uncategorized
GDPR
Not declared

Are you the operator? Claim this listing