MySQL MCP Server
Servidor MySQL MCP
Descripción general
Una implementación de servidor del Protocolo de Contexto de Modelo (MCP) que proporciona capacidades de interacción con bases de datos a través de MySQL. Este servidor permite ejecutar consultas SQL, crear tablas y explorar la información del esquema de la base de datos.
Related MCP server: MCP MySQL Server
Componentes
Herramientas
El servidor ofrece cinco herramientas principales:
Herramientas de consulta
read_queryEjecutar consultas SELECT para leer datos de la base de datos
Aporte:
*query(cadena): La consulta SQL SELECT a ejecutarDevuelve: Resultados de la consulta como una matriz de objetos
write_queryEjecutar consultas INSERT, UPDATE o DELETE
Aporte:
*query(cadena): La consulta de modificación de SQLDevoluciones:
{ affected_rows: number }
create_tableCrear nuevas tablas en la base de datos
Aporte:
*query(cadena): instrucción SQL CREATE TABLEDevuelve: Confirmación de creación de la tabla
Herramientas de esquema
list_tablesObtener una lista de todas las tablas en la base de datos
No se requiere entrada
Devuelve: Matriz de nombres de tablas
describe_tableVer información del esquema para una tabla específica
Aporte:
*table_name(cadena): Nombre de la tabla a describirDevuelve: Matriz de definiciones de columnas con nombres y tipos
Instalación
Prerrequisitos
Python 3.10+
Base de datos MySQL
Paquetes de Python necesarios:
mcp(Protocolo de contexto modelo)sqlalchemypymysql(u otro controlador MySQL)python-dotenvuvicorn(para transporte HTTP)
Configuración con Conda
Primero, crea y activa un entorno conda:
# Create environment
conda create --name mcp-demo python=3.12
# Activate environment
conda activate mcp-demoLuego, instala las dependencias necesarias:
# Method 1: Using pip
pip install "mcp[cli]>=0.1.0" "pymysql>=1.1.0" "sqlalchemy>=2.0.0" "python-dotenv>=1.0.0" "uvicorn>=0.27.0"
# Method 2: Using uv
uv pip install "mcp[cli]>=0.1.0" "pymysql>=1.1.0" "sqlalchemy>=2.0.0" "python-dotenv>=1.0.0" "uvicorn>=0.27.0"Configuración
Puede configurar el servidor utilizando:
Archivo de variables de entorno (.env)
Copie el archivo
.env.templatey cámbiele el nombre a.env:
cp .env.template .envEdite el archivo
.envcon su configuración:
# Database configuration
DB_URL=mysql+pymysql://username:password@localhost:3306/dbnameArgumentos de la línea de comandos
También puede anular la configuración con argumentos de la línea de comando:
python src/mysql/server.py --db-url mysql+pymysql://username:password@localhost:3306/dbnameUso
Iniciando el servidor
# Using .env file configuration
python src/mysql/server.py
# Using command line arguments
python src/mysql/server.py --db-url mysql+pymysql://username:password@localhost:3306/dbname --transport httpPruebas con MCP Inspector
Puede probar el servidor utilizando la herramienta MCP Inspector:
npx @modelcontextprotocol/inspector uv run /Users/caicongyang/IdeaProjects/tom/mcp-demo/src/mysql/server.pyEsto iniciará el servidor y le permitirá probar de forma interactiva las herramientas disponibles.
Ejemplo de flujo de trabajo
Inicie el servidor con su conexión de base de datos MySQL
Conecte un modelo de IA al servidor mediante el cliente MCP
Utilice la herramienta
list_tablespara ver las tablas disponiblesCree tablas con
create_tablesi es necesarioInsertar datos con
write_queryConsultar datos con
read_query
Uso con Claude Desktop
ultravioleta
Agregue el servidor a su claude_desktop_config.json :
"mcpServers": {
"mysql": {
"command": "uv",
"args": [
"--directory",
"path_to_mcp_demo",
"run",
"python",
"src/mysql/server.py",
"--db-url",
"mysql+pymysql://username:password@localhost/dbname"
]
}
}Estibador
Agregue el servidor a su claude_desktop_config.json :
"mcpServers": {
"mysql": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-v",
"mcp-mysql:/mcp",
"mcp/mysql",
"--db-url",
"mysql+pymysql://username:password@localhost/dbname"
]
}
}Instalación del paquete
También puedes instalar el paquete usando pip:
# Install in development mode
pip install -e .
# Run using the installed package
mcp-mysql --db-url mysql+pymysql://username:password@localhost/dbnameEn Cursor IDE
Cursor es un IDE con IA. Puedes integrar este servidor MCP con Cursor para consultar bases de datos MySQL directamente durante la programación.
Configuración en el cursor
Iniciar el servidor MCP
python src/mysql/server.pyConfigurar MCP en la configuración del cursor
Agregue la URL de su servidor MCP:
http://localhost:8000Utilice los comandos del cursor para acceder a MCP
En el editor de cursores, utilice:
/mcp mysql-query {"query": "SELECT * FROM users LIMIT 5"}Para consultas parametrizadas:
/mcp mysql-query {"query": "SELECT * FROM users WHERE age > :min_age", "params": {"min_age": 30}}
Referencia de API
Formato de entrada
{
"query": "SELECT * FROM users WHERE age > :min_age",
"params": {
"min_age": 30
}
}Formato de salida
{
"results": [
{"id": 1, "name": "John", "age": 35},
{"id": 2, "name": "Jane", "age": 42}
],
"columns": ["id", "name", "age"],
"rowcount": 2
}Consideraciones de seguridad
Este servidor debe ejecutarse en un entorno confiable, ya que permite consultas SQL arbitrarias.
En producción, implementar un control de acceso adecuado y validación de entrada.
Considere limitar los tipos de comandos SQL que se pueden ejecutar
Importante : No envíe archivos
.envque contengan información confidencial al control de versiones
Desarrollo
Estructura del proyecto
src/mysql/server.py: Implementación del servidor principalpyproject.toml: Configuración del paqueteREADME.md: Esta documentación
Añadiendo nuevas funciones
Para ampliar el servidor con nuevas capacidades:
Agregue nuevas herramientas usando el decorador
@mcp.tool()Implementar la lógica de la herramienta utilizando la clase
MySQLDatabaseActualizar la documentación para reflejar las nuevas capacidades
Licencia
Este servidor MCP está licenciado bajo la Licencia MIT. Esto significa que usted tiene libertad de usar, modificar y distribuir el software, sujeto a los términos y condiciones de la Licencia 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
- AlicenseNot gradedqualityCmaintenanceA server that enables AI models to interact with MySQL databases through a Model Control Protocol, providing tools for table creation, schema inspection, query execution, and data retrieval.28MIT
- AlicenseBqualityDmaintenanceA Model Context Protocol server that enables AI models to interact with MySQL databases, providing tools for querying, executing statements, listing tables, and describing table structures.5466MIT
- FlicenseBqualityDmaintenanceA Model Context Protocol server that enables AI models to interact with MySQL databases through a standardized interface, providing tools for querying, executing commands, and managing database schemas.7
- AlicenseAqualityDmaintenanceA Model Context Protocol server that allows AI agents to execute SQL queries against a MySQL database, supporting operations like reading data, creating tables, inserting, updating, and deleting records.65198MIT
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
GibsonAI MCP server: manage your databases with natural language
A Model Context Protocol server for Wix AI tools
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/caicongyang/mcp-demo'
If you have feedback or need assistance with the MCP directory API, please join our Discord server