Sallyport MCP
Mac-хранилище ключей для агентов: Sallyport выполняет HTTP и SSH с вашими ключами по MCP, а сам ключ агент не получает
- 175 ★ репозитория
- Последний коммит
- Apache-2.0
Широкий доступ
Почему такой уровень
- Выполняет от вашего имени HTTP-запросы и команды по SSH с реальными ключами, то есть агент получает доступ к рабочим системам
- Результат запроса возвращается агенту как есть, и секрет, который целевой сервис вернет в ответе, защита хранилища не закроет
- Хранилище нельзя восстановить или выгрузить: потеря доступа к нему означает потерю сохраненных секретов
Установка
- Работает в
Ручная установка
brew install --cask olegsotnikov/tap/sallyportЗапустите приложение, создайте хранилище и добавьте ключ. Подписанный DMG есть на sallyport.dev. Нужны Apple Silicon и macOS 14 или новее.
Доступ и проверки
Как мы проверяемШирокий доступИнструмент может менять данные, выполнять команды или работать с секретами.
- Выполняет от вашего имени HTTP-запросы и команды по SSH с реальными ключами, то есть агент получает доступ к рабочим системам
- Результат запроса возвращается агенту как есть, и секрет, который целевой сервис вернет в ответе, защита хранилища не закроет
- Хранилище нельзя восстановить или выгрузить: потеря доступа к нему означает потерю сохраненных секретов
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
Sallyport — бесплатное приложение для macOS с зашифрованным локальным хранилищем API-ключей и SSH-ключей. Агент просит выполнить операцию по MCP, приложение выполняет ее само, записывает в подписанный журнал и возвращает только ответ. Ключ не попадает в окружение агента. Команды показать сохраненный секрет или выгрузить хранилище нет вовсе. Сервер запускается командой sp mcp из пакета приложения. Он отдает агенту инструменты http.request, ssh.exec и sallyport.request_credential, а также инструменты подключенных внешних MCP-серверов. Перед выполнением действие проходит лестницу проверок: хранилище должно быть готово, помеченный ключ или сервер требует подтверждения каждого вызова, новый процесс требует подтверждения сеанса, затем идут аудит и выполнение. Подтверждение делается нажатием или через Touch ID. Отдельный подписывающий модуль на Secure Enclave ставит подписи на строки журнала и контрольные якоря. Идея в том, что вредоносный пакет или внедрение промпта не украдут токен из .env или переменных окружения, потому что токена там нет. Граница защиты описана в docs/14-trust-model.md и docs/08-security-model.md, включая то, что Sallyport не останавливает.
Для кого. Разработчикам на Mac, которые дают Claude Code доступ к рабочим API и серверам по SSH и не хотят оставлять ключи в .env, переменных окружения и конфигах.
Подходит, если
- Агент вызывает рабочий API, и токен не должен лежать ни в .env, ни в переменных окружения
- Нужно выполнять команды на сервере по SSH, а приватный ключ держать вне досягаемости агента
- Каждое обращение к боевой системе требует вашего подтверждения нажатием или Touch ID
- Требуется подписанный журнал действий агента с реальными ключами для разбора инцидентов
- В проект подтягивается много пакетов, и вы хотите, чтобы кража .env ничего не дала
Не подходит, если
- Рабочая машина на Windows или Linux, либо Mac на Intel: нужны Apple Silicon и macOS 14 или новее
- Целевой сервис возвращает токен в ответе: результаты отдаются как есть, и такой секрет защита хранилища не прикроет
- Нужен командный менеджер секретов с общим доступом: хранилище локальное, привязанное к одному Mac
- Ключ придется потом достать или перенести: восстановления и экспорта в Sallyport нет
Пример запроса к агенту
Через Sallyport вызови GET на https://api.example.com/v1/status с сохраненным ключом и покажи только код ответа и телоMCP
- Транспорт
- stdio
- Авторизация
- не нужна
Ограничения
- Нужны Apple Silicon и macOS 14 или новее. Приложение подписано и нотаризовано, ставится из DMG или через Homebrew.
- Ответы целевых систем возвращаются как есть. Если сервис эхом отдает секрет, гарантия изоляции ключа на этот случай не распространяется.
- В репозитории лежит снимок исходников каждого релиза, а запросы на изменения не принимаются. Исходники собираются и тестируются, но воспроизвести подпись Apple без закрытых материалов нельзя.
- В поставляемом sp только команды mcp и version. Последний коммит в репозитории датирован июлем 2026.
Как отключить. Снимите запись командой claude mcp remove sallyport. Приложение удаляется командой brew uninstall --cask sallyport или переносом из папки Программы в корзину. Хранилище без ключей восстановить нельзя, экспорта нет.
Частые вопросы
Что такое Sallyport и как он защищает ключи?
Это бесплатное приложение для macOS с зашифрованным хранилищем. Агент просит выполнить действие по MCP, а Sallyport выполняет его с ключом и возвращает только ответ. Команды показать или выгрузить секрет нет, поэтому ключ не попадает в окружение агента.
Как подключить Sallyport к Claude Code?
Установите приложение, создайте хранилище, добавьте ключ и выполните claude mcp add sallyport -- /Applications/Sallyport.app/Contents/MacOS/sp mcp. От установки до первого вызова проходит около двух минут.
Какие инструменты Sallyport отдает агенту?
Три собственных: http.request, ssh.exec и sallyport.request_credential. Кроме них агенту доступны инструменты внешних MCP-серверов, которые вы подключили к Sallyport.
Как подтверждаются действия агента?
Помеченный ключ или сервер требует подтверждения каждого вызова, новый процесс требует подтверждения сеанса. Подтверждение делается нажатием в окне или через Touch ID.
На каких компьютерах работает Sallyport?
Только на Mac с Apple Silicon под macOS 14 или новее. Версий для Windows, Linux и Intel Mac в README нет.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
MCP-серверыШлюз для MCP-серверов: плагины маскировки известных секретов в текстовых ответах, проверки репутации и записи вызовов
CLI и MCP-мост поверх KeePass-совместимого хранилища: агент получает один секрет только после вашего ответа, а запросы идут в журнал
Локальный менеджер паролей с MCP-сервером: агент входит на сайты, по SSH и в API, а скрытые секреты не попадают в контекст модели
Сканер безопасности для MCP-серверов: ищет зашитые ключи, отравление инструментов и инъекции в коде репозитория.
MCP-Shield находит конфигурации MCP, подключается к серверам и ищет в описаниях инструментов скрытые команды, каналы утечки и подмену чужих инструментов
Официальный MCP-сервер Socket оценивает безопасность зависимостей npm, PyPI, cargo и других экосистем прямо из диалога с агентом.
Сравнение с похожими
Карточки с тем же главным запросом: чем они отличаются.
| Инструмент | Официальный | Авторизация | Звезды репозитория | Главное отличие |
|---|---|---|---|---|
| Sallyport (эта карточка) | да | не нужна | 175 | |
| Vault MCP Server | да | API-ключ | 66 | официальный сервер HashiCorp Vault отдает агенту доступ к секретам Vault, а Sallyport секрет не выдает и сам выполняет действие |
| SandVault | нет | 450 | запускает агента в отдельной учетной записи macOS, а Sallyport прячет ключи и подписывает журнал вызовов |
Коротко о README
README объясняет идею хранилища, в котором агент получает операцию, но не ключ, и ссылается на описание модели доверия. Дальше идут установка через DMG или Homebrew, подключение MCP, лестница авторизации, сборка из исходников, таблица документов и условия лицензии с торговой маркой.