Deterministic Code Graph + Document Lifecycle Knowledge Graph + State System for AI Coding Agents
Project Intelligence provides 11 tools with explicit schemas and descriptions. Naming follows verb_noun patterns (project_context, knowledge_update, decision_record). Most tools have 50-150 char descriptions and documented input parameters with types. However, several tools lack depth in parameter descriptions, output schemas are not formally documented, and error handling guidance is minimal. Tool annotations (readOnlyHint, destructiveHint, idempotentHint) are present on all tools, which is excellent. The server targets a specialized domain (code graph + knowledge lifecycle) with reasonable composition, but descriptions could be more LLM-optimized and parameter constraints more explicit.
Create a new Architecture Decision Record (ADR) or Design Document with automatic ID assignment
Query sub-graph of relations for a symbol or knowledge node (supports depth 1-2)
Evaluate impact of changing a symbol, file, knowledge design, or diff
Ingest external/ChatGPT markdown plan safely with conflict detection and automated branching (always additive, non-destructive)
Detailed inspection of design doc, ADR, or proposal by ID or query
Update status, summary, or relations of an existing Knowledge Node (Design, ADR, or Proposal)
Primary Bounded Context Pack entry point for tasks, features, or design queries
Output schemas not formally documented. Tools return text/JSON responses but no structured schema is declared for downstream tool chaining. LLMs cannot predict field names or types for follow-up calls.
Parameter descriptions lack actionable constraints. 'query' in project_context, 'target' in graph, and 'symbol_or_span' in source lack format guidance (e.g., 'Knowledge Node ID format: D-NNN or P-NNN', 'span format: path/file.ts:10-50'). LLMs may pass invalid formats.
Error handling lacks recovery guidance. Tools return 'not found' messages but do not suggest alternatives or next steps. E.g., 'Symbol not found' should suggest 'Try project_map to see available symbols' or 'Use search_*' if such tools existed.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 58 | 2026-07-28+ | v2 |
Hierarchical project knowledge & code map showing modules, designs and statuses
Read exact code span without opening full files (strictly bounded to project root)
Update current project work focus, stage, and next step (runtime state, not persisted to disk)
Inspect code symbol definition, callers, callees, line spans and bound knowledge
Mutation tools (ingest_document, knowledge_update, decision_record, state_update) lack confirmation or dry-run patterns. Agents could accidentally overwrite designs or corrupt state without a safety gate.
project_map has empty inputSchema ({}). While this is valid for no-parameter tools, the description does not explain what the output structure contains or when to call it relative to project_context.