elentra-local-connector
elentra-local-connector
Приватный локальный MCP-коннектор только для чтения, который позволяет Claude Desktop искать ваши собственные данные uOttawa Elentra — используя вашу существующую аутентифицированную сессию Chrome, а не храня какие-либо учётные данные.
Спецификация: PRD-FINAL.md является источником истины.
Статус: только для чтения. write_enabled = false — константа времени сборки.
Что здесь означает «live»
Данные достаточно актуальны пока коннектор активен — это не гарантия push-уведомлений. Elentra
не предоставляет ни webhooks, ни WebSocket, ни SSE, поэтому используется опрос. Токен аутентификации действует
60 минут, поэтому устаревшие данные — это норма; каждый ответ инструмента содержит fetched_at,
is_stale и staleness_seconds, чтобы Claude говорил «по состоянию на 3 часа назад», а не
подразумевал актуальность в реальном времени.
Архитектура
Chrome MV3 extension has the session · owns the allowlist · GET only
│ no chrome.cookies · no chrome.scripting
▼ native messaging
relay thin, stateless, ~100 LOC
│ unix socket (0600)
▼
daemon (launchd) sole DB writer · parsers · ICS poller · audit
│ direct SQLite read-only (WAL)
▼
mcp-server (stdio) read-only tools → Claude DesktopЧетыре процесса — намеренно. Chrome запускает хост native-messaging как дочерний процесс, поэтому демон, который является этим хостом, умирал бы вместе с Chrome — прерывая фоновый опрос ICS — и перезапускался бы при каждом перезапуске service-worker, порождая двух писателей в базе данных WAL, которая допускает только одного писателя. Ретранслятор требует ~100 строк без состояния и устраняет обе проблемы.
Настройка
Сборка автоматизирована; сопряжение — нет. Смотрите docs/HANDOFF.md — около 10 минут
шагов в Chrome и macOS, которые нельзя автоматизировать скриптом.
pnpm install
pnpm bootstrap # build, keys, index, daemon, health — idempotent, re-runnablepnpm bootstrap выполняет всё, что можно автоматизировать, и сообщает, что осталось. Отдельные
шаги, если вы предпочитаете выполнить их вручную:
pnpm verify # typecheck + lint + test + secret scan — the gate
pnpm build # four bundles: mcp, daemon, relay, extension
pnpm build:mcpb # the Claude Desktop .mcpb — separate from pnpm build
pnpm health # live diagnostics, after handoffpnpm install && pnpm verify работает полностью офлайн: фикстуры синтетические, а
tests/no-network.setup.ts заменяет fetch функцией, которая выбрасывает исключение, поэтому любой тест, который обращается
к сети, завершается ошибкой, а не молча проходит.
Гарантии
Никогда не хранит ваш пароль; никакого кода для работы с паролем не существует.
Никогда не экспортирует куки браузера.
Никогда не автоматизирует вход, MFA или продление SSO — по истечении срока он останавливается и сообщает вам.
Никогда не предоставляет модели универсальный инструмент
request(method, url).Репозиторий содержит только код; фикстуры на 100% синтетические.
См. SECURITY.md для инвариантов и PRIVACY.md для того, что попадает в Anthropic.
Лицензия
MIT — см. LICENSE.
This server cannot be deployed
Maintenance
Related MCP Connectors
Zotero MCP server for Claude and ChatGPT: search, citations, safe writes, PDF passages and pages.
Hosted Web Crawler MCP server for Claude, ChatGPT and Cursor, with each action switched per account.
MCP Server for Web2MD — convert URLs to Markdown from Claude Desktop, Cursor, etc.
Search your AI chat history (ChatGPT, Claude, Codex) from any MCP client. Remote, private, read-only