MCP server exposing repository analysis tools including architecture graphs, symbol lookup, semantic search, impact analysis, and health reporting via HTTP API delegation
ARIA has 17 tools with consistent naming (verb_noun pattern: get_*, list_*, analyze_*, generate_*, export_*, query_*, semantic_*, etc.) and basic parameter schemas. However, descriptions are generic and lack LLM-optimization guidance. Most tools have 1 - 4 parameters with type definitions, but parameter descriptions are minimal (often 1 - 2 sentences). Output schemas are not documented, LLMs cannot infer what fields to expect from responses. Error handling is absent from tool definitions. The server relies on a backend API (ARIA backend) for actual analysis, but tool definitions do not explain failure modes, recovery paths, or what data is returned. This is typical of community servers that expose API wrappers without LLM-specific refinement.
Initiates analysis of a GitHub repository via ARIA backend.
Exports a generated report in the specified format (markdown or html).
Generates a comprehensive analysis report for a repository.
Classifies the API surface of the repository.
Retrieves the architecture summary for a repository.
Retrieves the call graph summary for a repository.
No output schemas documented. LLMs cannot infer what fields responses contain, forcing them to guess at downstream tool parameters and breaking tool chaining.
Parameter descriptions are minimal (1 - 2 sentences) and lack format/constraint guidance. E.g., 'operating_mode' in get_impact_analysis lists enum values in description but not as a formal enum constraint; 'top_k' in semantic_search lacks min/max bounds.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 52 | <=2025-11-25 | v2 |
Identifies potentially dead or unused code in the repository.
Retrieves the serialized dependency graph for a repository.
Retrieves symbols defined in a specific file.
Predicts which files a proposed change will affect.
Retrieves the parsed tech stack, dependency declarations, and high-level structure of an analyzed repository.
Retrieves the definition of a specific symbol.
Retrieves references to a specific symbol.
Retrieves a contextual workspace view for a repository.
Lists all repositories currently analyzed and indexed in the system.
Queries the codebase using RAG with evaluation.
Performs semantic search across the codebase.
No error handling guidance in tool definitions. Tools do not document failure modes (e.g., 'repository not found', 'analysis in progress', 'API rate limit'), recovery paths, or what the LLM should do next.
Tool descriptions are generic and do not explain WHEN to use each tool vs. similar ones. E.g., 'query_codebase' (RAG with evaluation) vs. 'semantic_search' (semantic search), the distinction is unclear to LLMs.
No pagination support visible in list_repositories or tools returning multiple results. Large result sets will blow context windows without limit/offset parameters.