MCP protocol server that serves AST data from .astdb/ database. Provides comprehensive toolkit for analyzing Abstract Syntax Trees (ASTs) of codebases and serving that data through a Model Context Protocol server.
Server has 5 tools with complete JSON Schema definitions and descriptions. Naming follows verb-noun patterns well (search-*, get-*, list-*). Descriptions are present but concise (50-80 chars typically). Schemas are well-formed with proper types, defaults, and constraints (e.g., maxResults, minScore ranges). However, descriptions lack LLM guidance on WHEN to use each tool and how they relate to each other. No output schemas documented. No error handling guidance visible. Tool composition is clear (each does one thing), but no documentation of chaining relationships or prerequisite calls.
Get detailed information about a specific code annotation by ID
Get statistics about parsed files and annotations
List all files that have been parsed and indexed
Search for code annotations by exact or partial function/method signature
Search for code annotations similar to provided text using semantic similarity
Tool descriptions lack LLM guidance on tool selection criteria and prerequisites. Descriptions are factual but do not explain WHEN to use each tool vs. similar alternatives (search-similar vs search-signature) or what the LLM should expect from results.
No output schemas documented in tool definitions. LLMs cannot plan downstream operations or extract fields from results. Response structures are inferred only from names (e.g., 'get-annotation' suggests an annotation object, 'list-files' suggests an array of files).
No error handling documentation. Tool definitions do not specify what errors can occur, how they should be classified (retryable, user-fixable, fatal), or what recovery actions the LLM should take.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | C | 68 | <=2025-11-25 | v2 |
| 2026-03-09 | F | 19 | - | v1 |
No tool composition guidance. Tool descriptions do not document dependencies or relationships. E.g., does search-similar return annotation IDs that can be passed to get-annotation? Does list-files need to be called before search-signature?
list-files and get-file-stats take no parameters. Descriptions do not indicate whether results are paginated, filtered, or capped. No pagination support visible if results are large.