DatabaseMCP
Arquitectura del Servidor de Inteligencia de Bases de Datos MCP
Descripción general del sistema
El sistema expone las capacidades de la base de datos a los agentes de IA utilizando el Protocolo de Contexto de Modelo (MCP).
El servidor MCP actúa como un puente entre:
Asistentes de IA
metadatos de la base de datos
procedimientos almacenados
herramientas de exploración de bases de datos
Arquitectura de alto nivel
Agente de IA / Cliente MCP │ ▼ MCP Server (FastMCP) │ ├── Herramientas de descubrimiento │ (exploración de bases de datos) │ ├── Herramientas de procedimientos dinámicos │ (generadas a partir de procedimientos de la base de datos) │ ▼ Motor de inteligencia (metadatos de procedimientos + categorización) │ ▼ Capa de acceso a la base de datos │ ▼ Base de datos MySQL
Componentes principales
Related MCP server: MySQL MCP Server
1. Servidor MCP (main.py)
El servidor MCP se crea utilizando FastMCP.
Responsabilidades:
inicializar el servidor MCP
registrar herramientas de descubrimiento
registrar herramientas de procedimientos dinámicos
2. Capa de acceso a la base de datos (db.py)
Este módulo gestiona toda la comunicación con la base de datos.
Responsabilidades:
gestión de conexiones a la base de datos
ejecución de procedimientos almacenados
recuperación de metadatos
aplicación de límites de resultados
Todas las interacciones con la base de datos pasan por esta capa.
3. Generador de herramientas (tool_generator.py)
Este módulo convierte dinámicamente los procedimientos almacenados de la base de datos en herramientas MCP.
Pasos realizados:
cargar metadatos de procedimientos desde la base de datos
detectar parámetros de procedimientos
generar funciones de herramientas MCP dinámicamente
registrar herramientas con el servidor MCP
Esto permite que el sistema admita automáticamente nuevos procedimientos añadidos a la base de datos.
4. Motor de inteligencia (intelligence_engine.py)
El motor de inteligencia analiza los procedimientos almacenados para generar metadatos.
Las capacidades incluyen:
categorización de procedimientos
generación de descripciones
análisis de parámetros
Ejemplos de categorías:
Patrón de procedimiento | Categoría |
GetLinkCount | Análisis de red |
GetWeekData | Análisis temporal |
InterfaceLinkType | Análisis de interfaz |
Estos metadatos ayudan a los agentes de IA a comprender el propósito de cada herramienta.
5. Herramientas de descubrimiento (discovery_tools.py)
Las herramientas de descubrimiento permiten a los agentes de IA explorar la estructura de la base de datos.
Herramientas implementadas:
list_databases list_tables describe_table
Estas herramientas dependen de los metadatos de la base de datos de:
INFORMATION_SCHEMA
Arquitectura de seguridad
Se han implementado varias salvaguardas para garantizar una interacción segura con la base de datos.
Restricciones de palabras clave
Los procedimientos que contienen palabras clave peligrosas están bloqueados.
Ejemplos:
DELETE DROP TRUNCATE UPDATE INSERT ALTER
Límites de resultados de consulta
El sistema limita el tamaño de los resultados utilizando un valor configurable:
MAX_QUERY_ROWS
Esto evita la extracción masiva de datos.
Limitación de tasa (Rate Limiting)
El servidor MCP aplica límites de tasa de solicitudes para evitar un uso excesivo.
Usuario de base de datos restringido
El usuario de la base de datos utilizado por el servidor MCP solo debe tener:
SELECT EXECUTE
permisos.
Esto evita la modificación de datos de producción.
Fuentes de metadatos
El sistema recupera metadatos de las tablas del sistema MySQL.
Ejemplos:
INFORMATION_SCHEMA.ROUTINES INFORMATION_SCHEMA.PARAMETERS INFORMATION_SCHEMA.TABLES INFORMATION_SCHEMA.COLUMNS
Estas tablas permiten al servidor MCP comprender automáticamente la estructura de la base de datos.
Ejemplo de flujo de interacción de IA
Ejemplo de interacción entre un agente de IA y la base de datos:
list_databases() ↓ list_tables() ↓ describe_table("interface_stats") ↓ GetLinkCount("NodeA")
Esto permite a la IA explorar la estructura de la base de datos antes de ejecutar procedimientos analíticos.
Extensibilidad
El sistema está diseñado para admitir objetos de base de datos adicionales.
Las futuras extensiones pueden incluir:
list_views list_functions list_triggers search_tables explain_query
La arquitectura modular permite añadir nuevas herramientas fácilmente.
Conclusión
Esta arquitectura demuestra cómo los servidores MCP pueden exponer de forma segura las capacidades de las bases de datos a los sistemas de IA.
Principios de diseño clave:
• arquitectura modular • generación dinámica de herramientas • descubrimiento basado en metadatos • acceso seguro a la base de datos
Este enfoque permite una integración IA-base de datos segura y escalable.
Los diagramas detallados del sistema están disponibles en el directorio docs/.
This server cannot be deployed
Maintenance
Related MCP Connectors
- dataOAuthco.thinair
PostgreSQL, MySQL, and SQL Server in one session. 26 read-only MCP tools for AI agents.
MCP server for building and testing AI agents with multi-model experimentation and insights.
- mcpOAuthcom.gibsonai
GibsonAI MCP server: manage your databases with natural language
The Remote MCP server acts as a standardized bridge between LLM applications (like Claude, ChatGPT, and Cursor) and external services, enabling AI agents to access external tools and resources. Its primary capability is providing a centralized search tool to discover other MCP servers and their respective tools. Unlike local implementations, it runs remotely with OAuth authentication and permission controls for security.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceA high-performance MCP server that enables AI assistants to safely interact with MySQL databases through secure CRUD operations, schema inspection, and parameterized queries with built-in SQL injection prevention.1-
- AlicenseNot gradedqualityDmaintenanceA MySQL MCP server for secure database interaction, enabling schema inspection, query execution, and RBAC via AI coding assistants.1,352 npm5MIT
- AlicenseNot gradedqualityDmaintenanceMCP server that connects AI agents to MySQL databases for schema exploration, data querying, and SQL execution via natural language.2MIT
- AlicenseNot gradedqualityDmaintenanceA production-ready MCP server for MySQL database integration with AI agents, enabling database exploration, CRUD operations, schema management, and performance monitoring through natural language.744 npmMIT