Production-ready multi-project MCP server for coding agents
Strong foundation with 33 well-named tools, comprehensive schemas, and consistent descriptions. All tools have input schemas with typed parameters and descriptions. Tool names follow verb_noun convention (run_build, git_status, list_directory). Descriptions average ~80 chars, meeting baseline. However, parameter descriptions are often minimal (10-30 chars), lacking context on constraints, formats, and when to use each tool. Output schemas are not documented in visible code. Error handling guidance is absent, tools return raw errors without recovery hints. No tool annotations (readOnlyHint, destructiveHint) despite clear risk classifications. Missing idempotency guarantees for git operations and file writes.
Apply unified diff or structured edits
Create file safely
Delete file or directory
Get project metadata by project_id
Get normalized project tree
Stage files with git add
List git branches for a project
Parameter descriptions are minimal (10-30 chars) and lack actionable constraints. E.g., 'Project identifier' does not explain format, length, or how to obtain one. LLMs cannot infer valid values.
Output schemas are not documented in visible code. Tools return structured objects (exit_code, stdout, stderr, etc.) but LLMs cannot see the schema to plan downstream calls or extract fields reliably.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite clear risk classifications (READ_ONLY, WRITE, DESTRUCTIVE, REVERSIBLE). LLMs cannot reason about safety or retry semantics.
Inferred effective spec: 2025-06-18+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 64 | 2025-06-18+ | v2 |
Checkout an existing git branch
Create and checkout a new git branch
Create a git commit
Create an annotated git tag
Get git diff for a project
Show git commit history
Pull latest changes from git remote
Push commits to a git remote
Restore files from git index or HEAD
Show details of a git object
Get git status for a project
Search content with regex-like pattern
List files and directories
List discovered projects under configured root
Move file or directory
Read file content
Read multiple files
Refresh one project or all projects
Replace content in file
Run project build command
Run an allowlisted command safely
Run project lint command
Run project test command
Search filenames and paths
Summarize project stack and scripts
Write file content
Error handling lacks recovery guidance. Tools throw ValidationError and SecurityError but responses do not suggest next steps (e.g., 'Try search_users() first' or 'Use allowlisted commands only'). Agents cannot self-correct.
Git operations (git_commit, git_push, git_add) lack idempotency guarantees. Agents retrying on transient failures risk duplicate commits or pushes. No dry-run or confirmation pattern for irreversible operations.