Skip to main content
Glama
Jorge-240

Universal Database MCP

by Jorge-240

Universal Database MCP

Удалённый MCP для Google ADK и других MCP-клиентов. Позволяет динамически подключаться к MySQL, MariaDB и PostgreSQL через URL и управлять базами данных, таблицами и записями.

1. Требования

  • Рекомендуется Python 3.13.

  • База данных MySQL/MariaDB/PostgreSQL, доступная с компьютера, где запущен MCP.

  • Для Render: база данных должна принимать подключения из Интернета или авторизованной сети.

Related MCP server: database-remote-mcp

2. Локальный запуск

Windows PowerShell:

py -3.13 -m venv .venv
.\.venv\Scripts\Activate.ps1
pip install -r requirements.txt
Copy-Item .env.example .env

Отредактируйте .env и замените MCP_API_KEY на длинный секрет.

Выполните:

uvicorn server:app --host 0.0.0.0 --port 8000 --reload

Проверка:

http://127.0.0.1:8000/health

MCP:

http://127.0.0.1:8000/mcp

3. Тестирование с MCP Inspector

В другом терминале:

npx -y @modelcontextprotocol/inspector

Подключитесь к:

http://127.0.0.1:8000/mcp

В клиенте добавьте заголовок:

Authorization: Bearer TU_MCP_API_KEY

4. Первое подключение

С помощью инструмента crear_conexion отправьте, например:

mysql+pymysql://usuario:password@host:3306/Tareas_sena

Сервер возвращает connection_id. Используйте этот ID во всех остальных инструментах.

5. Важно о локальном MySQL

MCP, развернутый в Render, НЕ может использовать 127.0.0.1 или localhost для доступа к MySQL на вашем ПК. В Render localhost означает сам сервер Render.

Для локальной БД нужно запустить локальный коннектор, который будет выполнять роль безопасного моста. Эта первая версия подготавливает удаленный API; Local Connector — вторая часть проекта.

6. Google ADK

Настройте:

$env:MCP_URL="https://TU-SERVICIO.onrender.com/mcp"
$env:MCP_API_KEY="TU_TOKEN"

И используйте examples/adk_agent.py как основу.

7. Render

Вы можете подключить этот репозиторий к Render как Web Service.

Сборка:

pip install -r requirements.txt

Запуск:

uvicorn server:app --host 0.0.0.0 --port $PORT

Переменные:

MCP_API_KEY=<tu-secreto>
MCP_REQUIRE_AUTH=true
PYTHON_VERSION=3.13.5

Эндпоинт будет:

https://TU-SERVICIO.onrender.com/mcp

8. Безопасность

Эта версия использует статический bearer-токен для защиты удаленного эндпоинта. URL баз данных хранятся только в памяти процесса и показываются в ответах в замаскированном виде.

Учетные данные БД фактически определяют, какие действия возможны. ejecutar_sql_admin может выполнять произвольный SQL с правами этой учетной записи, поэтому требует confirmar=true.

Для продакшена с несколькими пользователями/агентами рекомендуется заменить глобальный токен на OAuth 2.1/JWT и изолировать подключения по идентичности пользователя.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Enables connecting to and querying multiple database types (PostgreSQL, MySQL, SQLite) through a unified interface. Supports managing multiple concurrent database connections with connection pooling and SQL query execution through MCP tools.
    5
    6 npm
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables remote database access (RDBMS and MongoDB) through MCP tools, supporting read/write queries, schema management, and more.
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables database interaction (MySQL, PostgreSQL, SQL Server) via MCP, supporting SQL queries and command execution.
    12 npm
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Dynamic MCP service for MySQL and PostgreSQL, allowing runtime database connections and SQL queries via tools.
    -