MCP.so
Sign In

mcp-mysql-server

@tonycai

About mcp-mysql-server

MySQL Database Integration using Python script with configurable access controls and schema inspection, using stdio mode to suitable local deployment.

Config

Add this server to your MCP-compatible client using the configuration below.

{
  "mcpServers": {
    "mcp-mysql-server-tonycai": {
      "command": "python",
      "args": [
        "mcp-mysql-server.py",
        "--config",
        "config.ini"
      ]
    }
  }
}

Tools

No tools detected

We auto-extract tools from the README. The maintainer can list them under a ## Tools heading to populate this section.

Overview

What is mcp-mysql-server?

mcp-mysql-server is a Python script that provides a command-line interface for interacting with a local MySQL database via standard input/output (stdio) using FastMCP. It allows querying, inspecting schema, and performing data operations on a MySQL database, designed for local development environments.

How to use mcp-mysql-server?

Install Python 3.x and a local MySQL server. Install dependencies with pip install -r requirements.txt. Create a config.ini file with MySQL connection parameters (host, user, password, database; port optional). Run the script using python mcp-mysql-server.py --config config.ini. The script exposes tools such as test_connection, list_tables, read_table, write_table, get_table_schema, and execute_sql. Docker Compose support is also available.

Key features of mcp-mysql-server

  • Execute SQL SELECT statements and view results
  • Insert data into tables with write_table tool
  • List all tables with list_tables tool
  • Display table schema with get_table_schema tool
  • Test database connectivity and get server info
  • Configurable access via connection parameters file

Use cases of mcp-mysql-server

  • Exploring and inspecting the schema of a local MySQL database
  • Running custom SQL queries from the command line
  • Inserting rows into tables during development
  • Scripting database interactions in automation workflows
  • Testing database connectivity and server details

FAQ from mcp-mysql-server

How do I configure mcp-mysql-server?

Create a config.ini file in the same directory (or specify its path with --config) containing [mysql] section with host, user, password, database, and optionally port (defaults to 3306).

What tools does mcp-mysql-server expose?

It exposes six tools: test_connection, list_tables, read_table, write_table, get_table_schema, and execute_sql. Each performs a specific database operation.

Does mcp-mysql-server support Docker?

Yes. Use docker-compose up -d to start a MySQL container with sample data and the MCP MySQL Server container. A special configuration file (config.docker.ini) is used for Docker.

What are the runtime requirements?

Python 3.x, a local MySQL server instance, and the Python libraries listed in requirements.txt (installed via pip install -r requirements.txt).

How can I run the unit tests?

Run cp mcp-mysql-server.py mcp_mysql_server.py && python -m unittest tests.py locally. For Docker, use docker-compose -f docker-compose.test.yml up --build. Tests use mocking and do not require a real database.

Frequently asked questions

How do I configure mcp-mysql-server?

Create a `config.ini` file in the same directory (or specify its path with `--config`) containing `[mysql]` section with `host`, `user`, `password`, `database`, and optionally `port` (defaults to 3306).

What tools does mcp-mysql-server expose?

It exposes six tools: `test_connection`, `list_tables`, `read_table`, `write_table`, `get_table_schema`, and `execute_sql`. Each performs a specific database operation.

Does mcp-mysql-server support Docker?

Yes. Use `docker-compose up -d` to start a MySQL container with sample data and the MCP MySQL Server container. A special configuration file (`config.docker.ini`) is used for Docker.

What are the runtime requirements?

Python 3.x, a local MySQL server instance, and the Python libraries listed in `requirements.txt` (installed via `pip install -r requirements.txt`).

How can I run the unit tests?

Run `cp mcp-mysql-server.py mcp_mysql_server.py && python -m unittest tests.py` locally. For Docker, use `docker-compose -f docker-compose.test.yml up --build`. Tests use mocking and do not require a real database.

Comments

More Databases MCP servers