MySQL Connector Server – README | MCP Marketplace

✨ From vibe coding to vibe deployment. UBOS MCP turns ideas into infra with one message.

Learn more

MySQL MCP Server for Smithery (Python)

A MySQL connector for Smithery that allows you to connect to your MySQL database directly from Smithery, built with Python.

Features

  • Connect to MySQL Databases: Configure and connect to MySQL databases
  • List Databases: View all accessible databases
  • List Tables: View all tables in a specified database
  • Describe Tables: Get detailed schema information for tables
  • Execute Queries: Run read-only SQL queries (SELECT, SHOW, DESCRIBE, EXPLAIN)
  • Security: Built-in query validation ensures only read-only operations are allowed

Installation in Smithery

After adding the MCP server in Smithery, you’ll be able to enter your MySQL database credentials:

  • Host: Database server hostname (default: localhost)
  • Port: Database server port (default: 3306)
  • User: Your MySQL username
  • Password: Your MySQL password
  • Database: (Optional) The specific database to connect to

Manual Installation

  1. Clone this repository:
git clone https://github.com/aqaralife/mysql-mcp-python-server.git
  1. Install dependencies:
cd mysql-mcp-python-server
npm install
pip install -r requirements.txt
  1. Make the scripts executable (Unix/Linux/Mac):
chmod +x mcp_server.py run.js

Manual Usage

To start the server:

node run.js

Or, directly run the Python script:

python mcp_server.py

Available Tools

connect_db

Establishes a connection to a MySQL database.

Parameters:

  • host: Database server hostname
  • port: Database server port
  • user: Database username
  • password: Database password
  • database: (Optional) Database name

list_databases

Lists all accessible databases.

Parameters: None

list_tables

Lists all tables in a database.

Parameters:

  • database: (Optional) Database name, uses default if connected

describe_table

Shows the schema for a table.

Parameters:

  • table: Table name
  • database: (Optional) Database name, uses default if connected

execute_query

Executes a read-only SQL query.

Parameters:

  • query: SQL query (only SELECT, SHOW, DESCRIBE, and EXPLAIN allowed)
  • database: (Optional) Database name, uses default if connected

Security

The server includes built-in validation to ensure only read-only operations are permitted:

  • Only SELECT, SHOW, DESCRIBE, and EXPLAIN queries are allowed
  • Queries containing SQL commands like INSERT, UPDATE, DELETE, DROP, etc. are automatically rejected
  • Multiple statements in a single query (separated by semicolons) are not allowed

Troubleshooting

If you encounter issues:

  1. Python Not Found: The server will automatically detect python3 or python. If neither works, ensure Python is installed and in your PATH.

  2. Missing Modules: The server will attempt to install required packages automatically. If this fails, manually run:

    pip install mysql-connector-python>=8.0.0
    
  3. Connection Issues: Verify your database credentials and ensure the MySQL server is running and accessible.

  4. Smithery Connection Issues: Make sure the settings in Smithery are correctly configured with your database credentials.

  5. Server Unresponsive: Check the log output in Smithery’s console for errors.

License

MIT

Contact

If you have any questions, please create an issue.

Featured Templates

View More
AI Assistants
Talk with Claude 3
156 1165
Data Analysis
Pharmacy Admin Panel
238 1704
Verified Icon
AI Assistants
Speech to Text
134 1510

Start your free trial

Build your solution today. No credit card required.

Sign In

Register

Reset Password

Please enter your username or email address, you will receive a link to create a new password via email.