MySQL MCP Server

MIT License
330
  • Linux
  • Apple

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Integrations

  • Enables secure interaction with MySQL databases, allowing for listing tables, reading data, and executing SQL queries through a controlled interface for database exploration and analysis.

Servidor MySQL MCP

Una implementación del Protocolo de Contexto de Modelo (MCP) que permite la interacción segura con bases de datos MySQL. Este componente de servidor facilita la comunicación entre las aplicaciones de IA (hosts/clientes) y las bases de datos MySQL, lo que permite una exploración y un análisis más seguros y estructurados mediante una interfaz controlada.

Nota : MySQL MCP Server no está diseñado para usarse como un servidor independiente, sino como una implementación de protocolo de comunicación entre aplicaciones de IA y bases de datos MySQL.

Características

  • Listar las tablas MySQL disponibles como recursos
  • Leer el contenido de la tabla
  • Ejecutar consultas SQL con manejo de errores adecuado
  • Acceso seguro a la base de datos mediante variables de entorno
  • Registro completo

Instalación

Instalación manual

pip install mysql-mcp-server

Instalación mediante herrería

Para instalar MySQL MCP Server para Claude Desktop automáticamente a través de Smithery :

npx -y @smithery/cli install mysql-mcp-server --client claude

Configuración

Establezca las siguientes variables de entorno:

MYSQL_HOST=localhost # Database host MYSQL_PORT=3306 # Optional: Database port (defaults to 3306 if not specified) MYSQL_USER=your_username MYSQL_PASSWORD=your_password MYSQL_DATABASE=your_database

Uso

Con Claude Desktop

Agregue esto a su claude_desktop_config.json :

{ "mcpServers": { "mysql": { "command": "uv", "args": [ "--directory", "path/to/mysql_mcp_server", "run", "mysql_mcp_server" ], "env": { "MYSQL_HOST": "localhost", "MYSQL_PORT": "3306", "MYSQL_USER": "your_username", "MYSQL_PASSWORD": "your_password", "MYSQL_DATABASE": "your_database" } } } }

Con Visual Studio Code

Añade esto a tu mcp.json :

{ "servers": { "mysql": { "type": "stdio", "command": "uvx", "args": [ "--from", "mysql-mcp-server", "mysql_mcp_server" ], "env": { "MYSQL_HOST": "localhost", "MYSQL_PORT": "3306", "MYSQL_USER": "your_username", "MYSQL_PASSWORD": "your_password", "MYSQL_DATABASE": "your_database" } } }

Nota: Será necesario instalar uv para que esto funcione.

Depuración con MCP Inspector

Si bien MySQL MCP Server no está diseñado para ejecutarse de forma independiente o directamente desde la línea de comandos con Python, puedes usar el Inspector MCP para depurarlo.

El inspector MCP proporciona una forma conveniente de probar y depurar su implementación de MCP:

# Install dependencies pip install -r requirements.txt # Use the MCP Inspector for debugging (do not run directly with Python)

El servidor MySQL MCP está diseñado para integrarse con aplicaciones de inteligencia artificial como Claude Desktop y no debe ejecutarse directamente como un programa Python independiente.

Desarrollo

# Clone the repository git clone https://github.com/yourusername/mysql_mcp_server.git cd mysql_mcp_server # Create virtual environment python -m venv venv source venv/bin/activate # or `venv\Scripts\activate` on Windows # Install development dependencies pip install -r requirements-dev.txt # Run tests pytest

Consideraciones de seguridad

  • Nunca confirme variables de entorno ni credenciales
  • Utilice un usuario de base de datos con los permisos mínimos requeridos
  • Considere implementar la lista blanca de consultas para uso en producción
  • Supervisar y registrar todas las operaciones de la base de datos

Mejores prácticas de seguridad

Esta implementación de MCP requiere acceso a la base de datos para funcionar. Por seguridad:

  1. Cree un usuario MySQL dedicado con permisos mínimos
  2. Nunca utilice credenciales root o cuentas administrativas
  3. Restringir el acceso a la base de datos únicamente a las operaciones necesarias
  4. Habilitar el registro para fines de auditoría
  5. Revisiones de seguridad periódicas del acceso a las bases de datos

Consulte la Guía de configuración de seguridad de MySQL para obtener instrucciones detalladas sobre:

  • Creación de un usuario MySQL restringido
  • Establecer permisos apropiados
  • Monitoreo del acceso a la base de datos
  • Mejores prácticas de seguridad

⚠️ IMPORTANTE: Siga siempre el principio del mínimo privilegio al configurar el acceso a la base de datos.

Licencia

Licencia MIT: consulte el archivo LICENCIA para obtener más detalles.

Contribuyendo

  1. Bifurcar el repositorio
  2. Crea tu rama de funciones ( git checkout -b feature/amazing-feature )
  3. Confirme sus cambios ( git commit -m 'Add some amazing feature' )
  4. Empujar a la rama ( git push origin feature/amazing-feature )
  5. Abrir una solicitud de extracción

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

Permite a los asistentes de IA enumerar tablas, leer datos y ejecutar consultas SQL a través de una interfaz controlada, lo que hace que la exploración y el análisis de bases de datos sean más seguros y estructurados.

  1. Features
    1. Installation
      1. Manual Installation
      2. Installing via Smithery
    2. Configuration
      1. Usage
        1. With Claude Desktop
        2. With Visual Studio Code
        3. Debugging with MCP Inspector
      2. Development
        1. Security Considerations
          1. Security Best Practices
            1. License
              1. Contributing
                ID: vijdhok35p