Перейти к содержимому

Локальный агент mmw-agent

mmw-agent — небольшая программа на Python, которую ваш MCP-клиент (Claude Code, Claude Desktop, Cursor, Codex) запускает у вас на компьютере. Она соединяет клиента с сервером памяти MMW и, только если вы явно разрешите, загружает историю ваших сессий Claude Code и Codex.

Из этой страницы вы узнаете:

  1. что именно делает агент и чем он отличается от прямого подключения по HTTP;
  2. как его запустить и проверить;
  3. какие у него команды и переменные окружения.
MCP-клиент mmw-agent (ваш компьютер) Сервер MMW
────────── ───────────────────────── ──────────
tools/list ── stdio ──▶ пересылает запрос ── HTTPS ──▶ remember, search, forget,
tools/call + добавляет mmw_sync_status validate_memory, gateway_call
(локальный, только чтение) (+ подключённые интеграции)
фоновая синхронизация ── HTTPS ──▶ история сессий
(только после consent) (с вашего согласия)
  • Прокси ко всем инструментам сервера. Агент работает как локальный MCP-сервер по stdio и пересылает каждый запрос клиента на сервер MMW. Клиент видит ровно тот список инструментов, который отдаёт сервер, — без урезанного набора, зашитого в агент.
  • Локальный инструмент mmw_sync_status. Только чтение: показывает, дано ли согласие на загрузку истории и чем закончился последний цикл синхронизации. Выдать согласие этот инструмент не может.
  • Устойчивость к недоступности сервера. Если при запуске сервер не отвечает, агент сам отвечает клиенту на рукопожатие (имя сервера «MMW (офлайн, локальный агент)»), и клиент не падает. Вызовы инструментов в это время возвращают понятную ошибку, а при следующем вызове агент снова пробует подключиться.
  • История сессий — по согласию. Пока вы не выполнили mmw-agent consent в терминале, с компьютера не уходит ни одной строки ваших сессий. Подробно — в разделе История сессий.

Отдельно ставить агент не нужно: uvx скачивает его при первом запуске прямо из конфигурации клиента. Требования: Python 3.11+ и uv. Агент распространяется как колесо (wheel) с сайта MMW, в PyPI он не опубликован.

  1. Получите API-ключ в кабинете app.mmwhub.ru. Ключ начинается с mmw_.

  2. Добавьте агент в конфигурацию клиента. Пример для Claude Code:

    Окно терминала
    claude mcp add mmw \
    -e MMW_API_KEY=mmw_ваш_ключ \
    -- uvx --from https://app.mmwhub.ru/downloads/mmw-agent/mmw_agent-0.1.4-py3-none-any.whl mmw-agent

    Конфигурации для остальных клиентов — на странице Настройка агента.

  3. Перезапустите клиента. В списке инструментов появятся remember, search, forget, validate_memory, gateway_call и mmw_sync_status.

  4. Проверьте подключение из терминала:

    Окно терминала
    MMW_API_KEY=mmw_ваш_ключ \
    uvx --from https://app.mmwhub.ru/downloads/mmw-agent/mmw_agent-0.1.4-py3-none-any.whl mmw-agent status

Команда status печатает JSON. Пока согласие не дано, он выглядит примерно так:

{
"consent": null,
"device_id": null,
"discovered": { "claude-code": 42, "codex": 7 },
"server": { "registered": false, "sources": 0 }
}
  • consent — квитанция согласия (список клиентов и время) или null;
  • device_id — идентификатор этого компьютера, создаётся при первом обращении агента к серверу или при согласии;
  • discovered — сколько файлов сессий агент нашёл на диске (только список файлов, содержимое не читается);
  • server — зарегистрировано ли устройство на сервере и сколько источников (файлов сессий) там уже есть. Если сервер недоступен, здесь будет error с причиной.
КомандаЧто делает
mmw-agentРежим MCP-сервера по stdio. Так агент запускает ваш клиент; в этом же режиме работает фоновая синхронизация.
mmw-agent consentРазрешить загрузку истории сессий. Работает только в интерактивном терминале: агент покажет, сколько сессий нашёл, и попросит ввести «да».
mmw-agent revokeОтозвать согласие. Загрузка останавливается сразу; сервер получает уведомление, если доступен.
mmw-agent statusЛокальное согласие, найденные сессии и состояние на сервере (JSON).
mmw-agent syncВыполнить один цикл синхронизации сейчас и напечатать итог (JSON). Без согласия ничего не загружает.
ПеременнаяПо умолчаниюОписание
MMW_API_KEY—API-ключ из кабинета. Обязателен для режима сервера, status, sync. Без него агент завершится с подсказкой.
MMW_CREDENTIAL—Запасное имя для ключа: читается, только если MMW_API_KEY не задан.
MMW_ENDPOINThttps://mcp.mmwhub.ruАдрес сервера. Можно указывать с /mcp на конце или без.
MMW_LANGпо адресу сервераЯзык подсказок агента: ru или en. Для mmwhub.ru по умолчанию русский, для остальных адресов — английский.
MMW_AGENT_HOME~/.mmwКаталог состояния агента: файл agent.json с идентификатором устройства и квитанцией согласия (права 0600).
MMW_SESSIONS_HOMEдомашний каталогГде искать сессии: агент смотрит в .claude/projects и .codex/sessions внутри этого каталога.
MMW_SYNC_INTERVAL15Пауза между циклами синхронизации, в секундах. При ошибках сети пауза растёт до 5 минут.

Подробные примеры для каждого клиента — на странице Настройка агента.