x402-substring-between
Substring Between: Returns the text between the first open and following close delimiters 🆓 5 free trial calls per signed wallet
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | ||
| open | No | ||
| text | No | ||
| close | No | ||
| input | No | ||
| start | No |
Substring Between: Returns the text between the first open and following close delimiters 🆓 5 free trial calls per signed wallet
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | ||
| open | No | ||
| text | No | ||
| close | No | ||
| input | No | ||
| start | No |
Changes observed during successful MCP inspections.
Input schema / properties / close / descriptionRemoved value: -"Close to process"Input schema / properties / end / descriptionRemoved value: -"End to process"Input schema / properties / input / descriptionRemoved value: -"Input to process"Input schema / properties / open / descriptionRemoved value: -"Open to process"Input schema / properties / start / descriptionRemoved value: -"Start to process"Input schema / properties / text / descriptionRemoved value: -"Text to process"Input schema / properties / closeAdded value: +{
+ "description": "Close to process",
+ "type": "string"
+}Input schema / properties / endAdded value: +{
+ "description": "End to process",
+ "type": "string"
+}Input schema / properties / inputAdded value: +{
+ "description": "Input to process",
+ "type": "string"
+}Input schema / properties / openAdded value: +{
+ "description": "Open to process",
+ "type": "string"
+}Input schema / properties / startAdded value: +{
+ "description": "Start 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 at all, the description carries the full behavioral burden, yet it only states the core delimiting rule. It omits what happens when delimiters are absent, whether matching is case-sensitive, what the return payload looks like, and the nature of the 'free trial' paywall.
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 behavioral sentence is short and front-loaded, but the appended marketing line ('5 free trial calls per signed wallet') is promotional noise rather than call-relevant information.
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 six-parameter tool with no annotations and no output schema, the description is far too thin: it neither disambiguates the parameter set nor explains return values or failure modes, leaving the agent under-informed.
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% across six parameters, so the description must compensate. It only vaguely references 'open' and 'close' delimiters, leaving start/end, text, and input completely unexplained and giving no clue about the duplicate-looking delimiter parameters.
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 operation (returning text between an opening and closing delimiter) which goes slightly beyond restating the name. However, it does not distinguish this tool from the adjacent siblings x402-substring-after and x402-substring-before, so an agent cannot tell which delimiter tool to pick from the text alone.
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 use this versus substring-before/after, no mention of required inputs, and no conditions or exclusions. The agent is left to infer usage entirely from the name.
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.