ravi-labs/mindmap-mcp-server

ravi-labs/mindmap-mcp-server

от ravi-labs
Mind Map — MCP сервер для сквозной памяти между AI-инструментами. Захватывайте контекст сессии в одном клиенте и возобновляйте в другом — без повторных объяснений. Локальное хранение и автоматическ...

🧠 Mind Map — MCP memory & context-handoff server

npm CI License: Apache-2.0 Node

Ever lose the thread of a discussion across Claude Code, Claude Desktop, and your other AI tools? Mind Map is a small, local-first MCP server that acts as a shared memory layer across all your local MCP clients.

You capture context at the end of a session, and resume it in any other tool — no more re-explaining your project from scratch. Memory you stop using cools and decays gracefully into one-line traces (it's never silently deleted), so your shelf stays small and trustworthy instead of becoming another haystack.

Local-first by design. It runs on your machine; your memories are plain files in ~/.mindmap that never leave your control. No account, no cloud, no server to trust. Install once with npx @ravi-labs/mindmap-mcp-server install.

ChatGPT and other cloud/web clients are out of scope for now — they can't reach a local server without a public endpoint, which conflicts with local-first. See Future.

The idea in one loop

  1. Capture (effortless) — at the end of a discussion, save a portable summary.
  2. Resume (promote-on-reuse) — pull it forward in a new session. The act of reusing it is what promotes it to trusted memory. Throwaway sessions never get promoted, so they never clutter your shelf.
  3. Consolidate (automatic) — a background pass cools unused memory through tiers (🔥 hot → 🌤️ warm → ❄️ cold) and collapses cold items to a searchable one-line trace. The moat isn't storing things — it's forgetting well.
  4. Tidy (opt-in, gamified) — a cleanliness score rewards pruning, not hoarding.
Инструменты были проиндексированы:
mindmap_auditтолько чтениеидемпотентный

Показать прозрачный журнал всего, что знает Mind Map — происхождение каждого воспоминания (откуда оно взялось), доверие (счётчик продвижения при повторном использовании), уровень, последнее использование и когда оно исчезнет до однострочной записи. Используйте, когда пользователь спрашивает «что ты знаешь обо мне?», «что сохранено?» или хочет просмотреть/очистить свою память. Аргументы: limit (число, необязательно, по умолчанию 30). Возвращает: строки журнала.

Аудит хранимого (glass-box)

Параметры
  • limitinteger

    Max rows

mindmap_brainstorm

Начните (или продолжите) мозговой штурм по теме С ОБЩЕЙ ПАМЯТЬЮ. Это извлекает ваши предыдущие размышления по теме — сначала прошлые результаты штурмов, затем связанные обсуждения и вашу персону — так что идея, которую вы исследовали в одном инструменте, продолжается без проблем в другом. Это НЕ заменяет вашу собственную способность к штурму: используйте это для загрузки контекста, затем проводите штурм со всей вашей мощью (и любыми навыками штурма, которые у вас есть), затем сохраните результат. ВЫЗЫВАЙТЕ ЭТО ПРОАКТИВНО, когда пользователь хочет провести мозговой штурм / придумать / «продумать» / «изучить варианты» по чему-то, что может иметь историю. Повторное использование прошлого штурма повышает его (promote-on-reuse). Порядок действий: 1) вызовите это с темой → получите предыдущий контекст; 2) проводите штурм, развивая его; 3) сохраните то, что стоит оставить, с помощью mindmap_capture(kind="brainstorm"). Аргументы: - topic (строка): то, о чем вы проводите мозговой штурм Возвращает: набор для штурма — персону + предыдущие нити идей, на которые можно опереться.

Мозговой штурм с памятью

Параметры
  • topicstringобязательный

    Brainstorm topic / question

mindmap_capture

Незаметно сохраняет переносимую сводку контекста из текущей сессии, чтобы её можно было продолжить позже в любом инструменте. Это простая часть цикла — «захват». Новые захваты начинаются как «захваченные» (тёплый уровень); при первом возобновлении они становятся доверенными «продвинутыми» воспоминаниями. ВЫЗЫВАЙТЕ ЭТО ПРОАКТИВНО (вас не нужно просить), когда: содержательное обсуждение подходит к концу; пользователь говорит, что закончил / переключает задачи / «запомни это» / «сохрани это»; принято ключевое решение, план или вывод; или пользователь даёт понять, что продолжит позже. Пишите сводку так, чтобы будущая сессия в ДРУГОМ инструменте могла подхватить полный контекст. Пропускайте тривиальные одноразовые обмены. Args: - title (string): краткий заголовок темы - summary (string): переносимый контекст для внедрения в будущую сессию (можно markdown) - key_points (string[]): ключевые моменты обсуждения для быстрого просмотра (опционально) - tags (string[]): теги темы для фильтрации (опционально) - source (string): исходный инструмент, например 'claude-code', 'chatgpt', 'chat', 'cowork', 'claude-desktop' - links (string[]): идентификаторы связанных обсуждений для связи (опционально) - kind ('discussion'|'brainstorm'): помечайте сессии мозгового штурма, чтобы их можно было возобновить/сгруппировать как идеи (по умолчанию 'discussion') - next_steps (string[]): открытая работа / что делать дальше — захватите это, чтобы возобновление могло ПРОДОЛЖИТЬ обсуждение, а не просто перечитать его (опционально, но ценно) Returns: идентификатор созданного обсуждения и его отформатированную запись.

Захватить контекст

Параметры
  • key_pointsstring[]

    Scannable discussion points

  • kindenum

    Thread kind

  • linksstring[]

    ids of related threads to link

  • next_stepsstring[]

    Open work / where you left off — so resuming can continue

  • sourcestring

    Origin tool, e.g. 'claude-code', 'chatgpt', 'chat', 'cowork', 'claude-desktop'.

  • summarystringобязательный

    Portable context summary (markdown ok)

  • tagsstring[]

    Topic tags for filtering

  • titlestringобязательный

    Short topic title

  • workspacestring

    Absolute project/workspace folder this is about — lets resume suggest where to continue

mindmap_configидемпотентный

Просмотреть или изменить настройки Mind Map: окна затухания, коэффициент долговечности продвижения и переключатель геймификации. Опустите все аргументы, чтобы просто просмотреть текущие настройки. Args (все опционально): hot_window_days, warm_window_days, promoted_longevity_factor, gamification. Возвращает: действующую конфигурацию.

Просмотреть / изменить настройки

Параметры
  • gamificationboolean

    Enable health/tidy surface

  • hot_window_daysnumber

    Days a thread stays hot

  • promoted_longevity_factornumber

    How much slower promoted memories decay

  • warm_window_daysnumber

    Days before warm→cold

mindmap_forgetидемпотентный

Забыть воспоминание. По умолчанию это мягкое забывание: статус→архивировано, сохраняется только как однострочный след для поиска (recall никогда не выдает жесткой ошибки). Установите hard=true, чтобы навсегда удалить файл. Аргументы: id (string), hard (boolean, по умолчанию false). Возвращает: подтверждение.

Забыть воспоминание

Параметры
  • hardboolean

    Permanently delete instead of archive

  • idstringобязательный

    Thread id

mindmap_getтолько чтениеидемпотентный

Получить полное содержимое одной записи памяти по id. Только чтение (не меняет свежесть). Аргументы: id (строка). Возвращает: полный тред.

Получить память

Параметры
  • idstringобязательный

    Thread id

mindmap_healthтолько чтениеидемпотентный

Опциональная геймифицированная поверхность курирования. Сообщает оценку чистоты — долю памяти, которая всё ещё жива (горячая+теплая) по сравнению с устаревшей, что поощряет обрезку, а не накопление. Также перечисляет устаревшие кандидаты, стоящие аккуратной чистки. Аргументы: нет. Возвращает: отчёт о состоянии.

Здоровье памяти

Параметры

Без параметров.

mindmap_import

Сканирует локальную историю ваших AI-инструментов и импортирует НОВЫЕ сессии в Mind Map — из Claude Code, Cursor, Copilot и Cowork. Используйте это, когда пользователь говорит что-то вроде "импортируй мои сессии", "синхронизируй mind map", "обнови mind map моей последней работой", "загрузи мои недавние сессии" или "освежи мою память". (Mind Map также автоматически импортирует периодически, если это включено, но эта команда делает это по запросу, прямо сейчас.) Аргументы: - source ('all'|'code'|'cursor'|'copilot'|'cowork'): ограничить одним источником (по умолчанию all) - reimport (boolean): также обновить уже импортированные сессии на месте (по умолчанию false) Возвращает: сколько сессий было импортировано / обновлено / пропущено.

Импорт/синхронизация сессий

Параметры
  • reimportboolean

    Refresh already-imported sessions too

  • sourceenum

    Which source(s) to import

mindmap_linkидемпотентный

Соединяет две памяти, чтобы связанные треды (например, планирование в Chat + код в Claude Code) ссылались друг на друга. Двунаправленно. Это лёгкая соединительная ткань - 'карта'. Аргументы: id (string), target_id (string). Возвращает: подтверждение.

Связать два воспоминания

Параметры
  • idstringобязательный

    First thread id

  • target_idstringобязательный

    Second thread id

mindmap_listтолько чтениеидемпотентный

Выводит список сохранённых воспоминаний с опциональными фильтрами, сначала самые новые. Только для чтения. Аргументы: фильтры source/tag/tier, include_archived (по умолчанию false), limit (по умолчанию 20). Возвращает: список воспоминаний.

Список воспоминаний

Параметры
  • include_archivedboolean

    Include archived traces

  • limitinteger

    Max results

  • sourcestring

    Filter by origin tool

  • tagstring

    Filter by tag

  • tierenum

    Filter by tier

mindmap_llmидемпотентный

Mind Map работает ПОЛНОСТЬЮ БЕЗ LLM. Это опционально: подключите СВОЕГО провайдера, чтобы включить более умные функции (определение личности с помощью LLM, подробные сводки). Безопасность: Mind Map хранит только имя провайдера + модели. Он НИКОГДА не хранит ваш API-ключ — ключ берётся из вашего окружения (ANTHROPIC_API_KEY / OPENAI_API_KEY / GOOGLE_API_KEY; для ollama не нужен). Установите переменную окружения сами. Аргументы (все опциональны — опустите всё, чтобы просто увидеть статус): - provider: none | anthropic | openai | google | ollama - model: переопределить модель по умолчанию - baseUrl: для ollama / self-hosted (по умолчанию http://localhost:11434) Возвращает: текущие провайдер/модель, готов ли он, и примерную оценку стоимости.

Настройка необязательной LLM (свой ключ BYO)

Параметры
  • baseUrlstring

    Base URL for ollama / self-hosted

  • modelstring

    Model name override

  • providerenum

    LLM provider, or 'none' to disable

mindmap_passport_exportтолько чтение

Экспортирует все воспоминания и персону в единый переносимый JSON-файл, который вам принадлежит: для резервного копирования, переноса на другую машину или передачи форку. Это ваш контекст, доступный для извлечения. Аргументы: path (string, необязательно): выходной файл (по умолчанию ~/mindmap-passport-<date>.json). Возвращает: путь к файлу и количество.

Экспортировать паспорт памяти

Параметры
  • pathstring

    Output file path

mindmap_passport_import

Вносит контекст. Либо из файла-паспорта Mind Map (с другого компьютера), либо извлекает ваши разговоры из закрытой экосистемы, указывая на файл экспортированных данных: - тип 'passport' (по умолчанию): JSON-файл паспорта Mind Map - тип 'chatgpt': экспортированный conversations.json из ChatGPT - тип 'claude': экспортированный conversations.json из Claude.ai Сами облачные чаты недоступны в реальном времени, но их ЭКСПОРТИРОВАННЫЕ ФАЙЛЫ принадлежат вам — этот инструмент импортирует их как концентрированные воспоминания. Аргументы: file (строка, обязательный), kind ('passport'|'chatgpt'|'claude', по умолчанию 'passport'). Возвращает: количество импортированных элементов.

Импорт memory passport / экспорт данных

Параметры
  • filestringобязательный

    Path to the file to import

  • kindenum

    File kind

mindmap_personaтолько чтениеидемпотентный

Возвращает профиль пользователя: сжатое описание того, как он работает (стек, стиль, общение, ограничения), чтобы вы могли выставить согласованные настройки по умолчанию и ИЗБЕЖАТЬ повторных вопросов о том, что уже установлено. ВЫЗЫВАЙТЕ ЭТО ПРОАКТИВНО в начале сессии, прежде чем задавать пользователю вопросы настройки (стек, предпочтения, соглашения). Применяйте факты с высокой степенью уверенности молча; спрашивайте только то, что нужно, но не покрыто. Аргументы: - project (string, optional): включать настройки, относящиеся к этому проекту, поверх глобальных. Возвращает: блок "О пользователе" + количество фактов.

Получить персону пользователя

Параметры
  • projectstring

    Current project name for scoped prefs

mindmap_persona_forgetидемпотентный

Удалить или заглушить факт персонажа (например, если он неверный или устарел). Получить идентификаторы из mindmap_persona. По умолчанию заглушает (восстановимо); hard=true удаляет. Аргументы: id (строка), hard (логический, по умолчанию false). Возвращает: подтверждение.

Забыть предпочтение

Параметры
  • hardboolean

    Permanently delete instead of mute

  • idstringобязательный

    Persona fact id

mindmap_persona_learn

Извлекает факты о persona из ваших существующих воспоминаний. Если вы настроили LLM (mindmap_llm), он извлекает более богатые факты: стиль, ограничения, рабочий процесс; в противном случае он запускает эвристику по ключевым словам без LLM по вашему стеку/инструментам. В любом случае, выведенные факты получают более низкую уверенность, чем объявленные, и никогда не переопределяют то, что вы явно задали. Аргументы: нет. Возвращает: сколько фактов было добавлено/обновлено и какой путь был выполнен.

Вывести персону из памяти

Параметры

Без параметров.

mindmap_persona_set

Сохраняет постоянную настройку о том, как работает пользователь, чтобы в будущих сессиях не переспрашивать. Используйте это, когда пользователь говорит о долгосрочном предпочтении — «Я предпочитаю X», «всегда Y», «никогда Z», «я на macOS», «мы используем Postgres». (Для сохранения обсуждения используйте mindmap_capture — это для постоянных предпочтений.) Аргументы: - text (string): предпочтение, например «Предпочитает краткие ответы с кодом» - category: identity | stack | style | communication | constraints | workflow | goals - polarity ('prefer'|'avoid'|'fact'): по умолчанию 'prefer' - project (string, необязательно): привязать к одному проекту вместо глобального Возвращает: сохранённый факт

Записать предпочтение пользователя

Параметры
  • categoryenumобязательный

    Which dimension this preference is about

  • polarityenum

    prefer / avoid / fact

  • projectstring

    Scope to a project (default: global)

  • textstringобязательный

    The preference statement

mindmap_persona_syncидемпотентный

Проецирует личность пользователя в файлы нативных инструкций их AI-инструментов (Claude CLAUDE.md, Cursor rules, Copilot instructions, Windsurf rules), чтобы даже инструменты без MCP знали, как они работают, из одного источника. Записывает только внутри управляемого блока; никогда не затирает собственный контент пользователя. По умолчанию записывает глобальную конфигурацию Claude + все обнаруженные инструменты проекта. Аргументы: - targets (string[], необязательно): идентификаторы конкретных целей (claude-global, claude-project, cursor, copilot, windsurf) - force (boolean, необязательно): записывать, даже если инструмент не обнаружен Возвращает: результаты по каждому целевому объекту.

Запишите персонажа в свои инструменты

Параметры
  • forceboolean

    Write even if tool not detected

  • targetsstring[]

    Target ids to write

mindmap_promoteидемпотентный

Явно пометить память как доверенную: помечает её как 'promoted' и перемещает в горячий уровень, чтобы она занимала первое место и затухала медленнее. Используйте, когда вы знаете, что память важна, даже если вы ещё не возобновили её. Аргументы: id (строка). Возвращает: обновлённый поток.

Повысить приоритет памяти

Параметры
  • idstringобязательный

    Thread id

mindmap_pruneидемпотентный

Запускает проход консолидации, который фоновый поток выполняет автоматически: пересчитывает уровень каждой памяти по возрасту и использованию, охлаждая неиспользуемые и сворачивая холодные в однострочный след (по-прежнему доступный для поиска, никогда не удаляемый). Ничто не уничтожается. Аргументы: dry_run (boolean, default false) - предварительно просматривает изменения без записи. Возвращает: то, что переместилось между уровнями.

Обрезать / консолидировать память

Параметры
  • dry_runboolean

    Preview without writing changes

mindmap_resume

Перезапускает тему по её описанию обычными словами — «продолжить обсуждение дорожной карты», «доделать рефакторинг сервиса покупки». Разрешает ваше описание в лучшее совпадение, затем собирает ВСЮ тему: якорную память вместе с её связанными и близкими фрагментами (тема обычно разбросана по нескольким сессиям/инструментам), объединяет их в один тред для продолжения. Продвигает якорь при повторном использовании. Если зафиксировано, показывает «где вы остановились» (следующие шаги), чтобы вы могли продолжить, а не просто перечитывать. ВЫЗЫВАЙТЕ ЭТОТ ИНСТРУМЕНТ АКТИВНО В НАЧАЛЕ сессии, когда пользователь ссылается на предыдущую работу — «давай продолжим», «перезапусти обсуждение X», «проект X» или любую тему, у которой может быть история. Аргументы: - query (string): тема / что вы хотите перезапустить, на естественном языке - id (string): возобновляет КОНКРЕТНУЮ память по id — используйте после того, как пользователь выбрал из mindmap_resume_options - source (string): возобновляет только воспоминания из этого инструмента (опционально) (Укажите query ИЛИ id.) Возвращает: объединённый тред темы (якорь + связанные фрагменты) + где вы остановились + в какой рабочей области продолжать, или близкие совпадения.

Возобновить контекст

Параметры
  • idstring

    Resume this specific memory id (e.g. a picked choice)

  • querystring

    Topic / what you want to restart (natural language)

  • sourcestring

    Restrict to this origin tool

mindmap_resume_optionsтолько чтениеидемпотентный

Когда описание пользователя неоднозначно или может соответствовать НЕСКОЛЬКИМ разным темам, выведи список различных тем-кандидатов - каждую с рабочей областью, в которой она находится - чтобы ты мог СПРОСИТЬ пользователя, какую продолжить, вместо того чтобы гадать. Только чтение: ничего не продвигает. После того как пользователь выберет, вызови mindmap_resume с id этого выбора. Аргументы: - query (string): описание пользователя на естественном языке - source (string): ограничить одним инструментом-источником (необязательно) Возвращает: до 5 различных тем-кандидатов (id, title, workspace, source, last used)

Перечислить темы для возобновления (пользователь выбирает)

Параметры
  • querystringобязательный

    What the user wants to resume

  • sourcestring

    Restrict to this origin tool

mindmap_searchтолько чтениеидемпотентный

Ищет по всему сохранённому контексту (все уровни, все инструменты), чтобы найти прошлое обсуждение. Только чтение — не меняет свежесть или уровни (используйте mindmap_resume, чтобы действительно вытащить воспоминание вперёд). Аргументы: - query (string): ключевые слова; пустая строка просматривает по недавности - source/tag/tier: опциональные фильтры - include_archived (boolean): включать забытые следы (по умолчанию false) - limit (number): макс. результатов (по умолчанию 10) Возвращает: ранжированный список подходящих воспоминаний.

Поиск воспоминаний

Параметры
  • include_archivedboolean

    Include forgotten traces

  • limitinteger

    Max results

  • querystring

    Keywords; empty = browse by recency

  • sourcestring

    Filter by origin tool

  • tagstring

    Filter by tag

  • tierenum

    Filter by tier

mindmap_tidyтолько чтениеидемпотентный

Возвращает небольшую партию самых старых воспоминаний для быстрого просмотра с выбором: сохранить/сократить/забыть — игра по добровольному курированию. Только чтение: только предлагает. Действуйте с элементами через mindmap_promote (сохранить), mindmap_update (сократить) или mindmap_forget. Аргументы: limit (number, по умолчанию 5). Возвращает: самые старые холодные воспоминания.

Проход приведения в порядок

Параметры
  • limitinteger

    How many to review

mindmap_transcriptтолько чтениеидемпотентный

Восстанавливает и возвращает ПОЛНЫЙ исходный разговор для памяти (каждый шаг пользователя и ассистента), читая его напрямую из исходного транскрипта. Сводка — это сжатая суть; здесь же полное обсуждение, когда нужны детали. Доступно только для источников с транскриптами (Claude Code, Cursor, Copilot). Сессии Cowork / Claude desktop-app не сохраняют транскрипт, поэтому вместо этого возвращается уведомление. Аргументы: id (строка). Возвращает: полное обсуждение в виде шагов или причину недоступности.

Полное обсуждение

Параметры
  • idstringобязательный

    Thread id

mindmap_update

Редактировать память - момент ручной курации. Обрежьте устаревшее резюме, уточните ключевые моменты, переименуйте или измените теги. Любое пропущенное поле остаётся без изменений. Установите append=true, чтобы добавить к summary/key_points, а не заменить. Аргументы: id, title?, summary?, key_points?, tags?, append (по умолчанию false). Возвращает: обновлённый поток.

Обновить / обрезать память

Параметры
  • appendboolean

    Append instead of replace

  • idstringобязательный

    Thread id

  • key_pointsstring[]

    New (or appended) key points

  • summarystring

    New (or appended) summary

  • tagsstring[]

    Replace tags

  • titlestring

    New title

Похожие MCP-сервера

pi22by7/In-Memoria

pi22by7/In-Memoria

InMemoria - MCP-сервер с постоянной памятью для AI-ассистентов. Анализирует код, извлекает паттерны и архитектуру, маршрутизирует фичи к файлам. Контекст сохраняется между сессиями - без повторных ...

Rust173
Goldentrii/AgentRecall

Goldentrii/AgentRecall

AgentRecall — MCP сервер, который запоминает каждое исправление агента и учится на ошибках. Пять слоев памяти (коррекции, эпизоды, навыки) хранятся локально в markdown. Инструмент полезен разработчикам ИИ-агентов: он автоматически анализирует повторные недочеты и повышает точность работы, не треб...

JavaScript371
hyunjae-labs/lore

hyunjae-labs/lore

MCP-сервер для семантического поиска по диалогам Claude Code и OpenAI Codex CLI. Находит обсуждения архитектуры, отладки и решений среди сотен сессий — полностью локально, без API-ключей.

TypeScript8
sgx-labs/statelessagent

sgx-labs/statelessagent

MCP сервер SAME даёт AI-агентам кодинга постоянную память: индексирует markdown-заметки, автоматически подбирает контекст после перезапуска и фиксирует решения. Работает локально с Claude Code, Cursor, Windsurf и другими. Без облаков и телеметрии.

Go23
Cartisien/engram-mcp

Cartisien/engram-mcp

MCP-сервер для постоянной семантической памяти AI-агентов. Хранит воспоминания в SQLite, ищет по смыслу через локальные эмбеддинги Ollama — без облака и API-ключей. Пять инструментов: remember, rec...

TypeScript1
needle-ai/needle-mcp

needle-ai/needle-mcp

MCP сервер для интеграции с Needle — управляйте документами, ищите по коллекциям через Claude Desktop. Поддерживает PDF, DOCX и другие форматы, делая данные доступными для семантического поиска без локальной установки. Идеально для AI-агентов.

Python102
© Каталог MCP, 2026. Все права защищены.
Проект не аффилирован с Anthropic и любыми упомянутыми продуктами.
Все названия и торговые марки принадлежат их владельцам.
Контакты для связи: hi@mcp-katalog.ru

Лука Никитин