Autonomous Git Workflow & GitHub PR Creation MCP Server for AI coding agents (Claude, Cursor, Cline). Part of Tokenectomy.
Server provides 4 tools with complete input schemas and descriptions. Naming follows verb_noun convention (create_fix_branch, commit_fix, open_pull_request, get_pr_status). Descriptions are present and contextual (avg ~120 chars), meeting baseline minimums. However, output schemas are entirely undocumented, LLMs cannot predict response structure. Parameter descriptions lack format constraints (e.g., branch_name sanitization rules, file path validation rules not stated). Error handling is minimal; no recovery guidance or actionable error messages visible in code. Security concerns: GITHUB_TOKEN injected via env var (correct), but no rate limiting, timeout handling, or input validation details shown. No tool annotations (readOnlyHint, destructiveHint, idempotentHint). Composition is sound, each tool has one responsibility, but no pagination or batch variants for multi-file operations.
Stages specified files and commits them with a message. Optionally appends a Tokenectomy Surgery Report to the commit body. All file paths are validated to be within the workspace.
Creates a new git branch for the fix and switches to it. If the branch already exists, switches to it. Branch names are sanitized for safety.
Checks the status of a GitHub Pull Request including state (open/closed/merged), mergeability, and CI check status. Requires GITHUB_TOKEN env var.
Pushes the current branch to origin and opens a GitHub Pull Request. Requires GITHUB_TOKEN env var. PR body is scrubbed of secrets before sending. Auto-detects owner/repo from git remote.
Output schemas completely undocumented. LLMs cannot predict response structure (fields, types, nested objects) for any tool. Forces agents to guess at downstream field names and types.
Parameter descriptions lack format constraints and validation rules. 'branch_name' does not specify sanitization rules, character limits, or forbidden patterns. 'files' array lacks min/max length or path validation rules. LLMs cannot self-validate inputs.
No error handling guidance visible. Code shows parse errors and invalid requests, but no recovery hints for domain-specific failures (e.g., 'branch already exists', 'GitHub API rate limit', 'invalid PR number'). Agents cannot self-correct.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 59 | 2026-07-28+ | v2 |
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). Agents cannot distinguish safe reads from destructive writes. 'commit_fix' and 'open_pull_request' are irreversible but unmarked; 'get_pr_status' is read-only but unmarked.
No pagination or batch support for multi-file operations. 'commit_fix' accepts a files array but no limit or pagination guidance. Large commits could exceed response size limits.