Интеграция · Доступно
Прокси безопасности MCP
Он стоит между агентом и его MCP-серверами и проверяет, что говорят инструменты, что агент им отправляет и что они возвращают.
Статус: доступно. Эта интеграция создана и протестирована. HisnLabs передаёт Guardrino компаниям-участникам пилота; некоторые настройки могут измениться до общего выпуска.
Developer reference · Install guide · AI platforms · Open model card · Прокси, совместимый с OpenAI · Потоковая передача · LiteLLM · Руководство: приложение, совместимое с OpenAI · Руководство: LiteLLM · Руководство: инструменты MCP
Try it today Guardrino-t7 Open, an earlier version of our classifier, is public on Hugging Face under Apache-2.0. The demo runs in your browser: what you type stays on your device. Live demo · Model card · Same demo on Hugging Face
Что проверяется
| Момент | Проверка |
|---|---|
| Выводится список инструментов | Описания инструментов проверяются, так как агент читает их как инструкции. |
| Уходит вызов | Аргументы проверяются: токен-канарейка, персональные данные и URL. |
| Возвращается результат | Результат проверяется как контекст, окнами, чтобы длинные ответы читались целиком. |
Результат оценивается как любой документ, который модель читает как данные. Ту же проверку можно выполнить вручную через API inspect, указав direction равным context.
POST /v1/inspect HTTP/1.1
Content-Type: application/json
{
"text": "<tool result text>",
"direction": "context",
"app": "support-agent",
"conversation_id": "conversation-7f3a"
}Транспорты
Прокси работает с транспортом streamable HTTP протокола MCP (по маршруту на сервер, /mcp/{name}) и, для локальных серверов, со stdio.
Настройка
Перечислите MCP-серверы, перед которыми стоит прокси. Пока servers не задан, он выключен; у каждого сервера свой маршрут.
[mcp]
on_tool_poisoning = "drop" # "drop": remove a flagged tool from the list | "refuse": refuse the whole list
timeout_secs = 120
servers = [
{ name = "files", url = "https://mcp.example/mcp", headers = { Authorization = "Bearer UPSTREAM_TOKEN" } },
]Направьте агента на прокси вместо MCP-сервера.
{
"mcpServers": {
"files": { "url": "https://guardrino.example/mcp/files" }
}
}Для локального stdio-сервера запустите guardrino-mcp-stdio --server-cmd "<command>" вместо сервера в конфигурации агента. Он выполняет команду и одинаково проверяет каждое сообщение в обоих направлениях; запись в servers не нужна.
{
"mcpServers": {
"files": { "command": "guardrino-mcp-stdio", "args": ["--server-cmd", "npx some-mcp-server"] }
}
}Отклонённый вызов получает ошибку JSON-RPC (код -32000, data.code content_blocked). Помеченный инструмент убирается из списка либо отклоняется весь список, как задаёт on_tool_poisoning. Пока не охвачено: запросы и уведомления, которые инициирует сервер (например, sampling), не проверяются, а пакеты JSON-RPC отклоняются.