Local Worker MCP
Локальный Worker MCP
MCP локальный, агностический к клиенту. Frontier планирует, делегирует и проверяет. Локальный выполняет тяжелую, механическую и проверяемую работу.
Цель — снизить потребление токенов платных ИИ без отправки сырого содержимого в их контекст.
Codex / Claude / Gemini / Grok
│
▼
Local Worker MCP
│
┌──────┴───────────────┐
▼ ▼
Gemma 4 12B QAT arquivos / PDF
via Ollama extração + evidências
│
▼
resultado compacto e verificável
│
▼
Frontier revisaЭто не заменяет основную ИИ и не является маршрутизатором моделей. Это реальное делегирование работы.
LOCAL DISPONÍVEL? NÃO
│ │
▼ ▼
DELEGA NÃO INSISTE
│ │
▼ ▼
COMPRIME FRONTIER ASSUME
│
▼
FRONTIER REVISAGemma — это оптимизация. Она никогда не должна стать единой точкой отказа.
Принцип
Делегировать, когда задача механическая, повторяющаяся, проверяемая или интенсивная по контексту: PDF, логи, CSV, код, извлечение, классификация, резюмирование.
Оставлять на frontier: архитектурные решения, безопасность, критические изменения, субъективные суждения, неоднозначные требования.
Если локальный worker офлайн, frontier продолжает работу. MCP быстро возвращает unavailable и рекомендует fallback. Клиент может зарегистрировать:
Worker local indisponível; executei diretamente.Не требует вмешательства пользователя.
Related MCP server: ollama-handoff
Требования
Python 3.10+
Ollama на том же ПК или другом в локальной сети
Локальная модель (рекомендуется: Gemma 4 12B QAT)
Установка
git clone https://github.com/CaioAllgayer/Local-Worker-MCP.git
cd Local-Worker-MCP
python -m pip install -e ".[dev]"
copy .env.example .envOllama + Gemma
Установите и запустите Ollama.
Загрузите модель. Имя не жестко закодировано — используйте реальное имя из вашего
ollama list:
ollama list
ollama pull <nome-real-do-gemma>Если
LOCAL_LLM_MODELостанется пустым, worker попытается обнаружить модель, имя которой содержитgemma. В противном случае используется первая модель из списка.Проверьте endpoint:
curl http://127.0.0.1:11434/api/tags
local-worker statusЗапустите MCP:
local-worker-mcpТот же ПК
LOCAL_LLM_PROVIDER=ollama
LOCAL_LLM_BASE_URL=http://127.0.0.1:11434
LOCAL_LLM_MODEL=local vs lan определяется по hostname. 127.0.0.1, localhost и ::1 считаются локальными.
Ноутбук, использующий настольный ПК
Worker не предполагает localhost. Бэкенд может находиться на другом ПК в локальной сети.
На ноутбуке:
LOCAL_LLM_PROVIDER=ollama
LOCAL_LLM_BASE_URL=http://192.168.x.x:11434Замените 192.168.x.x на актуальный IP настольного ПК (ipconfig в Windows, ip a в Linux). В проекте нет фиксированного IP.
Поведение то же самое: fail-fast, circuit breaker, кэш, сжатие.
На настольном ПК Ollama должен принимать соединения из локальной сети (переменная OLLAMA_HOST=0.0.0.0 и брандмауэр, разрешающий порт 11434).
Совместимость с OpenAI
LM Studio, llama.cpp server, vLLM и аналоги:
LOCAL_LLM_PROVIDER=openai_compatible
LOCAL_LLM_BASE_URL=http://127.0.0.1:1234/v1
LOCAL_LLM_MODEL=...
LOCAL_LLM_API_KEY=Fail-fast и circuit breaker
Значения по умолчанию:
LOCAL_LLM_CONNECT_TIMEOUT_SECONDS=2
LOCAL_LLM_REQUEST_TIMEOUT_SECONDS=45
LOCAL_LLM_MAX_RETRIES=0
LOCAL_LLM_CIRCUIT_BREAKER_FAILURES=2
LOCAL_LLM_CIRCUIT_BREAKER_COOLDOWN_SECONDS=60Отказ в соединении не приводит к повторным попыткам. После N сбоев цепь размыкается, и следующие вызовы немедленно возвращают unavailable. После периода охлаждения разрешается одна попытка.
{
"status": "unavailable",
"fallback_recommended": true,
"reason": "Local LLM endpoint unreachable"
}Инструменты MCP
Инструмент | Функция |
| provider, endpoint, local/LAN, задержка, модель, circuit breaker, кэш |
| общая задача → компактный JSON |
| независимые задачи параллельно ( |
| TXT, Markdown, CSV, JSON, код, логи |
| извлечение по страницам, разбиение на части, иерархический синтез, доказательства |
| размер, записи, попадания, промахи, частота попаданий, истекшие |
| сборка мусора сейчас (TTL → неиспользуемые → LRU) |
| удаление одноразовых записей |
Сырое содержимое файла не должно попадать в контекст платной ИИ. Worker читает, сжимает и возвращает проверяемые доказательства (страница, строка, фрагмент).
Безопасность
По умолчанию: SECURITY_MODE=READ_ONLY, ENABLE_SHELL=false.
SECURITY_MODE=READ_ONLY
ALLOWED_PATHS=C:\Projects,D:\Research
ENABLE_SHELL=falseREAD_ONLY— только чтение в разрешенных путях; запись и shell заблокированыWORKSPACE_WRITE— чтение/запись в разрешенных путях; shell только еслиENABLE_SHELL=trueFULL_LOCAL— более разрешительный; все еще блокирует разрушительные команды
Path traversal блокируется. rm, del, format и т.д. отклоняются.
Кэш и логи
Постоянный кэш в ~/.local-worker-mcp/cache, самоочищающийся:
CACHE_TTL_DAYS=30
CACHE_MAX_SIZE_GB=10
CACHE_CLEANUP_THRESHOLD_PERCENT=90
CACHE_TARGET_USAGE_PERCENT=80
CACHE_CLEANUP_INTERVAL_HOURS=6Записи по умолчанию одноразовые. persistent=true сохраняет важные артефакты.
Логи ротируются и истекают:
LOG_RETENTION_DAYS=14
LOG_MAX_SIZE_MB=250Лог не хранит полное содержимое файлов.
Бенчмарк
local-worker benchmark arquivo.pdfВывод:
Arquivo: arquivo.pdf
Worker: gemma4:12b-qat
Backend: ollama
Endpoint: LAN/local
Tamanho: ...
Tokens originais estimados: ...
Tokens processados localmente: ...
Resultado para frontier: ...
Compressão: ...
Tempo: ...
Cache: HIT/MISSCodex
~/.codex/config.toml или JSON клиента:
{
"mcpServers": {
"local-worker": {
"command": "local-worker-mcp",
"env": {
"LOCAL_LLM_PROVIDER": "ollama",
"LOCAL_LLM_BASE_URL": "http://127.0.0.1:11434",
"ALLOWED_PATHS": "C:\\Projects"
}
}
}
}См. examples/codex.json.
Claude Code
claude mcp add local-worker --scope user -- local-worker-mcpИли вставьте examples/claude_code.json в ~/.claude.json.
В CLAUDE.md / AGENTS.md проекта укажите политику:
Механические задачи и чтение больших файлов отправляются в
delegate_pdf/delegate_file/delegate_task. Еслиlocal_statusили инструмент возвращаетunavailable, выполняйте напрямую и продолжайте.
Другие клиенты MCP
Любой клиент stdio работает. Общий пример в examples/generic.json:
{
"mcpServers": {
"local-worker": {
"command": "local-worker-mcp",
"env": {
"LOCAL_LLM_PROVIDER": "ollama",
"LOCAL_LLM_BASE_URL": "http://127.0.0.1:11434"
}
}
}
}Примеры
examples/pdf.md— статья / длинный PDFexamples/code.md— начальное чтение репозиторияexamples/logs.md— извлечение ошибок
Тесты
python -m pip install -e ".[dev]"
pytest
ruff check src testsНабор не зависит от реальных Ollama/Gemma. Всё замокано.
Что не входит в этот MVP
Автоматизация GUI Windows, Playwright, сложный мультиагент, векторный RAG, дашборд, Kubernetes, ML-маршрутизатор.
Архитектура оставляет место для delegate_repo, delegate_git, delegate_browser и т.д. на следующем этапе.
Лицензия
MIT.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityDmaintenanceOptimizes token costs by intelligently delegating low-complexity tasks to local LLMs via LiteLLM, enabling cost-effective development workflows.31MIT
- AlicenseAqualityBmaintenanceOffloads cheap work from cloud LLM agents to a local Ollama model, reducing costs and keeping frontier models focused on complex tasks.83MIT
- AlicenseBqualityCmaintenanceEnables coding agents like Claude Code and Codex to offload boilerplate generation, summarization, and other bounded text tasks to local or cheap cloud LLMs, keeping the frontier agent in charge of judgment and code edits.92MIT
- Alicense-qualityCmaintenanceEnables AI to delegate boilerplate, drafts, tests, and refactors to free LLM providers, saving tokens and running tasks in parallel.204MIT
Related MCP Connectors
Deterministic AI agent microtools, no accounts/API keys. fetch_extract: 98% token cut. 38 tools.
Shared distillation cache for AI agents — every fetch ~73-89% fewer tokens via a shared cache.
JSON/YAML, regex, diff, JWT, SQL dialects — the keyless millisecond ops an agent needs mid-task.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/CaioAllgayer/Local-Worker-MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server