Skip to main content
ClaudeWave

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.

MCP ServersRegistry oficial0 estrellas0 forksPythonMITActualizado today
ClaudeWave Trust Score
95/100
Verified
Passed
  • Open-source license (MIT)
  • Actively maintained (<30d)
  • Clear description
  • Topics declared
  • Documented (README)
Last scanned: 8/20/2026
Install in Claude Code / Claude Desktop
Method: pip / Python · safe-fix-mcp
Claude Code CLI
claude mcp add safe-fix-mcp -- python -m safe-fix-mcp
claude_desktop_config.json (Claude Desktop)
{
  "mcpServers": {
    "safe-fix-mcp": {
      "command": "python",
      "args": ["-m", "safe_fix_mcp.server"]
    }
  }
}
1. Run the command above in your terminal (Claude Code), or paste the JSON config into claude_desktop_config.json (Claude Desktop).
2. Replace any <placeholder> values with your API keys or paths.
3. Restart Claude. The MCP server and its tools appear automatically.
💡 Install first: pip install safe-fix-mcp
Casos de uso

Resumen de MCP Servers

# safe-fix-mcp

<!-- mcp-name: io.github.pamela-0/safe-fix-mcp -->

[![PyPI](https://img.shields.io/pypi/v/safe-fix-mcp)](https://pypi.org/project/safe-fix-mcp/) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](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
```
ai-agentautomated-prclaudeclaude-codecode-qualitydead-codedeveloper-toolsmcpmcp-servermodel-context-protocolstatic-analysisvulture

Lo que la gente pregunta sobre safe-fix-mcp

¿Qué es pamela-0/safe-fix-mcp?

+

pamela-0/safe-fix-mcp es mcp servers para el ecosistema de Claude AI. 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. Tiene 0 estrellas en GitHub y su última actualización registrada es del 2026-08-19.

¿Cómo se instala safe-fix-mcp?

+

Puedes instalar safe-fix-mcp clonando el repositorio (https://github.com/pamela-0/safe-fix-mcp) o siguiendo las instrucciones del README en GitHub. ClaudeWave también te ofrece bloques de instalación rápida en esta misma página.

¿Es seguro usar pamela-0/safe-fix-mcp?

+

Nuestro agente de seguridad ha analizado pamela-0/safe-fix-mcp y le ha asignado un Trust Score de 95/100 (tier: Verified). Revisa el desglose completo de comprobaciones superadas y flags en esta página.

¿Quién mantiene pamela-0/safe-fix-mcp?

+

pamela-0/safe-fix-mcp es mantenido por pamela-0. La última actividad registrada en GitHub es del 2026-08-19, con 0 issues abiertos.

¿Hay alternativas a safe-fix-mcp?

+

Sí. En ClaudeWave puedes explorar mcp servers similares en /categories/mcp, ordenados por popularidad o actividad reciente.

Despliega safe-fix-mcp en tu cloud

Lleva este repo a producción en minutos. Cada plataforma genera su propio entorno con variables de entorno editables.

¿Mantienes este repo? Añade un badge a tu README

Pega el badge en tu README de GitHub para mostrar que está auditado por ClaudeWave. Cada badge enlaza de vuelta a esta página y muestra el Trust Score actual.

Featured on ClaudeWave: pamela-0/safe-fix-mcp
[![Featured on ClaudeWave](https://claudewave.com/api/badge/pamela-0-safe-fix-mcp)](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>

Más MCP Servers

Alternativas a safe-fix-mcp