Skip to main content
Glama

Server Details

English profanity filter: find and censor swear words, incl. obfuscations. Word list, not AI.

Ownership verified
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A4.4/5.0

Scored across 1 tool

Disambiguation5/5

There is only one tool, so there is no possibility of overlap, misselection, or confusion between tools. Its purpose (profanity detection in English text) is unambiguous and self-contained.

Naming Consistency5/5

The single tool name check_profanity follows a clear verb_noun convention and is descriptive of the action performed. With only one tool there is no opportunity for naming inconsistency.

Tool Count4/5

The server's scope is a single atomic operation, so one tool is a defensible, well-scoped surface rather than an artificially fragmented one. It is slightly thin only in that batch checking or configuration (e.g. custom word lists, other languages) could conceivably be exposed, but nothing is bloated.

Completeness4/5

The tool covers the domain well: detection with match terms, UTF-16 positions, censor output, whitelist handling, and documented limits. Minor gaps exist (no batch input, no non-English or user-supplied word lists), but these are workarounds an agent can handle by calling the tool repeatedly.

Available Tools

1 tool
check_profanityFind and censor English swear wordsA
Read-onlyIdempotent
Inspect

Detect English profanity in text (word list with leetspeak, look-alike letters, repeated letters, dotted/spaced letters and hidden characters handled) and return the matched terms, their positions (UTF-16 start/end in your text) and, unless censor is false, a censored copy of the same length. Common innocent words (Scunthorpe, cockpit, Shiite, cumin) are whitelisted; it does not understand context and is English only. Text up to 10240 UTF-8 bytes; it is not stored or logged. matches is capped at 50 here (match_count is the full total). Read-only. Same engine, keys and limits as POST /v1/check.

ParametersJSON Schema
NameRequiredDescriptionDefault
denyNoExtra words to flag on word boundaries, e.g. ["jerk"].
textYesThe text to check, at most 10240 UTF-8 bytes.
allowNoWords never to flag, e.g. ["hell", "damn"]. Allow wins over deny.
censorNoReturn a censored copy (default true).

Output Schema

ParametersJSON Schema
NameRequiredDescription
termsYes
engineNo
matchesYesMatches in text order, at most 50 here (see match_count for the total). start/end are UTF-16 indices into your text.
versionNo
censoredNoYour text with each match replaced by asterisks (same length). Omitted when censor is false.
truncatedNoTrue when matches lists fewer than match_count (over 50 here, or the API's own cap).
text_bytesNo
match_countYesTotal number of matches in the text (not capped).
has_profanityYes
matches_returnedNo

TDQS

A4.4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover the safety profile (readOnly, idempotent, non-destructive), and the description still adds substantial non-obvious behavior: text is not stored or logged, matches is capped at 50 while match_count is the full total, and a censored copy of equal length is returned unless censor is false. These are exactly the traits an agent cannot infer from structured fields.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single dense sentence front-loads the core purpose before limitations, followed by tight constraint and privacy clauses. It is long but nearly every clause carries information; minor readability cost from the parenthetical enumeration of engine features.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present, return values need not be explained, yet the description still discloses limits, privacy handling, whitelist behavior, and result capping. For a read-only detection tool with no siblings, nothing needed to call it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

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 all four parameters (including deny/allow precedence and the censor default), putting the baseline at 3. The description adds useful context on whitelisting and output-length behavior but does not clarify the deny/allow parameters themselves beyond what the schema states.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Names a specific verb and resource ('Detect English profanity in text') and immediately scopes the engine's capabilities (leetspeak, look-alike letters, hidden characters). An agent knows exactly what this tool does 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.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No sibling tools exist, so routing is moot, but the description gives clear operating context: English only, no contextual understanding, whitelisted innocent words, and 'Same engine, keys and limits as POST /v1/check.' It does not state explicit when-not-to-use conditions, but the limitations paragraph functionally bounds usage.

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.

  1. 1 tool update
    • First observedcheck_profanity

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Content moderation and profanity detection MCP server with 19 tools, 24 language support, leetspeak/Unicode obfuscation detection, context-aware analysis, batch processing, and user tracking for AI-powered content safety.
    12 npm
    65
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Sanitizes text and files by removing PII, secrets, and custom patterns locally before sending to LLMs, with optional reverse-scrubbing.
    3
    1,224 npm
    2
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources