This server provides secure, read-only access to MySQL databases.
List available databases: Retrieve all accessible databases on the server
List tables in a database: View all tables in a specified database
Describe table schemas: Show the schema for a specific table
Execute read-only SQL queries: Run SELECT, SHOW, DESCRIBE, and EXPLAIN statements
All operations include security features like query validation, timeout, and row limits to ensure safe and efficient data access.
Provides read-only access to MySQL databases with tools for listing databases, exploring table schemas, and executing secure SQL queries with protection against data modification.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@MySQL Database Accessshow me the top 10 customers by total orders"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
MySQL Database Access MCP Server
This MCP server provides read-only access to MySQL databases. It allows you to:
List available databases
List tables in a database
Describe table schemas
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
Related MCP server: MCP Server for MySQL
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 hostnameMYSQL_PORT: Database server port (default: 3306)MYSQL_USER: Database usernameMYSQL_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:
Advanced Connection Pool Configuration
For more control over the MySQL connection pool behavior, you can configure additional parameters:
These advanced options allow you to:
MYSQL_CONNECTION_LIMIT: Control the maximum number of connections in the pool (default: 10)MYSQL_QUEUE_LIMIT: Set the maximum number of connection requests to queue (default: 0, unlimited)MYSQL_CONNECT_TIMEOUT: Adjust the connection timeout in milliseconds (default: 10000)MYSQL_IDLE_TIMEOUT: Configure how long a connection can be idle before being released (in milliseconds)MYSQL_MAX_IDLE: Set the maximum number of idle connections to keep in the pool
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.