Skip to main content
Glama

ScorpTech x402 Tools

Fuzzy Match

fuzzy_match
Read-onlyIdempotent

Fuzzy string matching for entity resolution, dedupe and "did you mean": match one or many queries against up to 5,000 choices with RapidFuzz-style scorers (WRatio weighted blend, ratio / InDel similarity, partial_ratio, token_sort, token_set, Jaro-Winkler, normalised Levenshtein, Damerau / OSA). Default preprocessing lowercases, folds accents and strips punctuation. Returns top matches with 0-100 scores and choice index, optional per-scorer breakdown. Offline, deterministic. Price: $0.002 USDC per successful call (x402, Solana). Same tool over HTTPS: POST https://scorptech.it.com/api/x402/v1/fuzzy-match

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "choices": "<choices>"
    },
    "name": "fuzzy_match"
  }
}

Input Schema

NameRequiredDescriptionDefault
limitNoMatches per query
queryNoString to match
scorerNoSimilarity scorerwratio
choicesYesCandidate strings
detailsNoAdd every scorer for each match
queriesNoSeveral queries (batch)
normalizeNoLowercase, fold accents, strip punctuation first
thresholdNoMinimum score

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.3/5.0
Behavior4/5

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

Beyond the readOnly/idempotent annotations, it discloses valuable operational facts an agent could not infer: default preprocessing (lowercase, accent folding, punctuation stripping), that results are 0-100 scores with choice index plus optional per-scorer breakdown, that execution is offline and deterministic, and the per-call price ($0.002 USDC via x402 on Solana) plus the HTTPS equivalent. 'Offline' sits slightly awkwardly against openWorldHint=true, but the x402/Solana payment path plausibly justifies the open-world flag. Error behavior on oversized input is not described.

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?

Front-loaded with purpose, then scorer vocabulary, then return shape, then cost/endpoint — a sensible ordering with no filler sentences. The scorer enumeration is long but each term carries information; the pricing and URL at the tail are legitimate operational detail rather than padding.

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

Completeness4/5

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

With no output schema, the description carries the burden of explaining returns, and it does (top matches, 0-100 scores, choice index, optional per-scorer breakdown). For an 8-parameter tool it covers the scorer choice and normalization defaults well, but leaves the query-vs-queries requirement and tie-breaking/ordering behavior unspecified.

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 coverage is 100%, so the baseline is 3; the description goes further by explaining what the scorer enum values mean (WRatio weighted blend, token_sort, token_set, Jaro-Winkler, normalised Levenshtein, Damerau/OSA) and by documenting the default normalization semantics. It stops short of resolving the key ambiguity that neither query nor queries is marked required, so an agent must infer that at least one must be supplied.

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?

States a specific operation (fuzzy string matching), its scope (one or many queries against up to 5,000 choices), the underlying engine (RapidFuzz-style scorers, enumerated by name), and intended use cases (entity resolution, dedupe, 'did you mean'). An agent can immediately tell this apart from calculation or parsing siblings.

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?

Clear context is given via named use cases (entity resolution, dedupe, 'did you mean') and the note that it works on one query or a batch, which orients the agent to the right situations. However, no sibling is named for contrast — siblings like text_similarity and dedupe_records overlap, and the description never says when to prefer one over the other.

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