MCP server that finds real dead code (vulture + deptry) and proposes a branch+PR for the one class safe to auto-remove -- unused imports, gated on a real full test-suite pass. A human always merges.
- ✓Open-source license (MIT)
- ✓Actively maintained (<30d)
- ✓Clear description
- ✓Topics declared
- ✓Documented (README)
claude mcp add safe-fix-mcp -- python -m safe-fix-mcp{
"mcpServers": {
"safe-fix-mcp": {
"command": "python",
"args": ["-m", "safe_fix_mcp.server"]
}
}
}MCP Servers overview
# safe-fix-mcp <!-- mcp-name: io.github.pamela-0/safe-fix-mcp --> [](https://pypi.org/project/safe-fix-mcp/) [](LICENSE) A real MCP server that finds dead code in a Python repository and proposes a **branch + PR** for the one class of finding that's actually safe to auto-remove: unused imports on a single-name import line. Everything else it finds — unused functions, classes, unused dependencies — stays report-only. A human always merges. This tool never merges anything itself. ## Why this exists Most "dead code" tools stop at reporting. The ones that go further usually delete with no safety net. This does neither: it drafts a real, minimal, reviewable PR, gated on the target repo's own full test suite actually passing after the removal — not a heuristic, a real `pytest` run. If the suite fails, nothing is committed or pushed; the repo is left exactly as it started. ## Tools ### `scan_dead_code(repo_path=".", min_confidence=60)` Read-only. Runs [vulture](https://github.com/jendrikseipp/vulture) (dead code) and [deptry](https://github.com/fpgmaas/deptry) (dependency issues) and returns a human-readable list of findings. Never modifies anything. ### `propose_removal_pr(repo_path=".")` - Refuses on a dirty working tree — never edits on top of uncommitted work. - Filters to unused imports at ≥90% vulture confidence, on single-name import lines only (`from x import y, z` is skipped — removing the whole line would silently remove `z` too). - Creates a real branch, removes the qualifying imports, runs the repo's real full test suite. - Only on a real pass: commits, pushes, and tries to open a PR via `gh pr create`. - If `gh` isn't installed/authenticated, the branch is still committed and pushed for real — only PR creation degrades, with the real error returned so you can open it manually. ## Install ```bash pip install safe-fix-mcp ``` Add to your MCP client config (e.g. Claude Code): ```bash claude mcp add safe-fix-mcp -- safe-fix-mcp ``` Or run directly for local testing: ```bash python -m safe_fix_mcp.server ``` Installing from source instead of PyPI: ```bash pip install -e . ``` ## Requirements - Python ≥ 3.10 - `git` on PATH - `gh` (GitHub CLI) on PATH and authenticated, if you want `propose_removal_pr` to actually open the PR — without it, the branch still gets pushed for real, and the tool tells you to open the PR by hand. ## Development ```bash pip install -e ".[dev]" pytest ``` ## Known limitation `vulture` flags `scan_dead_code`/`propose_removal_pr` themselves as "unused" — a known false-positive class, not a real bug: they're dispatched by the `@mcp.tool()` decorator at runtime, not called directly anywhere in the source, so static call-graph analysis can't see the real caller (the MCP framework itself). ## Verifying it for real `scripts/verify_real_client.py` launches the packaged server as a real subprocess and talks to it with the real `mcp.client.ClientSession` — the same path a real MCP client uses. Useful as a smoke test after any change: ```bash python scripts/verify_real_client.py ```
What people ask about safe-fix-mcp
What is pamela-0/safe-fix-mcp?
+
pamela-0/safe-fix-mcp is mcp servers for the Claude AI ecosystem. MCP server that finds real dead code (vulture + deptry) and proposes a branch+PR for the one class safe to auto-remove -- unused imports, gated on a real full test-suite pass. A human always merges. It has 0 GitHub stars and its last recorded update is dated 2026-08-19.
How do I install safe-fix-mcp?
+
You can install safe-fix-mcp by cloning the repository (https://github.com/pamela-0/safe-fix-mcp) or following the README instructions on GitHub. ClaudeWave also provides quick install blocks on this page.
Is pamela-0/safe-fix-mcp safe to use?
+
Our security agent has analyzed pamela-0/safe-fix-mcp and assigned a Trust Score of 95/100 (tier: Verified). See the full breakdown of passed checks and flags on this page.
Who maintains pamela-0/safe-fix-mcp?
+
pamela-0/safe-fix-mcp is maintained by pamela-0. The last recorded GitHub activity is dated 2026-08-19, with 0 open issues.
Are there alternatives to safe-fix-mcp?
+
Yes. On ClaudeWave you can browse similar mcp servers at /categories/mcp, sorted by popularity or recent activity.
Deploy safe-fix-mcp to your cloud
Ship this repo to production in minutes. Each platform spins up its own environment with editable env vars.
Maintain this repo? Add a badge to your README
Drop the badge into your GitHub README to show it's tracked on ClaudeWave. Each badge links back to this page and reflects the live Trust Score.
[](https://claudewave.com/repo/pamela-0-safe-fix-mcp)<a href="https://claudewave.com/repo/pamela-0-safe-fix-mcp"><img src="https://claudewave.com/api/badge/pamela-0-safe-fix-mcp" alt="Featured on ClaudeWave: pamela-0/safe-fix-mcp" width="320" height="64" /></a>More MCP Servers
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.
User-friendly AI Interface (Supports Ollama, OpenAI API, ...)
An open-source AI agent that brings the power of Gemini directly into your terminal.
Real-time global intelligence dashboard. AI-powered news aggregation, geopolitical monitoring, and infrastructure tracking in a unified situational awareness interface
The fastest path to AI-powered full stack observability, even for lean teams.
🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl!