Cairn MCP
Cairn собирает из документов навыков граф знаний и отдает его агентам по MCP, чтобы им не грузить в контекст все тексты.
- 94 ★ репозитория
- Последний коммит
Расширенный доступ
Почему такой уровень
- Сборщик отправляет тексты документов во внешнюю языковую модель по вашему ключу.
- HTTP-режим сервера отдает REST-эндпоинт без аутентификации, его нельзя выставлять в открытую сеть.
Установка
- Работает в
Ручная установка
./bin/cairn-mcp --config configs/mcp-local.yamlИз шага 3 README после `make build` (нужен Go 1.22+) и копирования `configs/mcp-local.example.yaml`. Транспорт stdio.
Доступ и проверки
Как мы проверяемРасширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.
- Сборщик отправляет тексты документов во внешнюю языковую модель по вашему ключу.
- HTTP-режим сервера отдает REST-эндпоинт без аутентификации, его нельзя выставлять в открытую сеть.
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
Cairn — открытая связка из трех частей: сборщик графа, сервер запросов и визуализатор. Сборщик читает репозиторий с файлами `SKILL.md` и `references/*.md`, через языковую модель выделяет домены, поддомены, сущности и связи и сохраняет граф в SQLite с полнотекстовым поиском. Обновление идет по частям: пересчитываются только затронутые поддомены, а ручные правки сохраняются. Сервер `cairn-mcp` отдает граф агенту по stdio, SSE или REST и не обращается к языковой модели: он только читает базу. Для поиска есть инструмент `domain_search`, а консольная утилита `cairn` умеет `find`, `impact` и `status`. Граф упаковывается в неизменяемый бандл и раздается через релизы GitHub с горячим обновлением у клиентов.
Для кого. Командам с большими базами знаний в виде навыков и документации, у которых агент тратит контекст на чтение всего подряд.
Подходит, если
- Каталог навыков вырос так, что целиком в контекст не помещается.
- Нужно понять, какие сущности затронет изменение платежного шлюза.
- Команде надо раздать один граф знаний и обновлять его без перезапуска клиентов.
- Документы правят люди, а граф должен подхватывать их правки.
Не подходит, если
- Документов мало, и они помещаются в контекст агента.
- Нет доступа к языковой модели с совместимым API для сборки графа.
- Нужен семантический поиск по векторам: Cairn строит граф и ищет по SQLite FTS5.
Пример запроса к агенту
Найди в графе Cairn сущности про платежный шлюз и покажи, на какие домены влияет его изменение.MCP
- Транспорт
- stdio, http, sse
- Авторизация
- не нужна
Переменные окружения
CAIRN_LLM_API_KEYсекрет- Ключ модели для сборки графа командой `cairn-ingest`. Серверу запросов не нужен.
Ограничения
Проект собирается из исходников: нужен Go 1.22 или новее, а для визуализатора Node 22 и выше. Сборка графа требует конечную точку модели, совместимую с OpenAI или Anthropic, и ключ в переменной `CAIRN_LLM_API_KEY`, по умолчанию настроен DeepSeek. Сервер запросов работает без модели. Для китайских текстов поиск идет по токенайзеру `unicode61`, где слитная последовательность иероглифов считается одним токеном, поэтому короткий фрагмент может не найтись. Режим REST по HTTP открыт без аутентификации.
Как отключить. Удалите запись `cairn-mcp` из настроек MCP-клиента и остановите процесс. Файл `knowledge.db` можно удалить: исходные документы он не меняет.
Частые вопросы
Как запустить MCP-сервер?
Соберите проект командой `make build`, скопируйте `configs/mcp-local.example.yaml` в `configs/mcp-local.yaml`, укажите путь к базе и запустите `./bin/cairn-mcp --config configs/mcp-local.yaml` для stdio.
Как расшарить граф команде?
Запустите `./bin/cairn-mcp --config configs/mcp-http.yaml --listen :8080`: сервер отдает MCP по HTTP и SSE, а также REST-эндпоинт `/api/search`.
Нужен ли ключ модели для запросов?
Нет. Ключ `CAIRN_LLM_API_KEY` нужен только сборке графа, сервер запросов только читает базу и не вызывает модель.
Как проверить, что MCP работает?
Выполните `scripts/dev/smoke-mcp.sh configs/mcp-local.yaml my-skills`.
Как построить граф из своих навыков?
Выполните `./bin/cairn-ingest --repo /path/to/your-skills-repo --db ./knowledge.db`: команда создает `knowledge.db` с графом и индексом поиска.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
MCP-серверыОбщая память для группы ИИ-агентов с областями доступа, аудитом и графом знаний: MCP-сервер, Docker и облако
agentcairn хранит память Claude Code, Codex и Cursor в Markdown-файлах для Obsidian и отдает агенту только нужное
BrainAPI превращает текст в граф знаний на вашем сервере и отдает агентам через MCP, REST и консоль с ответами по цепочке фактов
MCP-сервер хранит доменные знания в графе: агент ищет сущности и связи, а при необходимости сам добавляет и обновляет их.
Claude Skills MCP — поиск скиллов по смыслу
Claude Skills MCP
MCP-сервер с векторным поиском: агент описывает задачу и получает подходящие скиллы из коллекций Anthropic и K-Dense
Реестр скиллов для команд с проверкой безопасности и версиями: MCP-сервер ищет и ставит скиллы по запросу агента.
Сравнение с похожими
Карточки с тем же главным запросом: чем они отличаются.
| Инструмент | Официальный | Авторизация | Звезды репозитория | Главное отличие |
|---|---|---|---|---|
| Cairn (эта карточка) | нет | не нужна | 94 | |
| MCP Knowledge Graph | нет | не нужна | 888 | память агента в виде графа; Cairn строит граф из документов навыков и раздает его командам |
| Project Cairn | нет | 252 | другой проект с похожим названием; этот строит граф знаний из навыков |
Коротко о README
Идея — между полным текстом в контексте и векторным поиском выбрать третий путь: сначала собрать структуру, потом отдавать агенту нужный подграф. Сервер запросов отделен от сборщика и это проверяет команда `make verify`.