hs-sql-agent
hs-sql-agent
Высокопроизводительный MCP-сервер для безопасного доступа к SQL и корпоративного управления.
hs-sql-agent подключает MCP-клиенты к SQLite, PostgreSQL, MySQL, SQL Server, Oracle и Firebird через HTTP MCP-эндпоинт и встроенную админ-панель.
Зачем нужен hs-sql-agent?
Вместо выполнения неограниченного SQL, сгенерированного LLM, сервер разбирает поддерживаемый SQL в структурированные определения, проверяет их и пересобирает итоговый запрос через компилятор SQL, специфичный для конкретного провайдера.
Шесть провайдеров баз данных — SQLite, PostgreSQL, MySQL, SQL Server, Oracle и Firebird.
Управляемый доступ — Привязка ключей к базам данных, белые списки таблиц, CORS, ограничения частоты запросов и политики выполнения.
Безопасные DML — Транзакционный пробный запуск с последующей MCP-элиситацией для явного одобрения человеком.
Админ-панель — Управление базами данных, ключами, ролями, пользовательскими инструментами, журналами аудита и политиками выполнения.
Готовность к корпоративному использованию — OIDC SSO, TOTP MFA, хранение аудита, метрики Prometheus, OTLP и доставка через webhook/SIEM.
Семантические метаданные — Синонимы таблиц и столбцов, связи и ограниченные метаданные метрик для обнаружения схемы.
Поддержка SQL намеренно ограничена: неподдерживаемый синтаксис отклоняется, а не молча меняет свой смысл. См. Справочник по MCP-инструментам для описания поддерживаемого контракта SQL.
Related MCP server: safedb-mcp
Быстрый старт
cp .env.example .env
# Set HMAC_KEY and JWT_KEY to unique secrets of at least 32 bytes.
docker compose up -dОткройте админ-панель по адресу http://localhost:8080. Варианты конфигурации и рекомендации по развертыванию в продакшене описаны в Wiki.
Использование с MCP-клиентом
Создайте MCP-ключ в админ-панели. Диалог создания ключа отображает секрет в открытом виде один раз и генерирует конфигурацию для Claude Desktop, Cursor и универсальных Streamable HTTP-клиентов.
Установите MCP_PUBLIC_ENDPOINT на внешне доступный MCP-URL, включая /mcp. Требования к совместимости клиентов, онбордингу и элицитации DML см. в онбординге MCP-клиентов.
NuGet для существующих .NET API
Встраивайте MCP SQL Agent и опциональный админ-интерфейс в приложение ASP.NET Core:
dotnet add package HsSqlAgent.Serverbuilder.Services.AddHsSqlAgent(options => { ... });
app.UseHsSqlAgent(); // API only
// app.UseHsSqlAgent().ServeAdminUi(); // API and Admin UIСм. руководство по пакету NuGet для деталей конфигурации и развертывания.
Как работает выполнение SQL
Аутентификация MCP-ключа и применение его области действия (база данных, таблицы, политики).
Разбор поддерживаемого SQL в структурированное определение.
Проверка определения и компиляция для настроенного провайдера базы данных.
Выполнение запросов в пределах настроенных лимитов.
Для DML — dry-run в транзакции и требование одобрения человеком через MCP Elicitation перед коммитом.
Пользовательские SQL-инструменты проходят через тот же парсер, проверку, политику доступа и лимиты выполнения, что и встроенные инструменты. Правила жизненного цикла, параметров и публикации описаны в руководстве по админ-панели.
Документация
Тема | Документация |
Начало работы | |
Конфигурация | |
Админ-панель | |
MCP-инструменты и поддержка SQL | |
Безопасность, OIDC и MFA | |
Развертывание и наблюдаемость | |
API | |
Устранение неполадок | |
Разработка |
Поток выполнения SQL
Запрос на одобрение DML
Так выглядит шаг одобрения с участием человека во время execute_dml_sql:
Участие в разработке
См. CONTRIBUTING.md и руководство по разработке.
Лицензия
This server cannot be deployed
Maintenance
Related MCP Connectors
Hosted SQL Server MCP server for Claude, ChatGPT and Cursor, with each action switched per account.
Text-to-SQL MCP server: read-only queries on PostgreSQL, MySQL and SQL Server with your real schema
Deterministic safety, correctness & cost gate that vets Postgres SQL before your AI agent runs it.
Analytical memory for AI agents: a real Postgres queried in plain English over MCP. One command.
Related MCP Servers
- AlicenseNot gradedqualityFmaintenanceA Model Context Protocol (MCP) server that enables AI agents to interact with Microsoft SQL Server databases through secure, intelligent database operations. This server provides comprehensive CRUD capabilities, schema introspection, stored procedure execution, transaction management, and bulk opera509 npm44MIT
- AlicenseAqualityBmaintenanceSecure MCP server for safe, read-only DB access by AI agents, with SQL guardrails, table allowlists, PII masking, and audit logs617 npm9MIT
- AlicenseAqualityCmaintenanceSecure and token-efficient MySQL MCP server built specifically for AI agents. Prevents hallucinations, optimizes context windows and blocks dangerous queries.515 npmMIT
- FlicenseAqualityDmaintenanceAutomatically scans SQLite databases and generates typed CRUD tools for each table, allowing natural language database interaction without exposing raw SQL.12-