I open-sourced a linter for MCP tool descriptions
Описание и применение
Линтер Forecall оценивает описания инструментов MCP, выявляя недостающие сведения и похожие инструменты, помогая разработчикам улучшать ясность и снижать ошибки агентов.
Задача
AI agents need clear, actionable tool descriptions to choose and use MCP tools correctly, but many servers provide minimal or ambiguous descriptions.
Результат
The linter identifies 69% of tools lacking usage context and flags confusable pairs, guiding developers to rewrite descriptions for clearer agent interactions.
Рабочий процесс
- 1. Run
npx forecall dump -o memory.json -- npx -y @modelcontextprotocol/server-memoryto dump a server’s tool list. - 2. Run
npx forecall lint memory.jsonto score the tools and generate a report. - 3. Review the report for low scores, confusable pairs, and missing fields.
- 4. Refactor tool descriptions based on feedback (e.g., add usage context, examples).
- 5. Re-run the linter to verify improvements.
- 6. Integrate
forecall lintinto CI with--fail-under 60to enforce quality thresholds.
Доказательства
AI agents choose an MCP tool by reading three things: its name, its description and its input schema.
Forecall’s linter checks exactly that, and its code is now public under Apache-2.0: github.com/forecall/forecall-cli.
Average score 43.8 / 100 Tools 9 Confusable pairs 1 Across the server Major confusable_pair delete_entities and delete_relations are easy to mix up.
Use it in CI --fail-under 60 exits with 1 when the average is below 60, and --json prints the report as JSON.
We ran it over the 46 most-used servers on Smithery: 769 of 1,118 tools (69%) never say when to use them.
- Дата записи: 2026-10-08T04:55:48.327Z