A collection of MCP servers and tools for agentic systems, including code execution, thinking steps, and tool gateways
Six tools with clear action verbs and reasonable descriptions (avg 156 chars). All have input schemas with types. However, parameter descriptions are sparse or missing entirely (e.g., 'arguments' in call_tool lacks detail on expected structure). Output schemas are undocumented, LLMs cannot predict what search_tools or call_tool return. Error handling is minimal; no recovery guidance. The 'think' tool is well-annotated but semantically a no-op. Code execution tools (run_python, list_tools, read_tool) are well-designed for their narrow purpose but lack pagination, result limits, and structured output specs.
Invoke a catalog tool by name. Use `search_tools` first to find the name and its arguments.
List the tool modules available to import in run_python. Start here, then read_tool the ones you need before writing code.
Return the source of a tool module so you can see its functions and signatures before composing them.
Execute Python code with the tools package importable, and return its stdout and stderr. Import what you need (`from tools import math_utils`), do the heavy work here, and print only the result you want back; large intermediate data should stay in this environment, not flow into context.
Find tools in the catalog that match a query, without loading every definition into context. Start here, then call the matches by name.
Record a reasoning step before the next action. Use this to work through a tool result, check the rules a task must follow, or plan a sequence of steps where an early mistake would compound. It performs no action and touches no state; it only gives you room to reason.
Output schemas undocumented. search_tools and call_tool return structures are not specified. LLMs cannot predict field names, types, or pagination behavior.
Parameter 'arguments' in call_tool lacks description. LLMs do not know what structure to pass, is it a flat dict, nested object, or JSON string?
No error handling guidance. run_python returns raw stderr/stdout; no actionable recovery hints. Timeout errors and execution failures do not guide the LLM on retry strategy.
search_tools 'detail' parameter lacks enum constraint. Description says 'summary' or 'full' but no formal enum in schema, LLMs may hallucinate other values.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 60 | 2026-07-28+ | v2 |
No pagination or result limits documented. list_tools and search_tools may return unbounded lists; no mention of max results, offset, or next_cursor.