SikkerKey
официальныйMCP-сервер, позволяющий вашему ИИ-агенту управлять хранилищем секретов SikkerKey.
Что можно делать с SikkerKey MCP?
- Проверка личности и прав агента — Попросите ассистента вызвать
whoami, чтобы подтвердить активного ИИ-агента, предоставленные области доступа, доступ к проекту и недавнюю аудит-активность. - Управление жизненным циклом секретов — Используйте
manage_secretsдля создания, ротации или планирования управляемых секретов, аmanage_temporary_secrets— для одноразовых самоуничтожающихся ссылок. - Администрирование доступа и политик — Используйте
manage_policiesдля создания политик доступа с привязкой секретов, аmanage_canaries— для установки или отключения секретов-приманок. - Контроль машинных идентификаторов — Используйте
manage_machinesдля одобрения, отклонения, переименования или отзыва машин, аmanage_project_machines— для их привязки с правами на отдельные секреты. - Мониторинг и аудит активности — Запрашивайте журнал аудита через
read_audit, настраивайте триггеры оповещений с помощьюmanage_alertsи управляйте доставкой подписанных вебхуков черезmanage_webhooks. - Обработка восстановления и очистки — Восстанавливайте или полностью удаляйте мягко удалённые секреты с помощью
manage_trash, а также управляйте IP-allowlist хранилища черезmanage_ipallowlist.
Документация
MCP-сервер
Подключите MCP-совместимых ИИ-клиентов к SikkerKey через выделенную, ограниченную по правам, аудируемую и «слепую» к открытому тексту идентичность ИИ-агента.
MCP-сервер SikkerKey подключает MCP-совместимых ИИ-клиентов к плоскости управления SikkerKey. Он позволяет ИИ-ассистенту помогать администрировать проекты, метаданные секретов, политики, машины, оповещения, аудит-активность и другие операции с хранилищем через выделенную идентичность ИИ-агента.
MCP-сервер «слеп» к чтению хранимых значений секретов. Он может создавать или заменять значения, которые вы намеренно предоставляете, но ни один инструмент не может получить открытый текст существующего хранимого секрета.
Как это работает
MCP-сервер запускается локально как дочерний процесс вашего ИИ-клиента и взаимодействует с ним через стандартный ввод и вывод. Когда ИИ вызывает инструмент SikkerKey, сервер подписывает соответствующий API-запрос SikkerKey выбранной идентичностью ИИ-агента.
- Локальная идентичность. Закрытый ключ Ed25519 ИИ-агента генерируется и хранится на вашем компьютере. Только открытый ключ регистрируется в SikkerKey.
- Подписанные запросы. Каждый запрос охватывает HTTP-метод, путь, временную метку, одноразовый nonce и хэш тела запроса. Изменённый или воспроизведённый запрос не проходит проверку.
- Ограниченная авторизация. Области управления контролируют операции на уровне хранилища. Роль доступа определяет приложения, проекты, типы секретов, операции с машинами и возможности политик, к которым агент может получить доступ.
- Привязка к живому создателю. Эффективный доступ агента никогда не может превышать текущий доступ человека, который его создал. Если доступ этого человека сокращён или удалён, права агента уменьшаются при следующем запросе.
- Полная атрибуция. Каждое успешное изменение записывается в журнал аудита под идентичностью ИИ-агента.
Требования
- Хранилище SikkerKey
- Разрешение на предоставление ИИ-агента в хранилище
- MCP-совместимый ИИ-клиент
- Поддерживаемая платформа для настольного ПК или сервера
Пакетный сервер поддерживает Linux на x64 и arm64, macOS на x64 и Apple silicon, а также Windows на x64. Он работает с любым MCP-клиентом, который может запустить сервер через stdio.
Клиенты с сгенерированной конфигурацией
- Claude Code
- Claude Desktop
- Cursor
- Codex
Установка сервера
Установите команду глобально с помощью npm:
npm install -g sikkerkey-mcp
Вы также можете запустить команду без глобальной установки:
npx sikkerkey-mcp <subcommand>
Настройка ИИ-агента
В панели управления SikkerKey откройте «Машины» → «ИИ-агенты» и выберите «Bootstrap AI agent».
Выберите области управления и роль доступа, которые должен получить агент, затем скопируйте одноразовый bootstrap-токен.
Зарегистрируйте идентичность на компьютере, который будет запускать MCP-сервер.
Одобрите ожидающего ИИ-агента в панели управления.
Сгенерируйте конфигурацию для вашего ИИ-клиента, вставьте её в указанный файл конфигурации и перезапустите клиент.
Попросите подключённого клиента вызвать whoami и подтвердите отображаемое хранилище, области, доступ к проектам и статус агента.
Регистрация идентичности
sikkerkey-mcp install <bootstrap-token>
Добавьте необязательное локальное отображаемое имя при регистрации:
sikkerkey-mcp install <bootstrap-token> -name="Operations assistant"
Регистрация генерирует пару ключей Ed25519 локально и сохраняет идентичность в:
~/.sikkerkey/agents/<agent-id>/
Каталог агента, файл идентичности и закрытый ключ создаются с ограниченными правами. Агент остаётся в статусе ожидания, пока вы не одобрите его из панели управления.
Генерация конфигурации клиента
sikkerkey-mcp config claude-code
sikkerkey-mcp config claude-desktop
sikkerkey-mcp config cursor
sikkerkey-mcp config codex
Каждая команда выводит готовый к вставке блок конфигурации и расположение, используемое этим клиентом. Сгенерированная конфигурация запускает sikkerkey-mcp serve и выбирает агента с помощью SIKKERKEY_AGENT_ID.
Используйте отдельную идентичность ИИ-агента для каждого клиента, среды автоматизации или границы доверия. Это упрощает проверку прав и атрибуцию в журнале аудита.
Проверка подключения
После перезапуска ИИ-клиента попросите его использовать whoami. Этот вызов всегда доступен и сообщает:
- ID и имя ИИ-агента
- Статус одобрения и включения
- Предоставленные области управления
- Роль доступа и доступные приложения и проекты
- Возможности по каждому проекту
- 20 последних записей аудита, приписанных агенту
Используйте whoami в начале чувствительной сессии или после изменения роли создателя, областей агента или его роли доступа.
Что могут управлять инструменты
Вы можете описать желаемый результат обычным языком. ИИ-клиент выбирает подходящий инструмент и действие, а SikkerKey независимо проверяет текущую авторизацию агента для каждого запроса.
| Инструмент | Назначение |
|---|---|
whoami | Подтвердить активного агента, права, доступ к проектам, статус и недавнюю приписанную активность. |
manage_projects | Просматривать приложения и проекты, доступные агенту. |
manage_secrets | Управлять метаданными секретов, значениями, версиями, ротацией и запланированными управляемыми секретами в разрешённых проектах. |
manage_temporary_secrets | Создавать и просматривать одноразовые, самоуничтожающиеся доли секретов. |
manage_policies | Создавать и управлять политиками доступа и их привязками к секретам. |
manage_canaries | Размещать, настраивать, активировать или деактивировать секреты-канарейки и восстанавливать замороженные проекты. |
manage_machines | Перечислять, просматривать, одобрять, отклонять, переименовывать или отзывать идентичности машин. |
manage_project_machines | Привязывать машины к проектам и управлять их явными правами на отдельные секреты. |
manage_enrollment | Выдавать, просматривать и отзывать токены регистрации для эфемерных машин. |
manage_ai_agents | Просматривать и управлять жизненным циклом ИИ-агентов, именами и одобрениями. |
manage_alerts | Выбирать, какие действия аудита вызывают оповещения. |
manage_webhooks | Создавать и управлять подписанными вебхуками доставки оповещений. |
manage_ipallowlist | Управлять IP-списком разрешений хранилища, используемым при аутентификации и регистрации машин. |
manage_trash | Перечислять, восстанавливать или окончательно удалять мягко удалённые секреты. |
read_audit | Запрашивать активность, экспортировать доказательства аудита и просматривать статистику использования. |
support | Открывать, читать, отвечать на тикеты поддержки и оценивать их. |
manage_sdks | Искать руководства по установке и быстрому старту для официальных SDK времени выполнения. |
Инструменты, отображаемые ИИ-клиенту, стабильны, но отдельное действие выполняется только тогда, когда выбранный агент имеет требуемую область и возможность проекта на момент вызова.
Области управления и доступ к проектам
ИИ-агент получает два дополняющих друг друга набора прав.
Области управления
Области управления контролируют области на уровне хранилища, такие как машины, ИИ-агенты, регистрация, аудит, оповещения, вебхуки, IP-список разрешений, корзина и поддержка. Права на чтение и запись могут предоставляться отдельно там, где функция это поддерживает.
Роль доступа
Роль доступа контролирует плоскость проектов. Она определяет, какие приложения и автономные проекты видны агенту и что он может делать в каждом проекте, включая разрешённые типы секретов, привязку машин и права, политики и канарейки.
SikkerKey пересекает оба набора прав с текущим доступом создающего пользователя при каждом запросе. Агент не может использовать инструменты MCP для замены своих собственных областей управления или роли доступа.
Начните с наименьшего набора областей и возможностей проектов, который покрывает предполагаемый рабочий процесс. Добавляйте доступ позже из панели управления, когда агенту это действительно понадобится.
Как обрабатываются хранимые значения секретов
Поверхность MCP разделяет администрирование секретов и получение секретов во время выполнения.
- Чтение метаданных. Перечисление секрета, открытие его деталей или просмотр истории версий возвращает идентификаторы, имена, типы, имена полей, заметки, версии и временные метки — но не хранимые значения.
- Создание и обновление. Когда вы намеренно предоставляете значение для создания или замены, оно проходит через ИИ-клиент в подписанный запрос на запись и шифруется SikkerKey. Ответ возвращает метаданные и не повторяет значение.
- Ротация, генерируемая сервером. Ротация и создание управляемых секретов могут генерировать новое значение внутри SikkerKey. ИИ получает новую версию и метаданные расписания, но не сгенерированный открытый текст.
- Получение во время выполнения. Приложения читают секреты через официальный SDK или CLI, используя отдельную идентичность машины. Идентичность ИИ-агента не может аутентифицироваться как машина.
Помещайте открытое значение в разговор с ИИ только тогда, когда вы намеренно хотите, чтобы этот ИИ-клиент отправил его в запись секрета. После хранения MCP не может прочитать значение обратно.
Одноразовые учётные данные
Некоторые действия управления возвращают вновь сгенерированные учётные данные один раз, чтобы вы могли завершить их настройку. К ним относятся токены регистрации, новый секрет подписи вебхука, а также токен и пароль для временной доли секрета. Сохраняйте или доставляйте их при создании; последующие действия по перечислению и просмотру деталей не раскрывают их.
Временная доля секрета предназначена для человека-получателя. Открытие её ссылки расходует одноразовое раскрытие, поэтому ИИ должен доставлять детали доли, а не открывать ссылку.
Аудит, одобрение и отзыв
SikkerKey записывает каждое действие управления с ID и именем ИИ-агента. Вы можете просматривать активность из журнала аудита панели управления или через read_audit. Правила оповещений и вебхуки могут уведомлять вас о выбранных действиях агента.
Ваш ИИ-клиент контролирует собственные запросы подтверждения перед отправкой вызова инструмента. Настройте этот клиент на требование подтверждения для изменений, заслуживающих человеческого контроля, особенно окончательного удаления, изменений доступа, отзыва машин, изменений политик, изменений IP-списка разрешений и внешне доставляемых сообщений.
Отключение или отзыв агента
- Отключение. Немедленно отклоняет подписанные запросы агента, сохраняя его области и роль доступа для последующего повторного включения.
- Отзыв. Удаляет серверную идентичность ИИ-агента и делает локальную пару ключей непригодной для будущих запросов.
Оба действия вступают в силу при следующем запросе. Управляйте серверным жизненным циклом из панели управления. После отзыва удалите локальный слот идентичности:
sikkerkey-mcp revoke <agent-id>
Локальная команда отзыва удаляет файлы с этого компьютера. Она не отзывает ИИ-агента в панели управления SikkerKey.
Использование нескольких ИИ-агентов
Компьютер может хранить несколько идентичностей ИИ-агентов. Перечислите зарегистрированные локальные идентичности с помощью:
sikkerkey-mcp whoami
Сгенерированная конфигурация клиента создаёт отдельную запись сервера для каждой идентичности. Если вы настраиваете сервер вручную, установите SIKKERKEY_AGENT_ID на точного агента, которого должен использовать этот клиент:
{
"mcpServers": {
"sikkerkey": {
"command": "sikkerkey-mcp",
"args": ["serve"],
"env": {
"SIKKERKEY_AGENT_ID": "agent_..."
}
}
}
}
Когда установлена ровно одна идентичность, сервер выбирает её автоматически. Когда существует несколько и ID агента не настроен, запуск останавливается и просит вас выбрать, а не выбирает неявно.
Переменные окружения
| Переменная | Назначение |
|---|---|
SIKKERKEY_AGENT_ID | Выбрать локальную идентичность ИИ-агента, используемую MCP-сервером. |
SIKKERKEY_HOME | Изменить локальный корень идентичности SikkerKey с значения по умолчанию ~/.sikkerkey. |
Справочник команд
| Команда | Назначение |
|---|---|
sikkerkey-mcp install <token> | Зарегистрировать новую локальную идентичность ИИ-агента из одноразового токена панели управления. |
sikkerkey-mcp whoami | Перечислить локально зарегистрированные идентичности ИИ-агентов. |
sikkerkey-mcp config <client> | Вывести конфигурацию для Claude Code, Claude Desktop, Cursor или Codex. |
sikkerkey-mcp serve | Запустить MCP-сервер через stdio. |
sikkerkey-mcp revoke [agent-id] | Удалить локальный слот идентичности ИИ-агента. |
sikkerkey-mcp | Запустить MCP-сервер; эквивалентно serve. |
Исходный код и лицензия
MCP-сервер SikkerKey полностью открыт под лицензией MIT. Изучите аутентификацию, хранение идентичности, обработку протокола, схемы инструментов и поведение запросов через организацию SikkerKeyOfficial на GitHub.