Skip to main content
Glama

Finekot API

regex_test

Tests a Python regex against text: op=match (first match), op=findall (all matches with groups and positions), op=sub (replace). Runs in a separate process with a 100 ms timeout, so catastrophic backtracking (ReDoS) returns 422 instead of hanging. Text up to 10 000 chars, pattern up to 1 000. Cost €0.0005 per call, charged to the API key in Authorization: Bearer. Parameters — pattern: regex pattern; text: text to test; flags: any of i,m,s,x; op: match (default) | findall | sub; replacement: replacement string (sub).

Input Schema

NameRequiredDescriptionDefault
opNo
textNo
flagsNo
patternNo
replacementNo

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior5/5

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

With no annotations supplied, the description carries the full behavioral burden and does so thoroughly: separate process isolation, a 100 ms timeout, catastrophic backtracking (ReDoS) returning 422 rather than hanging, input size caps (10 000 chars text, 1 000 pattern), and per-call pricing charged to the bearer-token API key. Failure mode, limits, and cost are all disclosed — exactly the context an agent cannot get 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?

The sentence is dense but front-loaded: behavior and constraints come first, parameters last. The 'Parameters —' list is necessary given 0% schema coverage, though the overall block is long enough that the op semantics are stated twice (once up front, once in the parameter list).

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?

An output schema exists, so return values need not be described. For a five-parameter tool with no annotations, the description covers modes, limits, timeout/error behavior, auth, and cost — everything an agent needs to call it correctly and interpret a 422.

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

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate, and it does: all five parameters are explained with allowed values (flags limited to i,m,s,x; op to match|findall|sub), the default op, and the conditional nature of replacement (only for sub). It does not clarify that every parameter is technically optional/nullable in the schema or which are effectively required, which is the only remaining gap.

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?

The description opens with a specific verb and resource ('Tests a Python regex against text') and immediately enumerates the three modes (match, findall, sub), so an agent knows exactly what the tool does. Nothing in the sibling list (text_diff, extract_json, math_eval) overlaps with regex evaluation, and the mode enumeration makes the scope unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

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

Usage is implied through the op enumeration — an agent can infer it should pick findall when it wants all matches and sub when it wants replacement — and the default (match) is stated. However, there is no explicit when-to-use/when-not-to-use framing and no named alternative for adjacent tasks such as extracting structured JSON (extract_json) or diffing text.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources