A Java-based MCP server providing tools for file operations, database queries, and network requests
This server has severe definition quality gaps. All 4 tools lack proper input schemas in the source code, only parameter names and basic type hints are visible in the Message handler, not formal JSON Schema definitions. Descriptions are present but generic (10-50 chars), failing to explain WHEN to use each tool or what distinguishes them. No output schemas are documented. FILE_WRITE and DATABASE_QUERY are destructive but lack confirmation patterns or error recovery guidance. No parameter constraints (enums, ranges, formats) are enforced. The code shows basic parameter validation (null checks) but no actionable error messages that guide LLM recovery. Tool composition is poor: FILE_READ and FILE_WRITE should accept human-friendly paths with validation; DATABASE_QUERY exposes raw SQL without parameterization safeguards visible in the schema layer.
Executes SQL queries or updates against a connected database
Reads the contents of a file from the specified file path
Writes content to a file at the specified file path
Performs HTTP GET or POST requests to a specified URL
No formal JSON Schema input definitions visible in source. Tools show parameter names and basic type hints in handler methods, but no explicit schema registration with type, description, required fields, or constraints.
Descriptions are too short (10 - 50 chars) and lack context. 'Reads the contents of a file from the specified file path' does not explain when to use FILE_READ vs other discovery tools, what file types are supported, or size limits. Baseline: A+ tools average 194 chars with WHEN/WHY guidance.
FILE_WRITE and DATABASE_QUERY are destructive (modify state) but lack confirmation patterns, dry-run modes, or error recovery guidance. LLMs cannot distinguish retryable from irreversible failures. No undo/compensation tools offered.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 28 | <=2025-11-25 | v2 |
DATABASE_QUERY accepts raw SQL with optional parameterized query params, but no SQL injection safeguards are visible in the schema layer. Parameter descriptions do not explain parameterization format or constraints. Baseline: A+ tools explicitly document injection prevention.
Error handling returns generic messages ('Se requiere filePath en los parámetros') without recovery guidance. LLMs cannot infer next steps. Baseline: A+ tools include 'Try search_users() with a partial name' style recovery hints.