MySQL Database Access MCP Server
This MCP server provides read-only access to MySQL databases. It allows you to:
- List tables in a database
- Execute read-only SQL queries
Security Features
- Read-only access: Only SELECT, SHOW, DESCRIBE, and EXPLAIN statements are allowed
- Query validation: Prevents SQL injection and blocks any data modification attempts
- Query timeout: Prevents long-running queries from consuming resources
- Row limit: Prevents excessive data return
Installation
1. Install using one of these methods:
Install from NPM
Build from Source
Install via Smithery
To install MySQL Database Access MCP Server for Claude AI automatically via
Smithery:
2. Configure environment variables
The server requires the following environment variables:
MYSQL_HOST
: Database server hostname
MYSQL_PORT
: Database server port (default: 3306)
MYSQL_USER
: Database username
MYSQL_PASSWORD
: Database password (optional, but recommended for secure connections)
MYSQL_DATABASE
: Default database name (optional)
3. Add to MCP settings
Add the following configuration to your MCP settings file:
If you installed via npm (Option 1):
If you built from source (Option 2):
Available Tools
list_databases
Lists all accessible databases on the MySQL server.
Parameters: None
Example:
list_tables
Lists all tables in a specified database.
Parameters:
database
(optional): Database name (uses default if not specified)
Example:
describe_table
Shows the schema for a specific table.
Parameters:
database
(optional): Database name (uses default if not specified)
table
(required): Table name
Example:
execute_query
Executes a read-only SQL query.
Parameters:
query
(required): SQL query (only SELECT, SHOW, DESCRIBE, and EXPLAIN statements are allowed)
database
(optional): Database name (uses default if not specified)
Example:
Testing
The server includes test scripts to verify functionality with your MySQL setup:
1. Setup Test Database
This script creates a test database, table, and sample data:
2. Test MCP Tools
This script tests each of the MCP tools against the test database:
3. Run All Tests
To run both setup and tool tests:
Troubleshooting
If you encounter issues:
- Check the server logs for error messages
- Verify your MySQL credentials and connection details
- Ensure your MySQL user has appropriate permissions
- Check that your query is read-only and properly formatted
License
This project is licensed under the MIT License - see the LICENSE file for details.
MySQL Database Access MCP Server
This MCP server provides read-only access to MySQL databases. It allows you to:
- List tables in a database
- Execute read-only SQL queries
Security Features
- Read-only access: Only SELECT, SHOW, DESCRIBE, and EXPLAIN statements are allowed
- Query validation: Prevents SQL injection and blocks any data modification attempts
- Query timeout: Prevents long-running queries from consuming resources
- Row limit: Prevents excessive data return
Installation
1. Install using one of these methods:
Install from NPM
Build from Source
Install via Smithery
To install MySQL Database Access MCP Server for Claude AI automatically via
Smithery:
2. Configure environment variables
The server requires the following environment variables:
MYSQL_HOST
: Database server hostname
MYSQL_PORT
: Database server port (default: 3306)
MYSQL_USER
: Database username
MYSQL_PASSWORD
: Database password (optional, but recommended for secure connections)
MYSQL_DATABASE
: Default database name (optional)
3. Add to MCP settings
Add the following configuration to your MCP settings file:
If you installed via npm (Option 1):
If you built from source (Option 2):
Available Tools
list_databases
Lists all accessible databases on the MySQL server.
Parameters: None
Example:
list_tables
Lists all tables in a specified database.
Parameters:
database
(optional): Database name (uses default if not specified)
Example:
describe_table
Shows the schema for a specific table.
Parameters:
database
(optional): Database name (uses default if not specified)
table
(required): Table name
Example:
execute_query
Executes a read-only SQL query.
Parameters:
query
(required): SQL query (only SELECT, SHOW, DESCRIBE, and EXPLAIN statements are allowed)
database
(optional): Database name (uses default if not specified)
Example:
Testing
The server includes test scripts to verify functionality with your MySQL setup:
1. Setup Test Database
This script creates a test database, table, and sample data:
2. Test MCP Tools
This script tests each of the MCP tools against the test database:
3. Run All Tests
To run both setup and tool tests:
Troubleshooting
If you encounter issues:
- Check the server logs for error messages
- Verify your MySQL credentials and connection details
- Ensure your MySQL user has appropriate permissions
- Check that your query is read-only and properly formatted
License
This project is licensed under the MIT License - see the LICENSE file for details.
database
(optional): Database name (uses default if not specified)
table
(required): Table name
Example:
execute_query
Executes a read-only SQL query.
Parameters:
query
(required): SQL query (only SELECT, SHOW, DESCRIBE, and EXPLAIN statements are allowed)
database
(optional): Database name (uses default if not specified)
Example:
Testing
The server includes test scripts to verify functionality with your MySQL setup:
1. Setup Test Database
This script creates a test database, table, and sample data:
2. Test MCP Tools
This script tests each of the MCP tools against the test database:
3. Run All Tests
To run both setup and tool tests:
Troubleshooting
If you encounter issues:
- Check the server logs for error messages
- Verify your MySQL credentials and connection details
- Ensure your MySQL user has appropriate permissions
- Check that your query is read-only and properly formatted
License
This project is licensed under the MIT License - see the LICENSE file for details.