mysql-mcp
Provides read-only SQL query capabilities against MySQL databases, allowing agents to list available datasources and execute SELECT queries.
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-mcpshow me the first 10 rows from the users table"
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-mcp
mysql-mcp is a read-only MySQL MCP server that can be used by Codex, Claude Code, and other Model Context Protocol clients.
It exposes two tools:
query_mysql: execute a read-only SQL query against a configured datasourcelist_datasources: list the available datasource names from the config file
Features
Read-only query workflow through MCP stdio transport
Multiple datasource definitions in one YAML config file
Simple installation from PyPI once published
Works with Codex and Claude Code global MCP configuration
Installation
From PyPI
pipx install mysql-mcpOr with uv:
uv tool install mysql-mcpLocal development
python3 -m pip install -e ".[dev]"Configuration
Create a YAML config file. You can start from config.example.yaml:
datasources:
dev:
host: "127.0.0.1"
port: 3306
user: "mysql"
password: "${MYSQL_PASSWORD}"
database: "app_dev"
pool_size: 5
pool_name: "dev_pool"
query:
default_timeout: 30
max_rows: 10000The MCP process must receive any referenced environment variables such as MYSQL_PASSWORD.
Running the server
cp config.example.yaml config.yaml
mysql-mcp /absolute/path/to/config.yamlCodex setup
Add it as a global MCP server:
codex mcp add mysql-mcp \
--env MYSQL_PASSWORD=your-password \
-- mysql-mcp /absolute/path/to/config.yamlIf you prefer not to preinstall the package, you can also run it through uvx:
codex mcp add mysql-mcp \
--env MYSQL_PASSWORD=your-password \
-- uvx mysql-mcp /absolute/path/to/config.yamlClaude Code setup
Add this to ~/.claude/settings.json:
{
"mcpServers": {
"mysql-mcp": {
"type": "stdio",
"command": "mysql-mcp",
"args": ["/absolute/path/to/config.yaml"],
"env": {
"MYSQL_PASSWORD": "your-password"
}
}
}
}Or use uvx:
{
"mcpServers": {
"mysql-mcp": {
"type": "stdio",
"command": "uvx",
"args": ["mysql-mcp", "/absolute/path/to/config.yaml"],
"env": {
"MYSQL_PASSWORD": "your-password"
}
}
}
}Publish to PyPI
Update the version in
pyproject.toml.Build the package:
python3 -m buildUpload to TestPyPI first:
python3 -m twine upload --repository testpypi dist/*Upload to PyPI:
python3 -m twine upload dist/*Development
Run tests:
pytest -qBuild artifacts:
python3 -m buildThis server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/yufei8807/mysql-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server