mysql_mcp_server
MySQL MCP Server connects AI applications to a MySQL database through MCP. The README lists its features: tables are exposed as resources, table contents can be read, SQL queries run with error handling, access is configured through environment variables, and operations are logged. It is meant to be launched by an MCP client such as Claude Desktop rather than run as a standalone program.
Setup is `pip install mysql-mcp-server` or an install through Smithery for Claude Desktop. You then set `MYSQL_HOST`, `MYSQL_PORT` (default 3306), `MYSQL_USER`, `MYSQL_PASSWORD` and `MYSQL_DATABASE`, and add a server entry to `claude_desktop_config.json`, for example with `uvx --from mysql-mcp-server mysql_mcp_server`. For debugging the README suggests the MCP Inspector instead of running the module directly, and the repo includes tests run with `pytest`.
The README is direct about risk. It says to create a dedicated MySQL user with minimal permissions, never use root or admin accounts, restrict access to necessary operations, enable logging, and consider query whitelisting in production, and it links a SECURITY.md with a restricted-user setup. The licence is MIT and the last push was 2026-08-02. This review is based on the README and repository data; we have not run it ourselves.
Features
Why choose it
Trade-offs
Maintenance check
- Last commit
- 2026-08-02
- Commits, last 90 days
- 5
- Releases, last 90 days
- 2
- Latest release
- v0.4.4 (2026-07-30)
- Open issues
- 6
- Recent issues with at least one comment
- 25/30
Oldest week on the left; the latest four weeks are orange. Source: GitHub commit activity.
Status rule: archived on GitHub = Archived; last commit within 90 days = Active; 91 to 365 days = Slowing; older = Stale. All figures come from the GitHub API on the date shown.
Most discussed open issues
- #20 Can this server support chunked select (aka cursor)?5 comments · 2025-03-28
- #102 Missing output encoding in `get_schema_info`: a rejected `table_name` is echoed raw in the error (and in the log)0 comments · 2026-10-14
- #101 Added 1-click config generator and setup guide for mysql_mcp_server on MCP ServerList0 comments · 2026-10-12
- #99 Tool name conflicts when running multiple MCP server instances with different databases0 comments · 2026-09-16
- #98 Proposal: optional OAuth 2.1 authentication for the SSE transport, with the read scope enforced by MySQL0 comments · 2026-09-08
Issue titles are quoted from GitHub. Open the link to check whether a problem still applies to the version you use.
Who it fits
- You only need MySQL and want a small server you can install with pip install mysql-mcp-server.
- You use Claude Desktop and want credentials passed as environment variables (MYSQL_HOST, MYSQL_USER and so on).
- You want a short codebase to read: the README and SECURITY.md spell out least-privilege setup.
- You need anything beyond MySQL, or a query whitelist: the README only suggests adding one for production.
- You want to limit the model to reviewed operations; the server can run arbitrary SQL unless the MySQL user is read-only.
- You handle sensitive data: query results are sent to the model provider.
How it differs
DBHub also supports PostgreSQL, SQL Server, MariaDB and SQLite and lets you define custom parameterised tools. This server is MySQL only and simpler, with no built-in way to restrict queries beyond the database user's own privileges.
Compatibility
Quick start
Use cases
Alternatives
Featured in these lists
Comments
No comments yet. Be the first!