x402-strip-emoji
Strip Emoji: Remove emoji characters in the U+1F300-U+1FAFF and U+2600-U+27BF ranges from text and return what remains. 🆓 5 free trial calls per signed wallet
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| text | No | ||
| input | No |
Strip Emoji: Remove emoji characters in the U+1F300-U+1FAFF and U+2600-U+27BF ranges from text and return what remains. 🆓 5 free trial calls per signed wallet
| Name | Required | Description | Default |
|---|---|---|---|
| text | No | ||
| input | No |
Changes observed during successful MCP inspections.
Input schema / properties / input / descriptionRemoved value: -"Input to process"Input schema / properties / text / descriptionRemoved value: -"Text to process"Input schema / properties / inputAdded value: +{
+ "description": "Input to process",
+ "type": "string"
+}Input schema / properties / textAdded value: +{
+ "description": "Text to process",
+ "type": "string"
+}Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it does disclose genuinely useful behavior: the exact Unicode ranges removed and that only the remainder is returned. It also reveals the payment model ('5 free trial calls per signed wallet'), which is real context an agent needs. It stops short of covering what happens to text when no emoji are present or how a stripped result is shaped.
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 core behavior is front-loaded in a single tight sentence, with the billing note trailing as secondary information. Amusingly, the pricing tag itself uses an emoji, but nothing is padded or redundant.
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 string transform, the removal-range specification is enough to call it correctly, and no output schema means return values need not be explained. However, the duplicate undocumented parameters and the absence of any statement about the free-call limit behavior leave gaps an agent might trip on.
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 0% and two parameters ('text' and 'input') are both undocumented strings with no required flag, so an agent cannot tell which field is actually consumed or whether either is optional. The description mentions 'text' implicitly but says nothing about the 'input' alias, leaving the ambiguity entirely unresolved.
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 verb and resource ('Remove emoji characters ... from text and return what remains') and even states the exact code-point ranges, so the operation is unambiguous. It misses only sibling differentiation: near-duplicates such as x402-remove-emoji exist and are never distinguished from this tool.
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 guidance on when to choose this over x402-remove-emoji, or when to use x402-count-emoji / x402-has-emoji instead. Usage is only implied by the tool name, and no preconditions for the free-trial/billing model are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.