Skip to main content
Glama

sagrada-mcp

Model Context Protocol (MCP) сервер для Sagrada — отслеживайте и проверяйте состояние рассуждений для ИИ-систем, а также читайте заверенные записи истории репозитория.

Sagrada предоставляет Claude Code (и любому MCP-совместимому клиенту) долговременную, адресуемую по содержимому память о проектных решениях, пересмотрах утверждений, противоречиях и криптографически проверяемой цепочке правок, которая привела к текущему состоянию знаний.

Что это за репозиторий

Это исходный код пакета sagrada-mcp на PyPI, чтобы вы могли прочитать то, что установили, вместо того чтобы верить нам на слово.

Репозиторий был создан после выхода 0.3.0. Его первый коммит — исходный код этого релиза, дословно, с тегом v0.3.0, — так что код, который вы устанавливаете, и код, который вы читаете, можно сверить друг с другом:

pip download sagrada-mcp==0.3.0 --no-binary :all: --no-deps -d /tmp/pypi
tar xzf /tmp/pypi/sagrada_mcp-0.3.0.tar.gz -C /tmp
mkdir -p /tmp/tagged && git archive v0.3.0 | tar x -C /tmp/tagged
diff -r /tmp/tagged /tmp/sagrada_mcp-0.3.0 --exclude PKG-INFO   # no output

CI запускает это сравнение при каждом пуше. main опережает v0.3.0 и содержит невыпущенные изменения; pip install sagrada-mcp даёт вам тег, а не ветку.

Чего здесь нет: скомпилированного движка sagrada (Rust), который нужен 12 инструментам отслеживания рассуждений. Он устанавливается из PyPI как sagrada-engine, и его исходный код не опубликован. Предварительный шлюз — та часть, которая отказывает, — находится в этом репозитории, написан на чистом Python и не зависит от движка.

Related MCP server: @humanaccepted/mcp

Установка

Режим 1: pip install (чистое виртуальное окружение, без клонирования репозитория)

pip install sagrada-mcp

Это устанавливает сервер вместе с вендоренными копиями его ещё не опубликованных зависимостей (см. _vendor/README.md). Один сервер, 21 инструмент:

  • Три инструмента предварительного шлюза (preflight_action, list_beliefs, verify_receipt) проверяют значимые вызовы инструментов на соответствие типизированным убеждениям репозитория и создают квитанции действий с подписью Ed25519 в .sagrada/receipts.jsonl, каждую из которых можно независимо проверить офлайн с помощью uvx er1-verify (1.0.1 или новее — установка без закрепления версии с учётом ограничения версии является заявленным пробелом покрытия, который верификатор пересчитывает; форма квитанции 1.0.0 существовала ранее). Детерминированно и без движка — отказ не зависит от бинарного wheel-пакета.

    Квитанции подписываются ключевой парой, созданной для вашего репозитория при первом использовании: закрытая половина хранится в .sagrada/operator_key (режим 0600 на POSIX, в .gitignore, никогда не покидает вашу машину), открытая половина в .sagrada/operator_key.pub предназначена для коммита. verify_receipt проверяет подписанта квитанции на соответствие этому закоммиченному ключу и подписанной цепочке наследования за ним, поэтому квитанция от ключа, который никогда не был ключом этого репозитория, возвращается как foreign, а не молча проходит. Более ранние версии создавали ключ на каждый процесс, что делало каждую подпись непривязываемой — «подписано X», где X существовал в течение одного запуска.

    Это устанавливает непрерывность, а не идентичность: если вы закрепили отпечаток этого репозитория по внешнему каналу, и закрытый ключ никогда не покидал машину, то подмена подписывающего ключа обнаружится. Каждое условие важно — подпись доказывает владение файлом, а файлы копируются.

    Для Claude Code есть также принудительный уровень: консольный скрипт sagrada-preflight-hook можно подключить как PreToolUse-хук, и тогда он блокирует вызовы, получившие HALT, в основном канале. Установка пакета не регистрирует его — ничто здесь не изменяет ваши настройки Claude. Вы добавляете его сами; preflight_hook.py содержит точную однострочную запись для вставки.

  • Шесть инструментов записей репозитория (crux) полностью функциональны при наличии артефакта .crux (SAGRADA_CRUX). Без него они возвращают понятную строку ошибки.

  • Двенадцать инструментов отслеживания рассуждений дополнительно требуют скомпилированный wheel-пакет sagrada-engine (жёсткая зависимость начиная с 0.3.0; устанавливается автоматически на платформах с wheel). Если движок по какой-то причине отсутствует, они возвращают понятную JSON-ошибку с указанием недостающего компонента — никогда traceback.

Режим 2: из клона этого репозитория

git clone https://github.com/Cruxia-Labs/sagrada-mcp && cd sagrada-mcp
pip install -e ".[dev]"
pytest -q

Чтобы запустить сам сервер, учтите: он говорит по MCP через stdio и не завершается — он ждёт клиента, поэтому запускайте его из конфигурации вашего MCP-клиента, а не рассчитывайте на ответное приглашение:

python -m sagrada_mcp.server     # blocks; Ctrl-C to stop

Сервер предпочитает настоящие пакеты sagrada_tracker / sagrada_preflight, когда они импортируемы, и в противном случае возвращается к копиям в sagrada_mcp/_vendor/ — поэтому он ведёт себя одинаково здесь и в вышестоящем дереве, из которого приходят эти копии. В клоне выполняются именно вендоренные копии, а тестовый набор привязывается к тем же, что и сервер (tests/conftest.py выводит, к каким именно, в заголовке pytest).

Настройка в Claude Code / Claude Desktop

{
  "mcpServers": {
    "sagrada": {
      "command": "sagrada-mcp",
      "env": { "SAGRADA_PROJECT": "/path/to/your/project" }
    }
  }
}

(В клоне репозитория используйте "command": "python", "args": ["-m", "sagrada_mcp.server"].)

Предоставляемые инструменты (21)

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

Инструмент

Назначение

preflight_action

Проверяет предлагаемый вызов инструмента на соответствие типизированным убеждениям репозитория; возвращает ALLOW или HALT с подписанной квитанцией

list_beliefs

Что шлюз в настоящее время применяет, и какие убеждения могут привести к HALT

verify_receipt

Повторно проверяет квитанцию: подпись, пересчитанный вердикт и является ли подписант оператором этого репозитория

Распознавание — это конечный словарь, построенный по принципу best-effort. Шлюз сопоставляет вызов инструмента с убеждениями, читая формы, которые агент реально выдаёт, — импорты, установки через менеджер пакетов, цели развёртывания, присвоения переменных окружения. Действие, выраженное в форме, которую он не распознаёт, не сопоставляется, а несопоставленное действие ни с чем не конфликтует, поэтому оно получает ALLOW. Относитесь к HALT как к принудительной проверке политики для распознанных действий, а не как к сдерживанию.

Отслеживание рассуждений (12) — требуется скомпилированный движок sagrada

Инструмент

Назначение

track_decision

Отслеживает одно проектное решение (автоматически классифицирует как assert / refine / revise)

track_from_text

Извлекает и отслеживает решения из свободного текста

ingest_text

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

query_decision

Находит отслеживаемое решение по термину

search_decisions

Ищет решения по термину или определению

get_decision_history

История эволюции решения (или всех)

get_reasoning_status

Полная сводка состояния рассуждений

check_coherence

Сообщает о противоречиях и оценке связности

check_consistency

Проверка в режиме только для чтения: не противоречит ли новый текст существующим знаниям (требуется дополнительный набор ML для NLI)

verify_chain

Проверяет криптографическую целостность цепочки рассуждений

retract_decision

Отзывает ранее отслеживаемое решение

what_changed

Текстовая сводка изменений состояния трекера начиная с индекса записи (не diff: каждая группа обрезается до 5 имён)

Записи репозитория / crux (6) — работают где угодно при наличии артефакта .crux

Детерминированные чтения преобразованной записи истории репозитория — без модели, без сети, без часов. Каждый ответ содержит ссылку на запись (artifact, state_root, receipt) для офлайн-проверки.

Инструмент

Назначение

repo_asof

Какое значение имел отслеживаемый ключ репозитория на указанную дату (с доказательствами периода действия)

what_replaced

Какое значение заменило предыдущее значение ключа и когда (отмечает отзывы и возвращения)

stale_rule_check

Перечисляет устаревшие значения отслеживаемого файла и значения, которые «умерли и вернулись», с доказательствами

crux_status

Читаемая запись: artifact, source HEAD, counts, state_root, receipt

key_history

Каждое записанное значение одного отслеживаемого ключа, от старых к новым, со ссылкой на запись

key_status

Активен ли отслеживаемый ключ, устарел ли он или «умер и вернулся»

Публичного сборщика артефактов .crux пока нет. Читатель находится здесь и опирается только на стандартную библиотеку, так что эти шесть инструментов полностью работают с уже имеющимся у вас артефактом, — но инструмент, который создаёт такой артефакт, не находится в этом репозитории и не опубликован. Если у вас нет артефакта, каждый crux-инструмент возвращает указатель, а не ошибку; и пока не появится сборщик, этот указатель — честный конец пути для публичного пользователя.

Предоставляемые ресурсы (3)

Resource URI

Содержимое

sagrada://state/summary

Краткая сводка состояния для контекста LLM

sagrada://state/decisions

Все отслеживаемые решения

sagrada://state/contradictions

Обнаруженные на данный момент противоречия

Переменные окружения

Переменная

Назначение

SAGRADA_PROJECT

Путь к каталогу проекта Sagrada (автоинициализация при отсутствии)

SAGRADA_NO_ML

Установите true, чтобы отключить набор ML-классификации (вместо этого используется детерминированный минимум Жаккара)

SAGRADA_BACKEND

Бэкенд хранения: json_file (по умолчанию) или sqlite

SAGRADA_CRUX

Путь к артефакту .crux, который читают инструменты записей репозитория (запасной вариант — results/*.crux внутри SAGRADA_PROJECT)

Лицензия

Apache-2.0. Опубликовано Cruxia-Labs.

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
    B
    quality
    A
    maintenance
    An MCP server that enforces fail-closed deterministic checks, independent refute-first review, and tamper-evident hash-chained receipts for AI agent outputs before claiming completion.
    4
    3
    MIT
  • F
    license
    A
    quality
    C
    maintenance
    MCP server that auto-emits tamper-evident receipts for every tool call, enabling EU AI Act Article 12 compliance with signed, chain-linked receipts.
    1
  • A
    license
    Not graded
    quality
    C
    maintenance
    MCP server that provides human-in-the-loop approval for risky AI agent actions, with durable state and audit logs.
    MIT

View all related MCP servers

Related MCP Connectors

  • AI Reasoning Cache & Consensus Layer with 11 MCP tools via Streamable HTTP.

  • MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.

  • Control plane for autonomous software labor. Agents claim objectives over MCP with audit trail.

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/Cruxia-Labs/sagrada-mcp'

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