A Go-based HTTP server providing tools for Git repository access, OpenAPI schema retrieval, and Stack Overflow search via MCP-compatible REST endpoints
This HTTP-based MCP server exposes 6 Git/OpenAPI/Stack Overflow tools with basic structure. However, critical gaps significantly limit usability: (1) All tool descriptions are superficial (10 - 28 chars), far below the 194-char baseline and insufficient for LLM decision-making. (2) No input parameter descriptions visible, LLMs cannot infer what 'repoName' or 'path' mean without explicit guidance. (3) No output schemas documented, agents cannot plan downstream calls or know what fields to extract. (4) Error handling is minimal (generic 404/500 with no recovery guidance). (5) No tool annotations (readOnlyHint, idempotentHint) despite all tools being read-only. The server implements straightforward GET-only functionality with no state mutation, composition, or complex patterns, which limits the harm of schema gaps but also limits its value to agents requiring structured reasoning.
Retrieves the content of a file from a Git repository
Retrieves a specific OpenAPI schema by name
Lists files and directories in a Git repository at a specified path
Lists all configured Git repositories
Lists the names of available OpenAPI schemas
Searches Stack Overflow for questions matching a query
Tool descriptions are critically short (10 - 28 characters). Baseline is 194 chars (p10=34). LLMs cannot distinguish 'Lists all configured Git repositories' from a trivial summary. No context on WHEN to call each tool or what PROBLEM it solves.
No input parameter descriptions visible in code. Parameters like 'repoName', 'path', 'schemaName' lack explanations. LLMs cannot infer whether 'path' is a file path, a git commit path, or a branch name. Per pattern:tool-description, every parameter must have a non-empty description.
No documented output schemas. Code returns JSON (e.g. FileInfo structs, schema bytes) but descriptions do not specify the structure. Agents cannot plan downstream calls or know what fields are available for chaining.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 49 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 33 | - | v1 |
Error responses are generic (HTTP 404, 500) with no recovery guidance. handlers return respondWithError(w, http.StatusNotFound, err.Error()) but do not suggest alternative actions. Per pattern:recovery-guide, errors should tell the LLM what to do next.
No tool annotations. All 6 tools are read-only but lack readOnlyHint. Per current spec (2026-07-28), tools should declare idempotentHint and readOnlyHint to guide agent retry logic and safety policies.
Parameter constraints not described. 'repoName' and 'path' accept arbitrary strings with no format, regex, or length constraints. LLMs cannot self-validate inputs before calling the tool.
No pagination support documented. Stack Overflow search (search_stackoverflow) and list_repos likely return unbounded results. Per pattern:paginated-result, tools returning lists should accept limit/offset and document result caps.