MySQL (read-only, switchable)
Rank #22,459io.github.shibbirweb/mcp-mysql-read-only
Read-only MySQL access, with the database and server switchable mid-conversation.
What you can do with MySQL (read-only, switchable)
MySQL (read-only, switchable) is a Model Context Protocol (MCP) server published by shibbirweb. It ranks #22,459 of 176,402 active servers on MCP Toplist. MySQL (read-only, switchable) is listed across 2 registries — Official MCP and Glama, with 3 tracked versions. It was first listed on Sep 17, 2026 and most recently updated on Sep 24, 2026.
Not verifiedMCP Toplist has not yet written a checked profile for this server, so the paragraph above is assembled from registry data only. The repository README is the authority on what it does.
What MySQL (read-only, switchable) can and cannot do
Not verifiedMCP Toplist has not catalogued this server's tools or limitations. The repository README lists them.
What you need before using MySQL (read-only, switchable)
The registry listing declares no required environment variables or authentication. This is declared metadata, not a verified install — the repository README is the authority.
Declared by Glama, last synced Nov 14, 2026. Not independently verified by MCP Toplist.
- MYSQL_HOST · optional
- MYSQL_PORT · optional
- MYSQL_USER · optional
- MYSQL_PASSWORD · optional
- MYSQL_DATABASE · optional
- MYSQL_PROFILES · optional
- MYSQL_DEFAULT_PROFILE · optional
- MYSQL_CONNECT_TIMEOUT_MS · optional
- MYSQL_QUERY_TIMEOUT_MS · optional
Connect MySQL (read-only, switchable) and confirm it works
claude mcp add mcp-mysql-read-only -e "MYSQL_HOST=<your MYSQL_HOST>" -e "MYSQL_PORT=<your MYSQL_PORT>" -e "MYSQL_USER=<your MYSQL_USER>" -e "MYSQL_PASSWORD=<your MYSQL_PASSWORD>" -e "MYSQL_DATABASE=<your MYSQL_DATABASE>" -e "MYSQL_PROFILES=<your MYSQL_PROFILES>" -e "MYSQL_DEFAULT_PROFILE=<your MYSQL_DEFAULT_PROFILE>" -e "MYSQL_CONNECT_TIMEOUT_MS=<your MYSQL_CONNECT_TIMEOUT_MS>" -e "MYSQL_QUERY_TIMEOUT_MS=<your MYSQL_QUERY_TIMEOUT_MS>" -- npx -y @shibbirweb/mcp-mysql-read-onlyReplace each placeholder with your own value before saving.
claude mcp add mcp-mysql-read-only -e "MYSQL_HOST=<your MYSQL_HOST>" -e "MYSQL_PORT=<your MYSQL_PORT>" -e "MYSQL_USER=<your MYSQL_USER>" -e "MYSQL_PASSWORD=<your MYSQL_PASSWORD>" -e "MYSQL_DATABASE=<your MYSQL_DATABASE>" -e "MYSQL_PROFILES=<your MYSQL_PROFILES>" -e "MYSQL_DEFAULT_PROFILE=<your MYSQL_DEFAULT_PROFILE>" -e "MYSQL_CONNECT_TIMEOUT_MS=<your MYSQL_CONNECT_TIMEOUT_MS>" -e "MYSQL_QUERY_TIMEOUT_MS=<your MYSQL_QUERY_TIMEOUT_MS>" -- docker run -i --rm docker.io/shibbirweb/mcp-mysql-read-only:1.1.6Replace each placeholder with your own value before saving.
[mcp_servers.mcp-mysql-read-only]
command = "npx"
args = ["-y", "@shibbirweb/mcp-mysql-read-only"]
[mcp_servers.mcp-mysql-read-only.env]
MYSQL_HOST = "<your MYSQL_HOST>"
MYSQL_PORT = "<your MYSQL_PORT>"
MYSQL_USER = "<your MYSQL_USER>"
MYSQL_PASSWORD = "<your MYSQL_PASSWORD>"
MYSQL_DATABASE = "<your MYSQL_DATABASE>"
MYSQL_PROFILES = "<your MYSQL_PROFILES>"
MYSQL_DEFAULT_PROFILE = "<your MYSQL_DEFAULT_PROFILE>"
MYSQL_CONNECT_TIMEOUT_MS = "<your MYSQL_CONNECT_TIMEOUT_MS>"
MYSQL_QUERY_TIMEOUT_MS = "<your MYSQL_QUERY_TIMEOUT_MS>"Add to ~/.codex/config.toml. Replace each placeholder with your own value before saving.
[mcp_servers.mcp-mysql-read-only]
command = "docker"
args = ["run", "-i", "--rm", "docker.io/shibbirweb/mcp-mysql-read-only:1.1.6"]
[mcp_servers.mcp-mysql-read-only.env]
MYSQL_HOST = "<your MYSQL_HOST>"
MYSQL_PORT = "<your MYSQL_PORT>"
MYSQL_USER = "<your MYSQL_USER>"
MYSQL_PASSWORD = "<your MYSQL_PASSWORD>"
MYSQL_DATABASE = "<your MYSQL_DATABASE>"
MYSQL_PROFILES = "<your MYSQL_PROFILES>"
MYSQL_DEFAULT_PROFILE = "<your MYSQL_DEFAULT_PROFILE>"
MYSQL_CONNECT_TIMEOUT_MS = "<your MYSQL_CONNECT_TIMEOUT_MS>"
MYSQL_QUERY_TIMEOUT_MS = "<your MYSQL_QUERY_TIMEOUT_MS>"Add to ~/.codex/config.toml. Replace each placeholder with your own value before saving.
{
"mcpServers": {
"mcp-mysql-read-only": {
"command": "npx",
"args": [
"-y",
"@shibbirweb/mcp-mysql-read-only"
],
"env": {
"MYSQL_HOST": "<your MYSQL_HOST>",
"MYSQL_PORT": "<your MYSQL_PORT>",
"MYSQL_USER": "<your MYSQL_USER>",
"MYSQL_PASSWORD": "<your MYSQL_PASSWORD>",
"MYSQL_DATABASE": "<your MYSQL_DATABASE>",
"MYSQL_PROFILES": "<your MYSQL_PROFILES>",
"MYSQL_DEFAULT_PROFILE": "<your MYSQL_DEFAULT_PROFILE>",
"MYSQL_CONNECT_TIMEOUT_MS": "<your MYSQL_CONNECT_TIMEOUT_MS>",
"MYSQL_QUERY_TIMEOUT_MS": "<your MYSQL_QUERY_TIMEOUT_MS>"
}
}
}
}Add to claude_desktop_config.json (Settings → Developer → Edit Config). Replace each placeholder with your own value before saving.
{
"mcpServers": {
"mcp-mysql-read-only": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"docker.io/shibbirweb/mcp-mysql-read-only:1.1.6"
],
"env": {
"MYSQL_HOST": "<your MYSQL_HOST>",
"MYSQL_PORT": "<your MYSQL_PORT>",
"MYSQL_USER": "<your MYSQL_USER>",
"MYSQL_PASSWORD": "<your MYSQL_PASSWORD>",
"MYSQL_DATABASE": "<your MYSQL_DATABASE>",
"MYSQL_PROFILES": "<your MYSQL_PROFILES>",
"MYSQL_DEFAULT_PROFILE": "<your MYSQL_DEFAULT_PROFILE>",
"MYSQL_CONNECT_TIMEOUT_MS": "<your MYSQL_CONNECT_TIMEOUT_MS>",
"MYSQL_QUERY_TIMEOUT_MS": "<your MYSQL_QUERY_TIMEOUT_MS>"
}
}
}
}Add to claude_desktop_config.json (Settings → Developer → Edit Config). Replace each placeholder with your own value before saving.
{
"mcpServers": {
"mcp-mysql-read-only": {
"command": "npx",
"args": [
"-y",
"@shibbirweb/mcp-mysql-read-only"
],
"env": {
"MYSQL_HOST": "<your MYSQL_HOST>",
"MYSQL_PORT": "<your MYSQL_PORT>",
"MYSQL_USER": "<your MYSQL_USER>",
"MYSQL_PASSWORD": "<your MYSQL_PASSWORD>",
"MYSQL_DATABASE": "<your MYSQL_DATABASE>",
"MYSQL_PROFILES": "<your MYSQL_PROFILES>",
"MYSQL_DEFAULT_PROFILE": "<your MYSQL_DEFAULT_PROFILE>",
"MYSQL_CONNECT_TIMEOUT_MS": "<your MYSQL_CONNECT_TIMEOUT_MS>",
"MYSQL_QUERY_TIMEOUT_MS": "<your MYSQL_QUERY_TIMEOUT_MS>"
}
}
}
}Add to ~/.cursor/mcp.json (global) or .cursor/mcp.json (per project). Replace each placeholder with your own value before saving.
{
"mcpServers": {
"mcp-mysql-read-only": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"docker.io/shibbirweb/mcp-mysql-read-only:1.1.6"
],
"env": {
"MYSQL_HOST": "<your MYSQL_HOST>",
"MYSQL_PORT": "<your MYSQL_PORT>",
"MYSQL_USER": "<your MYSQL_USER>",
"MYSQL_PASSWORD": "<your MYSQL_PASSWORD>",
"MYSQL_DATABASE": "<your MYSQL_DATABASE>",
"MYSQL_PROFILES": "<your MYSQL_PROFILES>",
"MYSQL_DEFAULT_PROFILE": "<your MYSQL_DEFAULT_PROFILE>",
"MYSQL_CONNECT_TIMEOUT_MS": "<your MYSQL_CONNECT_TIMEOUT_MS>",
"MYSQL_QUERY_TIMEOUT_MS": "<your MYSQL_QUERY_TIMEOUT_MS>"
}
}
}
}Add to ~/.cursor/mcp.json (global) or .cursor/mcp.json (per project). Replace each placeholder with your own value before saving.
{
"servers": {
"mcp-mysql-read-only": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@shibbirweb/mcp-mysql-read-only"
],
"env": {
"MYSQL_HOST": "<your MYSQL_HOST>",
"MYSQL_PORT": "<your MYSQL_PORT>",
"MYSQL_USER": "<your MYSQL_USER>",
"MYSQL_PASSWORD": "<your MYSQL_PASSWORD>",
"MYSQL_DATABASE": "<your MYSQL_DATABASE>",
"MYSQL_PROFILES": "<your MYSQL_PROFILES>",
"MYSQL_DEFAULT_PROFILE": "<your MYSQL_DEFAULT_PROFILE>",
"MYSQL_CONNECT_TIMEOUT_MS": "<your MYSQL_CONNECT_TIMEOUT_MS>",
"MYSQL_QUERY_TIMEOUT_MS": "<your MYSQL_QUERY_TIMEOUT_MS>"
}
}
}
}Save as .vscode/mcp.json in your workspace. Replace each placeholder with your own value before saving.
{
"servers": {
"mcp-mysql-read-only": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"docker.io/shibbirweb/mcp-mysql-read-only:1.1.6"
],
"env": {
"MYSQL_HOST": "<your MYSQL_HOST>",
"MYSQL_PORT": "<your MYSQL_PORT>",
"MYSQL_USER": "<your MYSQL_USER>",
"MYSQL_PASSWORD": "<your MYSQL_PASSWORD>",
"MYSQL_DATABASE": "<your MYSQL_DATABASE>",
"MYSQL_PROFILES": "<your MYSQL_PROFILES>",
"MYSQL_DEFAULT_PROFILE": "<your MYSQL_DEFAULT_PROFILE>",
"MYSQL_CONNECT_TIMEOUT_MS": "<your MYSQL_CONNECT_TIMEOUT_MS>",
"MYSQL_QUERY_TIMEOUT_MS": "<your MYSQL_QUERY_TIMEOUT_MS>"
}
}
}
}Save as .vscode/mcp.json in your workspace. Replace each placeholder with your own value before saving.
{
"mcpServers": {
"mcp-mysql-read-only": {
"command": "npx",
"args": [
"-y",
"@shibbirweb/mcp-mysql-read-only"
],
"env": {
"MYSQL_HOST": "<your MYSQL_HOST>",
"MYSQL_PORT": "<your MYSQL_PORT>",
"MYSQL_USER": "<your MYSQL_USER>",
"MYSQL_PASSWORD": "<your MYSQL_PASSWORD>",
"MYSQL_DATABASE": "<your MYSQL_DATABASE>",
"MYSQL_PROFILES": "<your MYSQL_PROFILES>",
"MYSQL_DEFAULT_PROFILE": "<your MYSQL_DEFAULT_PROFILE>",
"MYSQL_CONNECT_TIMEOUT_MS": "<your MYSQL_CONNECT_TIMEOUT_MS>",
"MYSQL_QUERY_TIMEOUT_MS": "<your MYSQL_QUERY_TIMEOUT_MS>"
}
}
}
}Add to ~/.codeium/windsurf/mcp_config.json. Replace each placeholder with your own value before saving.
{
"mcpServers": {
"mcp-mysql-read-only": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"docker.io/shibbirweb/mcp-mysql-read-only:1.1.6"
],
"env": {
"MYSQL_HOST": "<your MYSQL_HOST>",
"MYSQL_PORT": "<your MYSQL_PORT>",
"MYSQL_USER": "<your MYSQL_USER>",
"MYSQL_PASSWORD": "<your MYSQL_PASSWORD>",
"MYSQL_DATABASE": "<your MYSQL_DATABASE>",
"MYSQL_PROFILES": "<your MYSQL_PROFILES>",
"MYSQL_DEFAULT_PROFILE": "<your MYSQL_DEFAULT_PROFILE>",
"MYSQL_CONNECT_TIMEOUT_MS": "<your MYSQL_CONNECT_TIMEOUT_MS>",
"MYSQL_QUERY_TIMEOUT_MS": "<your MYSQL_QUERY_TIMEOUT_MS>"
}
}
}
}Add to ~/.codeium/windsurf/mcp_config.json. Replace each placeholder with your own value before saving.
{
"mcpServers": {
"mcp-mysql-read-only": {
"command": "npx",
"args": [
"-y",
"@shibbirweb/mcp-mysql-read-only"
],
"env": {
"MYSQL_HOST": "<your MYSQL_HOST>",
"MYSQL_PORT": "<your MYSQL_PORT>",
"MYSQL_USER": "<your MYSQL_USER>",
"MYSQL_PASSWORD": "<your MYSQL_PASSWORD>",
"MYSQL_DATABASE": "<your MYSQL_DATABASE>",
"MYSQL_PROFILES": "<your MYSQL_PROFILES>",
"MYSQL_DEFAULT_PROFILE": "<your MYSQL_DEFAULT_PROFILE>",
"MYSQL_CONNECT_TIMEOUT_MS": "<your MYSQL_CONNECT_TIMEOUT_MS>",
"MYSQL_QUERY_TIMEOUT_MS": "<your MYSQL_QUERY_TIMEOUT_MS>"
}
}
}
}Replace each placeholder with your own value before saving.
{
"mcpServers": {
"mcp-mysql-read-only": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"docker.io/shibbirweb/mcp-mysql-read-only:1.1.6"
],
"env": {
"MYSQL_HOST": "<your MYSQL_HOST>",
"MYSQL_PORT": "<your MYSQL_PORT>",
"MYSQL_USER": "<your MYSQL_USER>",
"MYSQL_PASSWORD": "<your MYSQL_PASSWORD>",
"MYSQL_DATABASE": "<your MYSQL_DATABASE>",
"MYSQL_PROFILES": "<your MYSQL_PROFILES>",
"MYSQL_DEFAULT_PROFILE": "<your MYSQL_DEFAULT_PROFILE>",
"MYSQL_CONNECT_TIMEOUT_MS": "<your MYSQL_CONNECT_TIMEOUT_MS>",
"MYSQL_QUERY_TIMEOUT_MS": "<your MYSQL_QUERY_TIMEOUT_MS>"
}
}
}
}Replace each placeholder with your own value before saving.
After adding the config, ask your client to list this server's tools. A tool list confirms the connection; an empty list or an error means the server did not start or needs credentials.
When to choose another server
No task-specific alternatives are catalogued for MySQL (read-only, switchable)yet; the list above is its publisher's other servers.
What changed, and when this was checked
- First listed
- Sep 17, 2026
- Latest version published
- Sep 24, 2026
- Version history
- 3 versions tracked (below)
- Requirements evidence
- Declared by Glama, last synced Nov 14, 2026. Not independently verified by MCP Toplist.
- Profile checked
- Not yet — purpose, capabilities and requirements above come from registry data only
- Ranking data as of
- Nov 14, 2026
- Glama ↗listed since Sep 17, 2026 · still listed
- Official MCP ↗listed since Sep 22, 2026 · still listed
Do you maintain MySQL (read-only, switchable)? to show as its verified maintainer and add your own summary, sign-in details and links. The rest of this page is read from the registry listings and from MCP Toplist's own connection check.
Available versions (3)
| Version | Published |
|---|---|
| 1.1.6 | Sep 24, 2026 |
| 1.1.5 | Sep 22, 2026 |
| 1.1.4 | Sep 22, 2026 |
Ranks ahead of 153,943 of 176,402 servers on MCP Toplist.
Show your rank
Maintain this server? Add the live rank badge to your README — it updates automatically as the leaderboard changes.
[](https://mcptoplist.com/server/io.github.shibbirweb%2Fmcp-mysql-read-only)<a href="https://mcptoplist.com/server/io.github.shibbirweb%2Fmcp-mysql-read-only"><img src="https://mcptoplist.com/badge/io.github.shibbirweb%2Fmcp-mysql-read-only.svg" alt="MCP Toplist: Top 25% of 176,402" /></a>Variants: append ?metric=score or ?metric=stars to the image URL.
Frequently asked questions
- Who maintains MySQL (read-only, switchable)?
- MySQL (read-only, switchable) is maintained by shibbirweb, which publishes 2 MCP servers (7 total versions) tracked on MCP Toplist.
- Is MySQL (read-only, switchable) listed on the Official MCP Registry?
- Yes — MySQL (read-only, switchable) is listed on the Official MCP Registry, alongside Glama.
- How many versions does MySQL (read-only, switchable) have?
- MCP Toplist tracks 3 versions of MySQL (read-only, switchable), most recently published on Sep 24, 2026.
- Where can I find the source code for MySQL (read-only, switchable)?
- The source code for MySQL (read-only, switchable) is hosted at github.com/shibbirweb/mcp-mysql-read-only.
Do you run this server?
Community projects list the MCP servers behind real agents and apps. Publish yours and this page will link to it.