Free tool
Can a model pick the right tool?
Paste the JSON your MCP server returns from tools/list and this reports what the list costs in context before anyone has said anything, which definitions read so alike a model will confuse them, and which parameters it has no way to fill correctly. Nothing is uploaded — it runs in your browser.
Why does a tool list cost anything?
Because the definitions travel with every request. Anthropic’s tool-use documentation is explicit that pricing counts the total input tokens sent to the model including the tools parameter, and that the extra tokens come from tool names, descriptions and schemas. The same documentation ships a dedicated tool-search tool for working with thousands of tools by loading them on demand — which is an official acknowledgement that long tool lists are a real problem.
What makes two tools collide?
A model chooses a tool by reading its name and description. When two read alike, it picks wrong, and the failure looks like a model problem rather than a schema problem. This compares every pair by the overlap of their character trigrams — Jaccard similarity — and flags anything at or above 60%. That threshold is deliberately loose. It is a prompt to go and look, not a verdict.
Which parameters get flagged, and why?
Two kinds. A parameter with no description gives the model nothing to reason from but its name. A string with no enum, pattern, maxLength or format accepts anything at all, which is the parameter most often filled with something the server cannot use. A missing outputSchema is noted too: without one, nothing downstream knows the shape of what comes back.
How accurate is the token number?
It is an approximation and it is labelled as one everywhere it appears. The figure is bytes ÷ 3.6, a working ratio for minified JSON. A real byte-pair tokenizer needs a megabyte-scale vocabulary file, which would be a dependency in everything but name, and this site ships none. For an exact count, run the tool list through a real tokenizer. Publishing an approximation and calling it one is honest; publishing it as a measurement would not be.
Where do these checks come from?
The field set is the MCP tools specification: name, title, description, inputSchema, outputSchema, annotations. The same shape covers an Anthropic tools array and an OpenAI function array, so all three pastes work. We ship MCP servers in production — the assistant inside Extrack has 29 actions behind it — and these are the checks that came out of doing it.
How Extrack’s 29 actions were built