database-mcp
Многобазовый сервер MCP (от Legion AI)
Сервер, который помогает людям получать доступ к данным в базах данных и выполнять запросы с помощью Legion Query Runner с интеграцией Model Context Protocol (MCP) Python SDK.
Начните генерацию здесь
Этот инструмент предоставлен Legion AI . Чтобы использовать полноценный и мощный инструмент аналитики данных AI, посетите сайт. Напишите нам, если вы хотите, чтобы мы поддерживали какую-то одну базу данных.
Конец поколения здесь
Почему стоит выбрать базу данных MCP
Database MCP выделяется среди других решений для доступа к базам данных по нескольким веским причинам:
Унифицированный интерфейс для работы с несколькими базами данных : подключайтесь к PostgreSQL, MySQL, SQL Server и другим базам данных через единый согласованный API — нет необходимости изучать различные клиентские библиотеки для каждого типа базы данных.
Интеграция с поддержкой искусственного интеллекта : разработан специально для взаимодействия с помощниками на базе искусственного интеллекта через протокол контекста модели (MCP), позволяющий выполнять операции с базами данных на естественном языке.
Обнаружение схемы с нулевой конфигурацией : автоматически обнаруживает и предоставляет схемы базы данных без ручной настройки или сопоставления.
Инструменты, не зависящие от базы данных : находите таблицы, исследуйте схемы и выполняйте запросы с помощью одного и того же набора инструментов независимо от базовой технологии базы данных.
Безопасное управление учетными данными : обеспечивает безопасную обработку данных аутентификации базы данных, отделяя учетные данные от кода приложения.
Простое развертывание : работает с современными средами разработки ИИ, такими как LangChain, FastAPI и другими, с минимальной настройкой.
Расширяемый дизайн : легко добавляйте пользовательские инструменты и подсказки для улучшения функциональности в конкретных случаях использования.
Независимо от того, создаете ли вы ИИ-агенты, которым необходим доступ к базе данных, или просто хотите унифицированный интерфейс для нескольких баз данных, Database MCP предоставляет оптимизированное решение, которое значительно сокращает время разработки и сложность.
Related MCP server: MCP Database Server
Функции
Поддержка нескольких баз данных — одновременное подключение к нескольким базам данных
Доступ к базе данных через Legion Query Runner
Поддержка протокола контекста модели (MCP) для помощников на основе искусственного интеллекта
Раскройте операции с базой данных как ресурсы, инструменты и подсказки MCP
Несколько вариантов развертывания (автономный сервер MCP, интеграция FastAPI)
Выполнение запроса и обработка результатов
Гибкая настройка с помощью переменных среды, аргументов командной строки или настроек MCP JSON
Выбор базы данных пользователем для многобазовых настроек
Поддерживаемые базы данных
База данных | Код DB_TYPE |
PostgreSQL | стр. |
Красное смещение | красное смещение |
CockroachDB | таракан |
MySQL | mysql |
RDS MySQL | rds_mysql |
Microsoft SQL-сервер | mssql |
Большой запрос | bigquery |
Oracle БД | оракул |
SQLite | sqlite |
Мы используем библиотеку Legion Query Runner в качестве коннекторов. Вы можете найти больше информации в их api doc .
Что такое МКП?
Model Context Protocol (MCP) — это спецификация для поддержания контекста в приложениях ИИ. Этот сервер использует MCP Python SDK для:
Использовать операции с базами данных в качестве инструментов для помощников на основе искусственного интеллекта
Предоставить схемы баз данных и метаданные в качестве ресурсов
Генерировать полезные подсказки для операций с базой данных
Включить взаимодействие с базами данных с отслеживанием состояния
Установка и настройка
Требуемые параметры
Для конфигурации с одной базой данных:
DB_TYPE : Код типа базы данных (см. таблицу выше)
DB_CONFIG : строка конфигурации JSON для подключения к базе данных
Для конфигурации с несколькими базами данных:
DB_CONFIGS : JSON-массив конфигураций базы данных, каждая из которых содержит:
db_type : Код типа базы данных
конфигурация : Конфигурация подключения к базе данных
описание : понятное для человека описание базы данных
Формат конфигурации зависит от типа базы данных. Подробности конфигурации для конкретной базы данных см. в документации API.
Методы установки
Вариант 1: Использование УФ (рекомендуется)
При использовании uv , не требуется специальной установки. Мы будем использовать uvx для прямого запуска database-mcp .
Пример конфигурации UV (одна база данных):
REPLACE DB_TYPE and DB_CONFIG with your connection info.
{
"mcpServers": {
"database-mcp": {
"command": "uvx",
"args": [
"database-mcp"
],
"env": {
"DB_TYPE": "pg",
"DB_CONFIG": "{\"host\":\"localhost\",\"port\":5432,\"user\":\"user\",\"password\":\"pw\",\"dbname\":\"dbname\"}"
},
"disabled": true,
"autoApprove": []
}
}
}Пример конфигурации UV (несколько баз данных):
{
"mcpServers": {
"database-mcp": {
"command": "uvx",
"args": [
"database-mcp"
],
"env": {
"DB_CONFIGS": "[{\"id\":\"pg_main\",\"db_type\":\"pg\",\"configuration\":{\"host\":\"localhost\",\"port\":5432,\"user\":\"user\",\"password\":\"pw\",\"dbname\":\"postgres\"},\"description\":\"PostgreSQL Database\"},{\"id\":\"mysql_data\",\"db_type\":\"mysql\",\"configuration\":{\"host\":\"localhost\",\"port\":3306,\"user\":\"root\",\"password\":\"pass\",\"database\":\"mysql\"},\"description\":\"MySQL Database\"}]"
},
"disabled": true,
"autoApprove": []
}
}
}Вариант 2: использование PIP
Установка через pip:
pip install database-mcpПример конфигурации PIP (одна база данных):
{
"mcpServers": {
"database": {
"command": "python",
"args": [
"-m", "database_mcp",
"--repository", "path/to/git/repo"
],
"env": {
"DB_TYPE": "pg",
"DB_CONFIG": "{\"host\":\"localhost\",\"port\":5432,\"user\":\"user\",\"password\":\"pw\",\"dbname\":\"dbname\"}"
}
}
}
}Запуск сервера
Режим производства
python mcp_server.pyМетоды конфигурации
Переменные среды (единая база данных)
export DB_TYPE="pg" # or mysql, postgresql, etc.
export DB_CONFIG='{"host":"localhost","port":5432,"user":"username","password":"password","dbname":"database_name"}'
uv run src/database_mcp/mcp_server.pyПеременные среды (несколько баз данных)
export DB_CONFIGS='[{"id":"pg_main","db_type":"pg","configuration":{"host":"localhost","port":5432,"user":"username","password":"password","dbname":"database_name"},"description":"PostgreSQL Database"},{"id":"mysql_users","db_type":"mysql","configuration":{"host":"localhost","port":3306,"user":"root","password":"pass","database":"mysql"},"description":"MySQL Database"}]'
uv run src/database_mcp/mcp_server.pyЕсли вы не укажете идентификатор, система сгенерирует его автоматически на основе типа и описания базы данных:
export DB_CONFIGS='[{"db_type":"pg","configuration":{"host":"localhost","port":5432,"user":"username","password":"password","dbname":"database_name"},"description":"PostgreSQL Database"},{"db_type":"mysql","configuration":{"host":"localhost","port":3306,"user":"root","password":"pass","database":"mysql"},"description":"MySQL Database"}]'
# IDs will be generated as something like "pg_postgres_0" and "my_mysqldb_1"
uv run src/database_mcp/mcp_server.pyАргументы командной строки (одна база данных)
python mcp_server.py --db-type pg --db-config '{"host":"localhost","port":5432,"user":"username","password":"password","dbname":"database_name"}'Аргументы командной строки (несколько баз данных)
python mcp_server.py --db-configs '[{"id":"pg_main","db_type":"pg","configuration":{"host":"localhost","port":5432,"user":"username","password":"password","dbname":"database_name"},"description":"PostgreSQL Database"},{"id":"mysql_users","db_type":"mysql","configuration":{"host":"localhost","port":3306,"user":"root","password":"pass","database":"mysql"},"description":"MySQL Database"}]'Обратите внимание, что вы можете указать собственные идентификаторы для каждой базы данных с помощью поля id или позволить системе сгенерировать их на основе типа и описания базы данных.
Поддержка нескольких баз данных
При подключении к нескольким базам данных необходимо указать, какую базу данных использовать для каждого запроса:
Используйте инструмент
list_databasesдля просмотра доступных баз данных с их идентификаторами.Используйте
get_database_infoдля просмотра сведений о схеме баз данных.Используйте
find_tableдля поиска таблицы во всех базах данных.Предоставьте параметр
db_idтаким инструментам, какexecute_query,get_table_columnsи т. д.
Подключения к базе данных управляются внутренне как словарь объектов DbConfig , причем каждая база данных имеет уникальный идентификатор. Информация о схеме представлена в виде списка объектов таблиц, где каждая таблица содержит свое имя и информацию о столбцах.
Подсказка select_database помогает пользователям пройти процесс выбора базы данных.
Представление схемы
Схемы базы данных представлены в виде списка объектов таблиц, где каждая таблица содержит информацию о своих столбцах:
[
{
"name": "users",
"columns": [
{"name": "id", "type": "integer"},
{"name": "username", "type": "varchar"},
{"name": "email", "type": "varchar"}
]
},
{
"name": "orders",
"columns": [
{"name": "id", "type": "integer"},
{"name": "user_id", "type": "integer"},
{"name": "product_id", "type": "integer"},
{"name": "quantity", "type": "integer"}
]
}
]Такое представление упрощает программный доступ к информации таблиц и столбцов, сохраняя при этом четкую иерархическую структуру.
Раскрытые возможности MCP
Ресурсы
Ресурс | Описание |
| Получить схемы для одной или всех настроенных баз данных |
Инструменты
Инструмент | Описание |
| Выполнить SQL-запрос и вернуть результаты в виде таблицы разметки |
| Выполнить SQL-запрос и вернуть результаты в формате JSON |
| Получить имена столбцов для определенной таблицы |
| Получить типы столбцов для определенной таблицы |
| Получить недавнюю историю запросов |
| Список всех доступных подключений к базе данных |
| Получите подробную информацию о базе данных, включая схему |
| Найдите, какая база данных содержит определенную таблицу |
| Получите подробное описание таблицы, включая названия и типы столбцов. |
| Получить выборку данных из таблицы |
Все инструменты, специфичные для баз данных (например, execute_query , get_table_columns и т. д.), требуют параметр db_id для указания, какую базу данных использовать.
Подсказки
Быстрый | Описание |
| Создать SQL-запрос к базе данных |
| Объясните, что делает SQL-запрос |
| Оптимизируйте SQL-запрос для повышения производительности |
| Помогите пользователю выбрать, какую базу данных использовать |
Разработка
Использование MCP-инспектора
запустите это, чтобы запустить инспектор
npx @modelcontextprotocol/inspector uv run src/database_mcp/mcp_server.pyзатем в поле ввода команды задайте что-то вроде
run src/database_mcp/mcp_server.py --db-type pg --db-config '{"host":"localhost","port":5432,"user":"username","password":"password","dbname":"database_name"}'Тестирование
uv pip install -e ".[dev]"
pytestИздательский
# Clean up build artifacts
rm -rf dist/ build/
# Remove any .egg-info directories if they exist
find . -name "*.egg-info" -type d -exec rm -rf {} + 2>/dev/null || true
# Build the package
uv run python -m build
# Upload to PyPI
uv run python -m twine upload dist/*Лицензия
Этот репозиторий лицензирован по GPL
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
- AlicenseNot gradedqualityCmaintenanceThis is a Model Context Protocol (MCP) server for executing SQL queries against Databricks using the Statement Execution API. It enables AI assistants to directly query Databricks data warehouses, analyze database schemas, and retrieve query results in a structured format42MIT
- AlicenseNot gradedqualityDmaintenanceThis server enables Claude to directly interact with SQLite, SQL Server, PostgreSQL, and MySQL databases through the Model Context Protocol, allowing for query execution, table management, and data export capabilities.MIT
- FlicenseNot gradedqualityDmaintenanceA FastAPI-based server that enables executing SQL queries, managing database connections, and retrieving analytics reports through MCP-integrated endpoints. It allows users to interact with database schemas, performance metrics, and access logs using structured queries.
- FlicenseNot gradedqualityBmaintenanceModel Context Protocol (MCP) server that gives AI assistants a safe, correct data-analyst capability over business metrics - without raw SQL improvisation.
Related MCP Connectors
GibsonAI MCP server: manage your databases with natural language
MCP server for interacting with the Supabase platform
MCP server for managing Prisma Postgres.
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/TheRaLabs/legion-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server