mysql-mcp-server
MySQL MCP server project
Documentation
MySQL MCP Server
This is a Model Context Protocol (MCP) server that provides access to a MySQL database. It allows agent to execute SQL queries against a MySQL database.
Features
- Execute SQL queries against a MySQL database:
- Read data (SELECT statements)
- Create tables (CREATE TABLE statements)
- Insert data (INSERT INTO statements)
- Update data (UPDATE statements)
- Delete data (DELETE FROM statements)
- Returns query results in JSON format
- Configurable database connection settings
- Transaction logging with unique IDs
Prerequisites
- Node.js (v14 or higher)
- MySQL server
- MCP SDK
Installation
1. Clone or download this repository
2. Install dependencies:
cd mysql-mcp-server
npm install3. Build the server:
npm run buildConfiguration
The MySQL MCP server uses the following environment variables for configuration:
- `MYSQL_HOST`: MySQL server hostname (default: 'localhost')
- `MYSQL_PORT`: MySQL server port (default: 3306)
- `MYSQL_USER`: MySQL username (default: 'mcp101')
- `MYSQL_PASSWORD`: MySQL password (default: '123qwe')
- `MYSQL_DATABASE`: MySQL database name (default: 'mcpdb')
Database Setup
1. Create a MySQL database:
CREATE DATABASE mcpdb;2. Create a MySQL user with access to the database:
CREATE USER 'mcp101'@'localhost' IDENTIFIED BY '123qwe';
GRANT ALL PRIVILEGES ON mcpdb.* TO 'mcp101'@'localhost';
FLUSH PRIVILEGES;3. Create a test table with sample data:
USE mcpdb;
CREATE TABLE test_users (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100),
email VARCHAR(100),
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
INSERT INTO test_users (name, email) VALUES
('John Doe', 'john@example.com'),
('Jane Smith', 'jane@example.com'),
('Bob Johnson', 'bob@example.com');MCP Configuration
Add the MySQL MCP server to your MCP settings file:
VSCode (Claude Extension)
File: `~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json`
Change the args according your MySQL configuruation
{
"mcpServers": {
"mysql-mcp-server": {
"autoApprove": [],
"disabled": false,
"timeout": 60,
"command": "node",
"args": [
"/path/to/mysql-mcp-server/build/index.js"
],
"env": {
"MYSQL_HOST": "localhost",
"MYSQL_PORT": "3306",
"MYSQL_USER": "mcp101",
"MYSQL_PASSWORD": "123qwe",
"MYSQL_DATABASE": "mcpdb"
},
"transportType": "stdio"
}
}
}Claude Desktop App
File: `~/Library/Application Support/Claude/claude_desktop_config.json`
{
"mcpServers": {
"mysql-mcp-server": {
"autoApprove": [],
"disabled": false,
"timeout": 60,
"command": "node",
"args": [
"/path/to/mysql-mcp-server/build/index.js"
],
"env": {
"MYSQL_HOST": "localhost",
"MYSQL_PORT": "3306",
"MYSQL_USER": "mcp101",
"MYSQL_PASSWORD": "123qwe",
"MYSQL_DATABASE": "mcpdb"
},
"transportType": "stdio"
}
}
}Usage
Once configured, you can use the MySQL MCP server in your conversations with Claude. For example:
"Can you show me all the users in the test_users table?"
Claude will use the `run_sql_query` tool to execute:
SELECT * FROM test_usersAvailable Tools
run_sql_query
Executes a read-only SQL query (SELECT statements only) against the MySQL database.
Parameters:
- `query`: The SQL SELECT query to execute.
Example:
{
"query": "SELECT * FROM test_users"
}create_table
Creates a new table in the MySQL database.
Parameters:
- `query`: The SQL CREATE TABLE query to execute.
Example:
{
"query": "CREATE TABLE products (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(100), price DECIMAL(10,2))"
}insert_data
Inserts data into a table in the MySQL database.
Parameters:
- `query`: The SQL INSERT INTO query to execute.
Example:
{
"query": "INSERT INTO products (name, price) VALUES ('Laptop', 999.99), ('Smartphone', 499.99)"
}update_data
Updates data in a table in the MySQL database.
Parameters:
- `query`: The SQL UPDATE query to execute.
Example:
{
"query": "UPDATE products SET price = 899.99 WHERE name = 'Laptop'"
}delete_data
Deletes data from a table in the MySQL database.
Parameters:
- `query`: The SQL DELETE FROM query to execute.
Example:
{
"query": "DELETE FROM products WHERE name = 'Smartphone'"
}Security Considerations
- Use a dedicated MySQL user with appropriate privileges for the MCP server
- Consider using read-only privileges if you only need to query data
- Store sensitive information like database credentials securely
- All operations are logged with unique transaction IDs for auditing
Frequently asked questions
What is mysql-mcp-server?
mysql-mcp-server is MySQL MCP server project
How do I install mysql-mcp-server?
Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.
Is mysql-mcp-server open source?
Yes — it is hosted on GitHub at https://github.com/michael7736/mysql-mcp-server and has 7 stars.
Related MCP tools
🔥 Official Firecrawl MCP Server - Adds powerful web scraping and search to Cursor, Claude and any other LLM clients.
Use any LLMs (Large Language Models) for Deep Research. Support SSE API and MCP server.
Enhanced MCP server for interactive user feedback and command execution in AI-assisted development, featuring dual interface support (Web UI and Desktop Application) with intelligent environment detection and cross-platform compatibility.
A powerful Zotero AI and MCP plugin with ChatGPT, Gemini 3.7, Claude Fable 5, Claude Opus 5, DeepSeek V4, Grok, OpenRouter, Kimi k3, GLM 5.3, SiliconFlow, GPT-oss, Gemma 4, Qwen 3.8
Connect your browser to AI models. Just use Dia on Chrome, Arc or Firefox.
文颜 MCP Server 可以让 AI 自动将 Markdown 文章排版后发布至微信公众号。
Run your own MCP server? See who uses it and what to fix.
Measure it with TrackMCP