MCP server that reads and explains any codebase using AI
Project Brain MCP has 4 tools with clear verb-noun naming (scan_repo_structure, identify_key_files, explain_auth_flow, ask_codebase). All tools have descriptions (194 - 250 chars, within baseline 34 - 392 range) and input schemas using Zod. However, critical gaps exist: (1) Parameter descriptions are minimal or missing context. The 'repo_path' param appears in all tools but lacks guidance on format validation or error handling for invalid paths. (2) No output schemas are documented, tools return text responses but LLMs cannot predict structure. (3) Error handling is generic ('Error: {msg}') with no recovery guidance. (4) No parameter constraints (enums, ranges, patterns) despite accepting free-form strings. (5) Tool descriptions lack WHEN/WHY context, they state WHAT but not when to prefer one tool over another. The codebase shows competent implementation (GitHub API integration, relevance scoring, AI-grounded answers) but tool definitions lack the rigor needed for reliable agent composition.
Ask any question about a codebase and get an answer grounded in the actual code. Accepts a local folder path OR a GitHub URL (e.g. https://github.com/user/repo) — no cloning needed.
Finds all auth-related files and explains login flow, tokens, sessions, and permissions. Accepts a local folder path OR a GitHub URL (e.g. https://github.com/user/repo) — no cloning needed.
Identifies the most important files a developer must read first. Accepts a local folder path OR a GitHub URL (e.g. https://github.com/user/repo) — no cloning needed.
Scans a project and explains the tech stack and architecture. Accepts a local folder path OR a GitHub URL (e.g. https://github.com/user/repo) — no cloning needed.
No output schemas documented. Tools return text responses but LLMs cannot predict structure (fields, types, pagination). Agents cannot reliably extract data for downstream calls.
Parameter descriptions lack actionable constraints. 'repo_path' accepts 'local folder path OR GitHub URL' but no validation rules, error cases, or format examples. LLMs cannot predict what inputs will fail.
Error responses are generic ('Error: {msg}') with no recovery guidance. LLMs cannot determine if errors are retryable, user-fixable, or fatal. No suggestions for alternative tools or corrective actions.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 53 | 2026-07-28+ | v2 |
Tool descriptions lack WHEN/WHY context. 'Scans a project and explains tech stack' states WHAT but not when to call scan_repo_structure vs ask_codebase. LLMs waste reasoning cycles deciding between similar tools.
No pagination or result limits documented. ask_codebase defaults to max_files=12 but other tools lack limits. Large codebases could return unbounded results, exhausting context windows.