MCP server to keep repository updated and resolve issues. Provides endpoints for repository updates, security audits, and periodic maintenance tasks.
Critical gaps across all dimensions. Three tools with empty input schemas ({}), no parameter descriptions, and minimal tool descriptions (10-30 chars). No output schemas documented. No error handling guidance. Tools lack verb-noun naming clarity. update-repo and run-audit expose security-sensitive operations without documented permission gates or dry-run patterns. No evidence of input validation, rate limiting, or audit logging in visible code.
Health check endpoint (public).
Run npm and Composer security audits (requires API key).
Trigger a git pull from the main branch (requires API key).
All three tools have empty input schemas ({}). No parameters are defined, typed, or described. Violates pattern:constrained-input and pattern:tool-description. LLMs cannot understand what inputs each tool accepts.
Tool descriptions are 10 - 30 characters, below the 34-char p10 baseline. 'Trigger a git pull from the main branch (requires API key)' and 'Run npm and Composer security audits (requires API key)' lack WHEN to use, WHAT is returned, and side-effect clarity required by pattern:tool-description.
Destructive operations (update-repo, run-audit) lack confirmation/dry-run patterns and no documented permission gates. No evidence of audit logging or access control in server.js. Violates pattern:confirmation-request and pattern:permission-gate.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 30 | 2026-07-28+ | v2 |
No output schemas documented for any tool. LLMs cannot plan downstream calls or extract required fields. Violates pattern:tool and pattern:response-shaper.
API key passed via environment variable (MCP_API_KEY) but no evidence of per-request validation, rate limiting, or error recovery guidance. Error responses likely expose raw stack traces rather than actionable guidance per pattern:recovery-guide.