mcp-database-universal
MCP Database Server
Интерфейс рассуждений для баз данных для ИИ-агентов, поддерживающих MCP — не тонкая обёртка над SQL.
mcp-database-universal предоставляет ИИ-агентам набор из 7 инструментов рассуждений для безопасного исследования и запросов к базе данных, понимания её схемы и структуры данных, выполнения вопросов на естественном языке и визуализации связей — всё без раскрытия внутренних деталей подключения.
Возможности
7 инструментов рассуждений, предназначенных для ИИ-агентов: проверка подключения, список таблиц, просмотр таблицы, выполнение параметризованных SQL-запросов, вопросы на естественном языке, профилирование данных и построение ER-диаграммы.
Мультидвижок: SQLite (встроенный) плюс опционально PostgreSQL, MySQL и MSSQL.
Безопасность прежде всего: только чтение по умолчанию, параметризованные запросы, проверка операторов, ограничения по строкам/времени/объёму вывода.
Вывод, удобный для LLM: типы переведены,
NULLобработаны, результаты отформатированы в Markdown-таблицах с контекстом.Интроспекция схемы: автоматическое обнаружение таблиц, столбцов, индексов, внешних ключей и связей.
Запросы на естественном языке: перевод вопросов на обычном языке в SQL и возврат результатов.
Related MCP server: Universal Database MCP Server
Поддерживаемые движки
Движок | Требование | Дополнительная установка |
SQLite | встроенный | — |
PostgreSQL | psycopg |
|
MySQL | PyMySQL |
|
MSSQL | pyodbc + ODBC-драйвер |
|
все | — |
|
Установка
pip install mcp-database-universal
# With optional engines:
pip install "mcp-database-universal[postgres]"
pip install "mcp-database-universal[mysql]"
pip install "mcp-database-universal[mssql]"
# or everything:
pip install "mcp-database-universal[all]"Быстрый старт
Запустите сервер через STDIO (транспорт по умолчанию для MCP-клиентов):
DATABASE_URL=sqlite:///app.db python -m mcp_database_universalURL-адреса подключения:
sqlite:///path/to/db.db SQLite (file)
sqlite:///:memory: SQLite (in-memory)
postgresql://user:pass@host:5432/db PostgreSQL
mysql://user:pass@host:3306/db MySQL
mssql://user:pass@host:1433/db MSSQL (uses ODBC Driver 18)Docker
docker build -t mcp-db .
# Mount a SQLite database read-only:
docker run --rm -i \
-v /host/path/app.db:/data/app.db:ro \
-e DATABASE_URL=sqlite:////data/app.db \
mcp-db
# Or in-memory:
docker run --rm -i -e DATABASE_URL=sqlite:///:memory: mcp-dbКонфигурация
Вся конфигурация выполняется через переменные окружения.
Переменная | По умолчанию | Описание |
| (обязательно) | URL-адрес подключения к базе данных. |
|
| Принудительный режим только для чтения (блокирует запись, даже если |
|
| Разрешить записывающие операторы, когда |
|
| Максимальное количество строк, возвращаемых за запрос. |
|
| Таймаут запроса в секундах. |
|
| Ограничение размера полезной нагрузки результата. |
|
| Количество примеров строк, показываемых в статистике таблиц/столбцов. |
|
| Top-N распределение значений в профилировании. |
| — | API-ключ для режима |
| — | API-ключ для режима |
Инструменты
Инструмент | Описание |
| Проверка подключения к БД; сообщает движок, версию, имя, размер, количество таблиц. |
| Обзор всех таблиц с количеством строк, столбцов, связями внешних ключей. |
| Полная структура одной таблицы: столбцы, типы, индексы, внешние ключи, примеры данных. |
| Выполнение безопасного параметризованного SQL-запроса и получение результатов в Markdown. |
| Вопрос на естественном языке; получение сгенерированного SQL и результатов. |
| Профиль данных: распределения, доля NULL, связи, размеры. |
| Mermaid ER-диаграмма связей таблиц. |
Пример: query с параметрами
{
"sql": "SELECT * FROM users WHERE id = :id AND active = :active",
"params": "{\"id\": 42, \"active\": true}"
}Параметры используют плейсхолдеры :name; передайте значения в виде JSON-строки в params.
Пример: natural_query
question: "How many users are there?"
-> SELECT COUNT(*) FROM users
question: "Show me all orders"
-> SELECT * FROM orders LIMIT 100Рабочий пример на небольшой демонстрационной базе данных находится в examples/ вместе с готовыми фрагментами конфигурации для распространённых MCP-клиентов.
Конфигурация MCP-клиента
Claude Desktop (claude_desktop_config.json)
{
"mcpServers": {
"database": {
"command": "python",
"args": ["-m", "mcp_database_universal"],
"env": {"DATABASE_URL": "sqlite:///C:/data/app.db"}
}
}
}Cursor / другие клиенты на основе CLI
{
"mcpServers": {
"database": {
"command": "uvx",
"args": ["mcp-database-universal"],
"env": {"DATABASE_URL": "sqlite:///C:/data/app.db"}
}
}
}Примечание для Windows: асинхронный драйвер Postgres требует цикла событий Windows selector. Пакет автоматически устанавливает эту политику на
win32, поэтому дополнительная настройка не требуется.
Разработка
pip install -e ".[dev]"
pytestИнтеграционные тесты для PostgreSQL/MySQL используют Docker Compose и автоматически пропускаются, если серверы недоступны:
docker compose -f tests/integration/docker-compose.yml up -d
pytestМодель безопасности
Сервер по умолчанию только для чтения; операторы
INSERT/UPDATE/DELETE/DROP/ALTERи другие записывающие операторы блокируются.Запись возможна только когда оператор явно задаёт
DATABASE_READ_ONLY=falseиDATABASE_WRITE_ENABLED=true.Результаты запросов ограничены количеством строк, таймаутом и размером вывода — предотвращаются неконтролируемые запросы.
Лицензия
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables AI agents to query and explore databases including SQLite, PostgreSQL, MySQL, and SQL Server through a secure, read-only workflow. It provides tools for listing connections, inspecting table schemas, and executing SELECT statements directly within VS Code.1
- AlicenseNot gradedqualityAmaintenanceConnect AI agents to SQL databases (SQLite, PostgreSQL, MySQL) with a unified interface for querying data, exploring schemas, inserting rows, and exporting results to CSV. Includes safety features like dangerous query blocking and write guards.13MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to connect to and interact with PostgreSQL, MySQL, SQLite, and MongoDB databases through natural language, supporting schema exploration, query execution, data export, and more.MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to interact with PostgreSQL or MySQL databases using natural language. Supports SQL queries, schema discovery, and pre-built aggregations without writing SQL.289MIT
Related MCP Connectors
Query PostgreSQL databases in plain English — LLM-generated, safety-validated SQL.
Explore, query, and inspect SQLite databases with ease. List tables, preview results, and view det…
Give your agent live data from Twitter, Reddit, the web and GitHub. No API keys, no scraping stack.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/kobramantra-debug/mcp-database-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server