Centrum zarządzania serwerami i klientami Model Context Protocol - A management hub for MCP servers and clients with integrated Ollama support, service registry, and web dashboard
Server exhibits significant quality gaps across naming, descriptions, and schemas. Tool names lack consistent verb prefixes (list_tables, execute_python are good; scrape_webpage is vague). Descriptions are present but minimal (10-50 chars), below the 194-char baseline for production tools. Input schemas are visible but lack parameter descriptions, critical for LLM reasoning. The query tool accepts arbitrary SQL with only a regex check (SELECT-only), creating injection risk. No output schemas documented. Error handling is absent; handlers throw generic errors without recovery guidance. Security concerns: write_file and execute_python are high-risk with minimal validation. Composition is reasonable (8 tools, mostly single-purpose), but missing pagination, rate limiting, and idempotency guarantees.
Create a Jupyter notebook
Execute Python code safely in a sandboxed environment
List contents of a directory
List all tables in database
Execute a SQL query
Read contents of a file
Scrape content from a webpage
Write content to a file
Parameter descriptions missing across all tools. Schema defines properties but provides no guidance on format, constraints, or valid values. LLMs cannot infer parameter semantics from names alone (e.g., 'selector' in scrape_webpage lacks CSS selector syntax guidance).
No output schemas documented. Handlers return unstructured objects (e.g., {rows, rowCount} for query; {content} for read_file). LLMs cannot plan downstream tool calls or extract required fields without knowing response structure.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 46 | 2026-07-28+ | v2 |
Insufficient input validation and error handling. query() checks only SELECT regex; write_file() has no path traversal guards; execute_python() trusts pip_install allowlist but provides no error recovery guidance. Errors are generic exceptions, not actionable for LLM retry.
Tool descriptions are too brief (10 - 50 chars vs. 194-char baseline). 'Execute a SQL query' and 'Read contents of a file' lack context on when to use, prerequisites, or side effects. Descriptions should state WHAT, WHEN, and WHAT IT RETURNS.
No pagination support for list_tables and list_directory. Large result sets will blow context windows. Missing limit, offset, and total_count fields. No guidance on result caps.