sql-guard-mcp
sql-guard-mcp
SQL только для чтения для ИИ-агентов, с многоуровневыми защитными механизмами.
Предоставление LLM-агенту прямого доступа к базе данных — это выстрел себе в ногу. Этот MCP-сервер открывает базу данных SQLite для агентов через четыре независимых уровня защиты, так что худшее, что может сделать агент, — это читать слишком медленно, и даже это будет прервано.
한국어 문서: README.ko.md
Слои защиты
Слой | Что предотвращает | Как |
Проверка запросов | Запись, изменение схемы, инъекции через составные запросы | Только одиночные выражения |
Белый список таблиц | Чтение чувствительных таблиц (PII, учётные данные) | Идентификаторы |
Ограничение строк | Затопление контекстного окна | Каждый запрос оборачивается в подзапрос с серверным |
Ограничение выполнения | Вышедшие из-под контроля запросы (декартовы соединения) | Сторожевой таймер прогресса SQLite прерывает выполнение после N шагов виртуальной машины с сообщением о дальнейших действиях |
Режим только для чтения на уровне ОС | Отказ всех предыдущих мер | Подключение открывается с |
Принцип дизайна взят из практики создания защитных механизмов принятия решений для продакшн-LLM-агента: не доверяйте модели быть осторожной — сделайте неосторожность невозможной, и пусть каждое сообщение об отказе подсказывает агенту, что делать вместо этого.
Related MCP server: sqlite-analyst
Инструменты
sql_list_tables— видимые таблицы (применён белый список)sql_describe_table— столбцы, типы, количество строкsql_query— защищённый запрос только для чтенияsql_guard_status— текущая конфигурация защит (прозрачность для отладки)
Демонстрация
Подключено к Claude Desktop, запрос к встроенной демо-БД рекламной кампании — и отказ на запрос удаления:

Агент свободно исследует и агрегирует («У какой активной кампании лучший CTR?»), но когда его просят очистить таблицу campaigns, защита отклоняет запрос, и агент объясняет почему — режим только для чтения по замыслу, обеспечен кодом, а не промптом.
Установка
Никаких зависимостей, кроме MCP SDK, — синтетическая демо-БД рекламных кампаний включена в комплект и автоматически создаётся при первом запуске.
pip install -e .
# optional configuration
export SQLGUARD_DB="/path/to/your.db" # default: bundled demo
export SQLGUARD_ALLOWED_TABLES="campaigns,daily_stats" # default: all tables
export SQLGUARD_MAX_ROWS="200"Claude Desktop
{
"mcpServers": {
"sql-guard-mcp": {
"command": "sql-guard-mcp",
"env": { "SQLGUARD_ALLOWED_TABLES": "campaigns,daily_stats" }
}
}
}Затем спросите: «У какой активной кампании был лучший CTR на прошлой неделе?» — агент исследует схему и выполняет запросы в рамках ограничений. Попробуйте попросить его что-нибудь удалить; прочитайте отказ.
Тесты
pip install -e ".[dev]"
pytest # guard validation + execution enforcement, no external DB neededТесты включают состязательные случаи: составные запросы, записи с префиксом SELECT, обход белого списка через JOIN, попытки переопределения через указанный пользователем LIMIT и вышедшее из-под контроля декартово соединение, прерванное сторожевым таймером шагов виртуальной машины.
Лицензия
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
Safe, read-only Postgres and MySQL access for AI agents. Audit log + column-level controls.
Explore, query, and inspect SQLite databases with ease. List tables, preview results, and view det…
Query 40 databases from Claude, ChatGPT, or Cursor — on any device. Read-only, encrypted, audited.
- dataOAuthco.thinair
PostgreSQL, MySQL, and SQL Server in one session. 26 read-only MCP tools for AI agents.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables safe, read-only SQL access to SQLite databases for AI agents, allowing schema exploration and SELECT queries with defense-in-depth protections.3MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to explore and query SQLite databases through read-only tools, with defense-in-depth sandboxing preventing any data modifications.MIT
- FlicenseAqualityCmaintenanceEnables AI agents to safely explore and query a SQLite database in read-only mode, allowing them to inspect schema and run analytical SQL queries without risking data modification.3-
- FlicenseAqualityCmaintenanceEnables AI agents to safely inspect and query a SQLite database through read-only MCP tools for listing tables, describing schemas, and running paginated SELECT queries.3-