MCP server for analyzing and digesting git repositories, providing repository summaries, tree structures, and content analysis
Three tools with basic descriptions and visible schemas, but significant gaps in parameter documentation and output structure. Tool names follow verb_noun pattern (gitingest_*) but descriptions lack actionable context for LLM selection. Parameters include type hints but descriptions are minimal or missing for some fields. No output schema documented. Error handling absent, tools return raw strings with no guidance on failure modes.
Get a digest of a git repository or local path.
Show a summary of the repository content (repository name, number of files analyzed and estimated token number)
Show only the tree structure of a git repository.
Output schema not documented. All three tools return plain strings with no structure. LLMs cannot parse results or extract fields for downstream tool calls.
Parameter descriptions contain example values (e.g., '.java,.ts,.js,.xml'). LLMs tend to reuse examples literally rather than adapt to context. Use enum constraints or format declarations instead.
No error handling or recovery guidance. Tools use bare assertions and return raw strings. If ingest_async fails, LLM receives no actionable error message or retry guidance.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 54 | 2026-07-28+ | v2 |
Parameter 'source' has a default value pointing to a specific GitHub repo. This is a concrete example that LLMs may reuse literally instead of substituting the user's actual repo. Remove the default or make it a placeholder.
Tool descriptions lack context on when to use each tool. 'Get a digest' vs 'Show tree structure' vs 'Show summary' are vague. LLMs cannot distinguish when to call which tool without explicit guidance.