CogMemory MCP Server
CogMemory MCP Server
Единый сервер Model Context Protocol, предоставляющий четыре подсистемы контекста для ИИ-агентов программирования:
Memory — решения, соглашения, ошибки, активный контекст, журнал изменений, план, задачи, сессии
Knowledge Graph — сущности, связи, наблюдения
Specs — подробные документы (PRD/SRS), опционально связанные с сущностью из Knowledge Graph
Code Graph — статический структурный граф (символы/рёбра) + именованные трассы выполнения + сгенерированные ИИ аннотации
Хранилище: SQLite посредством better-sqlite3. Один файл .db на область.
Быстрый старт
Установка
git clone <repo> && cd cogmemory-mcp
pnpm install
pnpm run buildНастройка в VS Code
Добавьте в .vscode/mcp.json (для рабочей области):
{
"servers": {
"cogmemory": {
"command": "node",
"args": ["/absolute/path/to/cogmemory-mcp/dist/index.js"]
}
}
}Или добавьте в пользовательский mcp.json, чтобы получить глобальную доступность.
Запуск с MCP Inspector (dev)
pnpm run inspectRelated MCP server: LumenCore
Конфигурация области
CogMemory определяет область в порядке приоритета:
.cogmemory/config.jsonв корне рабочей области:{ "scope": "global" }Переменная окружения:
COGMEMORY_SCOPE=globalПо умолчанию:
workspace
Пути
Область | Путь к базе данных |
workspace |
|
global |
|
Определение рабочей области и поддержка multiple roots
CogMemory определяет корень рабочей области (где находится .cogmemory/memory.db) в следующем порядке приоритета:
--workspace <path>— аргумент командной строки (наивысший приоритет)COGMEMORY_WORKSPACE— переменная окруженияПодъём от CWD — поиск ближайшей родительской папки, содержащей каталог
.cogmemory/Запасной вариант — CWD
Мультикорневые рабочие области VS Code
В мультикорневой рабочей области VS Code каждая папка является отдельным корнем. CogMemory обрабатывает это следующим образом:
Один корень — работает автоматически. VS Code задаёт CWD как папку рабочей области, а
--workspaceпередаётся черезmcp.json.Несколько корней — каждая папка рабочей области может иметь свой
.cogmemory/. Укажите каждой собственный CogMemory с разными путями--workspaceили разместите общий.cogmemory/в родительском каталоге.
Рекомендуемый mcp.json для мультикорневой настройки (на папку):
{
"servers": {
"cogmemory-frontend": {
"command": "node",
"args": [
"/path/to/cogmemory-mcp/dist/index.js",
"--workspace",
"/path/to/frontend"
]
},
"cogmemory-backend": {
"command": "node",
"args": [
"/path/to/cogmemory-mcp/dist/index.js",
"--workspace",
"/path/to/backend"
]
}
}
}Или используйте общую базу данных (все корни в одном месте):
{
"servers": {
"cogmemory": {
"command": "node",
"args": [
"/path/to/cogmemory-mcp/dist/index.js",
"--workspace",
"/shared/root"
]
}
}
}Или используйте глобальную область (global scope), чтобы использовать данные во всех рабочих областях:
{
"servers": {
"cogmemory": {
"command": "node",
"args": ["/path/to/cogmemory-mcp/dist/index.js"]
}
}
}export COGMEMORY_SCOPE=globalСправочник инструментов
Инструменты Memory
Tool | Description |
| Начать рабочую сессию (возвращает идентификатор сессии) |
| Завершить сессию и сохранить сводку |
| Получить детали сессии, включая решения, ошибки, журнал изменений |
| Зафиксировать решение с обоснованием и тегами |
| Зафиксировать/обновить соглашение (design token, паттерн, стиль, именование) |
| Записать ошибку с сигнатурой и способом устранения |
| Вставить или обновить текущий фокус/задачу по ключу |
| Прочитать текущий фокус по ключу |
| Добавить запись в журнал изменений |
| Добавить пункт дорожной карты |
| Изменить статус пункта плана |
| Создать задачу, optionally related to plan |
| Изменить статус задачи |
| Единый поиск по решениям, соглашениям, ошибкам и журналу изменений |
Инструменты Knowledge Graph
Tool | Описание |
| Добавить сущность (дедупликация по имени+типу) |
| Связать две сущности типизированным отношением |
| Прикрепить факт к сущности |
| Запрос сущностей, отношений, наблюдений |
Инструменты Specs
Tool | Описание |
| Сохранить подробный документ |
| Получить по идентификатору или точному заголовку |
| Обновить содержимое/заголовок, версия повышается автоматически |
Инструменты Code Graph
Tool | Описание |
| Обойти рабочую область, извлечь символы и рёбра через ts-morph (JS/TS) |
| Получить вызывающие/вызываемые функции/импорты для символа (1 переход) |
| Собрать codemap от входного символа до ограниченного подграфа с трассами и аннотациями (переходы) |
| Прикрепить пояснительный текст к символу или трассе |
Архитектура
cogmemory-mcp/
├── src/
│ ├── index.ts # entry point, server bootstrap
│ ├── config.ts # scope resolution, path resolution
│ ├── types.ts # shared TS types mirroring schema
│ ├── db/
│ │ ├── connection.ts # DB open/close, pragma setup
│ │ ├── schema.sql # full schema (reference)
│ │ └── migrate.ts # idempotent schema application
│ ├── tools/
│ │ ├── memory.ts # decisions/conventions/errors/context/changelog/recall
│ │ ├── plan-tasks.ts # plan + tasks tools
│ │ ├── sessions.ts # start/end session, summary
│ │ ├── knowledge-graph.ts # entities/relations/observations
│ │ ├── specs.ts # spec CRUD
│ │ ├── code-graph.ts # index_codebase, query_code_graph
│ │ └── codemap.ts # generate_codemap, annotate_symbol
│ └── indexing/
│ ├── ts-analyzer.ts # ts-morph symbol/edge extraction
│ └── walker.ts # file discovery, gitignore respect
├── schema.sql # reference copy
├── package.json
├── tsconfig.json
└── README.mdСхема (15 таблиц)
Memory (8):
sessions,decisions,conventions,errors,context,changelog,plan,tasksKnowledge Graph (3):
entities,relations,observationsSpecs (1):
specsCode Graph (4):
symbols,edges,execution_traces,codemap_annotations
Прагмы
Устанавливаются при каждом открытии подключения:
PRAGMA journal_mode = WAL;
PRAGMA foreign_keys = ON;Разработка
pnpm run dev # Run with tsx (no build step)
pnpm run build # Compile TypeScript
pnpm run start # Run compiled output
pnpm run inspect # Launch MCP Inspector
pnpm run smoke-test # Run smoke test scriptЛицензия MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
Shared memory for coding agents. Stop re-explaining your codebase every session.
Persistent memory and knowledge graphs for AI agents. Hybrid search, context checkpoints, and more.
Project memory, semantic code search, and grounded agent context.
Project memory for coding agents: requirements, decisions, code graph and delivery telemetry.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceProvides AI agents with persistent, searchable memory using a knowledge graph stored in SQLite. Features semantic search, temporal awareness, and workflow-aware prompts for development projects.7 npmMIT
- AlicenseNot gradedqualityDmaintenanceProvides AI coding assistants with persistent project memory to retain architectural decisions, code patterns, and domain knowledge across sessions. It stores data locally in a SQLite database, allowing agents to remember, recall, and manage project-specific context using full-text search.8 npmApache 2.0
- AlicenseAqualityBmaintenanceProvides persistent cross-session memory and full-text search for AI coding assistants, storing project context, decisions, and preferences while enabling searchable access to conversation history via local SQLite.81MIT
- AlicenseAqualityBmaintenanceActs as a persistent memory and cross-tool shared context store, and builds a queryable codebase knowledge graph to slash token usage via structural answers.937 npm19MIT