FastMCP Python REPL MCP server that exposes a tool to execute Python code on the server and receive output in real time
Single tool 'run_python' has a reasonable description (127 chars, within 10-1024 range) but critical gaps in schema completeness, parameter documentation, and error handling. Input schema exists but lacks formal type/description structure in JSON Schema format. No output schema documented. No error handling guidance, no input validation, no security considerations for arbitrary code execution. Tool name 'run_python' is generic and does not follow verb_noun pattern (should be 'execute_python' or 'run_code'). Missing parameter constraints, format specifications, and recovery guidance.
Execute Python code and return the output. This tool allows any connected AI assistant to run Python code on this server and get back the result instantly.
No output schema documented. LLMs cannot plan downstream operations or extract structured data from execution results.
Input parameter 'code' lacks formal JSON Schema type/description structure. Parameter description is missing entirely in schema definition.
No error handling or recovery guidance. Tool executes arbitrary Python code with no validation, timeout, or error classification. Irreversible operations (file deletion, network calls) have no confirmation or dry-run support.
No input validation or constraints. LLMs can pass infinite loops, memory bombs, or malicious code. No rate limiting, timeout specification, or sandbox documentation.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 49 | 2026-07-28+ | v2 |
Tool name 'run_python' is generic. Follows 'verb_noun' loosely but 'run' is vague (run what? execute? interpret?). Consider 'execute_python_code' or 'eval_python' for clarity.