A forensic bug detection and analysis system that uses LangGraph with LLMs to identify silicon rule violations and hardware state transition errors in code. It performs multi-stage analysis including technical research, state tracing, violation detection, and automated fixing with test generation.
This server has exactly ONE tool (search_documents) with critically incomplete definitions. The tool lacks a documented output schema, comprehensive parameter descriptions, and actionable error handling. The description is minimal (88 chars, below the 194-char baseline), parameter descriptions are absent, and there is no evidence of error classification or recovery guidance. The server is primarily a LangGraph-based application with MCP bolted on as a client bridge, not a properly designed MCP server. Tool definition quality is far below production standards.
Search MCP tool that retrieves relevant documentation from storage based on a query string. Called via MCP client to fetch technical context and manuals.
Missing output schema documentation. Tool description states result is a text response but does not specify structure, fields, or format. LLMs cannot plan downstream calls without knowing what fields to extract.
Parameter description is minimal ('Search query string to retrieve matching documents from storage'), only 72 characters. Lacks guidance on query format, expected length, special characters, or examples of good queries.
Tool description (88 chars) is below the 194-char baseline. Does not answer WHEN to use this tool vs alternatives, what prerequisites exist, or what happens on error. Too vague for reliable LLM selection.
No error handling guidance. The mcp_client.py code catches exceptions but returns a generic error string ('No documentation found in storage' or 'MCP Connection Error'). No indication of retryability, user-fixable vs fatal, or recovery steps.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 36 | <=2025-11-25 | v2 |
| 2026-03-09 | F | 21 | - | v1 |
No pagination or result limit documented. Tool accepts a free-form query string with no constraints on size, character set, or expected result count. Large result sets could blow context windows; no limit is stated.
Tool server implementation (mcp_server.py) is not provided in source. Only client-side invocation (mcp_client.py) is visible. Cannot verify actual tool registration, schema implementation, or MCP protocol compliance on the server side.
No input validation documented. Query parameter has no length limit, regex pattern, or character constraints stated. LLMs may pass injection payloads or absurdly long queries without guidance.