The LPC MCP Server provides four tools for code navigation and diagnostics on LPC files. All tools have descriptions (10-100 chars, all above minimum but several are brief), and input schemas are present with basic parameter descriptions. However, the descriptions lack depth regarding LLM decision-making (when to choose one tool over another, what to do with results), output schemas are not documented, and error handling is absent from the definitions. Tool names follow the get_*/find_* pattern correctly. Parameters have types and brief descriptions, but lack examples of constraints (e.g., for file paths). The tools are narrowly focused (good composition) but lack guidance on chaining behavior. Overall, the definitions are functional but suboptimal for LLM reasoning.
Go to definition of a symbol at a specific position in an LPC file
Get diagnostic errors and warnings for an LPC file
Get hover information (documentation) for a symbol at a specific position in an LPC file
Find all references to a symbol at a specific position in an LPC file
Tool descriptions are too brief and lack decision-making context. Descriptions should explain WHEN to use each tool (e.g., 'Get hover documentation to understand a symbol's type and signature'), WHAT the result contains, and HOW to chain to other tools. Current descriptions are 45-50 characters, below the 194-char baseline for production tools.
No documented output schemas. LLMs cannot plan chained calls or extract results without knowing field types and names. Tools should document: What does hover return (type name, docs, location)? What does definition return (file path, line, column)? What does references return (array of locations, count)?
No error handling or recovery guidance in tool definitions. If a file is not found, LSP connection fails, or a symbol has no definition, what should the LLM do? Tool definitions should specify error conditions and recovery steps (e.g., 'If no definition found, try lpc_references to find callers instead').
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | D | 56 | <=2025-11-25 | v2 |
| 2026-03-09 | F | 44 | - | v1 |
Parameter descriptions lack constraint details. The 'file' parameter should specify: absolute path only? Relative paths allowed? Must file exist? The 'line' and 'character' parameters should clarify: are they 0-indexed or 1-indexed? What happens if they exceed file length?
No tool-chaining guidance. These four tools are tightly related (navigate to definition, then find references to that symbol, then hover for docs). Descriptions should hint at common workflows: e.g., 'After calling lpc_definition, pass the file and position to lpc_hover for documentation'.