Skip to main content
Glama
skylarng89

CogMemory MCP Server

by skylarng89

CogMemory MCP Server

Единый сервер Model Context Protocol, предоставляющий четыре подсистемы контекста для ИИ-агентов программирования:

  1. Memory — решения, соглашения, ошибки, активный контекст, журнал изменений, план, задачи, сессии

  2. Knowledge Graph — сущности, связи, наблюдения

  3. Specs — подробные документы (PRD/SRS), опционально связанные с сущностью из Knowledge Graph

  4. 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 inspect

Related MCP server: LumenCore

Конфигурация области

CogMemory определяет область в порядке приоритета:

  1. .cogmemory/config.json в корне рабочей области:

    { "scope": "global" }
  2. Переменная окружения: COGMEMORY_SCOPE=global

  3. По умолчанию: workspace

Пути

Область

Путь к базе данных

workspace

<workspace_root>/.cogmemory/memory.db

global

~/.cogmemory/global.db


Определение рабочей области и поддержка multiple roots

CogMemory определяет корень рабочей области (где находится .cogmemory/memory.db) в следующем порядке приоритета:

  1. --workspace <path> — аргумент командной строки (наивысший приоритет)

  2. COGMEMORY_WORKSPACE — переменная окружения

  3. Подъём от CWD — поиск ближайшей родительской папки, содержащей каталог .cogmemory/

  4. Запасной вариант — 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

start_session

Начать рабочую сессию (возвращает идентификатор сессии)

end_session

Завершить сессию и сохранить сводку

get_session_summary

Получить детали сессии, включая решения, ошибки, журнал изменений

remember_decision

Зафиксировать решение с обоснованием и тегами

remember_convention

Зафиксировать/обновить соглашение (design token, паттерн, стиль, именование)

log_error

Записать ошибку с сигнатурой и способом устранения

set_active_context

Вставить или обновить текущий фокус/задачу по ключу

get_active_context

Прочитать текущий фокус по ключу

log_change

Добавить запись в журнал изменений

add_plan_item

Добавить пункт дорожной карты

update_plan_status

Изменить статус пункта плана

create_task

Создать задачу, optionally related to plan

update_task_status

Изменить статус задачи

recall

Единый поиск по решениям, соглашениям, ошибкам и журналу изменений

Инструменты Knowledge Graph

Tool

Описание

create_entity

Добавить сущность (дедупликация по имени+типу)

create_relation

Связать две сущности типизированным отношением

add_observation

Прикрепить факт к сущности

search_knowledge

Запрос сущностей, отношений, наблюдений

Инструменты Specs

Tool

Описание

create_spec

Сохранить подробный документ

get_spec

Получить по идентификатору или точному заголовку

update_spec

Обновить содержимое/заголовок, версия повышается автоматически

Инструменты Code Graph

Tool

Описание

index_codebase

Обойти рабочую область, извлечь символы и рёбра через ts-morph (JS/TS)

query_code_graph

Получить вызывающие/вызываемые функции/импорты для символа (1 переход)

generate_codemap

Собрать codemap от входного символа до ограниченного подграфа с трассами и аннотациями (переходы)

annotate_symbol

Прикрепить пояснительный текст к символу или трассе


Архитектура

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, tasks

  • Knowledge Graph (3): entities, relations, observations

  • Specs (1): specs

  • Code 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

A
license - permissive license
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

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

  • A
    license
    Not graded
    quality
    C
    maintenance
    Provides 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
    Apache 2.0
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables AI coding agents to maintain persistent, cross-session memory of codebase architecture, naming conventions, and decisions through MCP tools. Eliminates repetitive project re-explanation by automatically injecting stored context into every session with local-first SQLite storage and optional team sharing capabilities.
    4
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Provides 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.
    8
    1
    MIT

View all related MCP servers

Related MCP Connectors

  • Persistent memory and knowledge graphs for AI agents. Hybrid search, context checkpoints, and more.

  • Universal memory for AI agents and tools. Save, organize and search context anywhere.

  • Give your AI agent a persistent map of your project's structure, dependencies, and bugs.

View all MCP Connectors

Latest Blog Posts

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/skylarng89/cogmemory-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server