Atlas / MCP servers / zahirinatzuke / local-delegate

local-delegateSAFE

mcp/zahirinatzuke/local-delegate

MCP that delegates mechanical text tasks to a local OpenAI-compatible LLM endpoint to conserve Claude subscription quota.

Verdict
SAFE
Grade
B
Trust score
89 /100
Exposed tools
—
Transport
stdio · streamable-http
License
MIT
Stars
5
01

Overview

From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.

Delega tareas mecánicas texto→texto a un LLM local para conservar la cuota de tu suscripción de Claude. Un servidor MCP (stdio o daemon HTTP compartido) que es cliente genérico de cualquier endpoint OpenAI-compatible — llama-swap, Ollama, LM Studio, vLLM.

[](https://pypi.org/project/local-delegate-mcp/) [](https://github.com/ZahiriNatZuke/local-delegate/actions/workflows/ci.yml) [](./LICENSE)

[zahirinatzuke.github.io/local-delegate](https://zahirinatzuke.github.io/local-delegate/) — qué hace y por qué, en una página (es/en). Su fuente está en site/.

Demo

Dashboard embebido (datos de ejemplo): estado del backend local (modelos montados, delegación en curso con su progreso por trozos, tools MCP), RAM/VRAM del sistema con consumo por proceso, tokens de contexto conservados, ahorro por herramienta y modelo, dónde corrió el cómputo —esta máquina o un backend remoto— y actividad reciente paginada en tu hora local. Se sirve en `http://127.0.0.1:9393`.

¿Por qué?

Cuando Claude tiene que resumir un log enorme, clasificar, extraer campos o generar boilerplate, gasta cuota de tu suscripción en trabajo mecánico. local-delegate expone esas tareas como tools MCP que corren en un LLM local: pasas path en vez de text y el archivo se lee del lado del servidor, así el contenido grande nunca entra al contexto de Claude. Solo vuelve el resultado

Read from source at commit 1f9aaf928b75OBSERVED · 2026-10-11
02

Connect

Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control. Replace the environment placeholders with a token scoped to the least it needs.

claude-code (pypi)
claude mcp add local-delegate-mcp --env LOCAL_DELEGATE_API_KEY=${LOCAL_DELEGATE_API_KEY} -- None local-delegate-mcp==0.34.0
03

Trust audit

SAFEgrade B · trust 89/100 Nothing in the source contradicts what it says it does. Grade A is reserved for packages that have also passed the behavioural sandbox.

LayerWhat it checksResult
L0Provenance & inventoryPASS
L1Static analysis of the codePASS
L2Instruction surface (what it tells the agent)PASS
L3Class-specific surfacePASS
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
declared (5 observation(s))
Network
declared (7 observation(s))
Shell
none-observed
Dependencies
pinned
Secrets in source
none-found

Findings (15)

LOWInventory / provenance · inv.hidden_file · CWE-1104
.pre-commit-config.yaml
.pre-commit-config.yaml
Why it matters. hidden member outside the usual dotfiles
Fix. review its purpose
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
tests/test_atribucion.py:157
entrada = json.dumps(_entrada_hook("toolu_../../fuera", "C:/x/s.jsonl")).encode("utf-8")
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
tests/test_corpus.py:114
datos["cases"][0]["source_file"] = "../../CHANGELOG.md"
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
tests/test_wiki.py:188
assert sync_wiki.convertir_destino("../../../fuera-del-repo.md") is None
LOWNetwork egress · net.raw_ip · CWE-200, CWE-319
.sdd/changes/auditoria-backlog/verification.md:29
| 17 | El observador de clientes solo se probó con stdio | **MEDIDO Y CERRADO** | Cliente MCP propio contra `http://127.0.0.1:9393/mcp`: `local-delegate 0.18.1`, protocolo `2025-11-25`, 11 tools; y **
LOWNetwork egress · net.raw_ip · CWE-200, CWE-319
.sdd/changes/auth-puerto-daemon/research.md:15
`{"type": "http", "url": "http://127.0.0.1:9393/mcp"}` — **sin cabeceras**.
LOWNetwork egress · net.raw_ip · CWE-200, CWE-319
.sdd/changes/check-clientes-observados/research.md:22
> Invoke-RestMethod http://127.0.0.1:9393/api/status
LOWNetwork egress · net.raw_ip · CWE-200, CWE-319
.sdd/changes/checks-andamiaje/research.md:33
| 7 | Daemon | `http://127.0.0.1:9393/api/daemon` | **nadie** |
LOWNetwork egress · net.raw_ip · CWE-200, CWE-319
.sdd/changes/codex-config-local/review.md:12
| REQ-002 los cinco MCP del repo + `local-delegate` | sí | sí | `MCP_DOCKER`, `codegraph`, `git`, `socket-mcp`, `jetbrains`, y `local-delegate` en `http://127.0.0.1:9393/mcp` |
LOWObfuscation / stealth · obf.decode_call · CWE-506, CWE-94
scripts/vigilante_precios.py:614
if base64.b64decode(actual.get("content", "")).decode("utf-8") == contenido:
LOWObfuscation / stealth · obf.decode_call · CWE-506, CWE-94
src/local_delegate/web/auth.py:75
descifrado = base64.b64decode(resto, validate=True).decode("utf-8")
LOWObfuscation / stealth · obf.decode_call · CWE-506, CWE-94
tests/test_benchmark.py:300
assert base64.b64decode(url.split(",", 1)[1]) == imagen.source
LOWObfuscation / stealth · obf.decode_call · CWE-506, CWE-94
tests/test_vigilante.py:461
escrita = json.loads(base64.b64decode(cuerpo["content"]))
LOWObfuscation / stealth · obf.decode_call · CWE-506, CWE-94
tests/test_vigilante.py:539
return json.loads(base64.b64decode(cuerpo["content"]))
LOWInventory / provenance · mcp.no_tools_extracted · CWE-1104
server.json
Why it matters. the tool list is enumerated at runtime by tools/list, not declared in source
Fix. the page says so rather than showing an empty table

Gates applied: no_behavioural_pass.

Audited 2026-10-11 · audit v0.4.1 · source sha 1f9aaf928b75full audit observations/trust-audit/mcp-server/zahirinatzuke__local-delegate.json · Report an issue / request a re-scan
04

Audit history

Every audit this server has had. A grade with a past is a grade somebody is still checking.

DateSourceVerdictGradeScoreChange
2026-10-111f9aaf928b75SAFEB89first audit
05

Questions

What is the local-delegate MCP server?

MCP that delegates mechanical text tasks to a local OpenAI-compatible LLM endpoint to conserve Claude subscription quota.

Is local-delegate safe to connect to an agent?

The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean server reads B.

What credentials does local-delegate need?

It reads GITHUB_TOKEN, LOCAL_DELEGATE_API_KEY and LOCAL_DELEGATE_WEB_TOKEN from the environment. Give it a token scoped to the least it needs — an agent that can be talked into calling a tool can be talked into calling it with your credentials.

How does local-delegate run?

It speaks stdio and streamable-http, so it runs as a local process your client starts. It is published on PyPI as local-delegate-mcp.

How current is this page?

The grade is for one exact copy of the source (1f9aaf928b75), read on 2026-10-11. The repository is watched and re-audited when it changes.

Advertisement