mysql-mcp-server-all
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MYSQL_HOST | Yes | Database host | |
| MYSQL_PORT | No | Database port | 3306 |
| MYSQL_USER | Yes | Database user | |
| MCP_HTTP_HOST | No | Listen host for sse/streamable-http | 127.0.0.1 |
| MCP_HTTP_PORT | No | Listen port for sse/streamable-http | 8000 |
| MCP_TRANSPORT | No | Transport: stdio, sse, or streamable-http | stdio |
| MCP_HTTP_TOKEN | No | Bearer token for streamable-http | |
| MYSQL_DATABASE | No | Default database. Omit for multi-database mode | |
| MYSQL_PASSWORD | No | Database password | |
| MYSQL_CONNECT_TIMEOUT | No | Connection timeout in seconds | 10 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| execute_sqlA | Execute a read-only SQL query (SELECT / SHOW / DESCRIBE / EXPLAIN / WITH). Returns rows as JSON. Single statements only. |
| get_schema_infoB | Return column metadata (name, type, nullability, key, default) for a table. Accepts database.table notation for cross-database lookups. |
| get_table_sampleA | Fetch a representative sample of rows (max 20) from a table. Accepts database.table notation for cross-database lookups. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 3 tools
The tools are largely distinct: execute_sql runs arbitrary read-only queries, get_schema_info returns column metadata, and get_table_sample fetches sample rows. However, execute_sql can also perform SELECT queries that return sample data, creating some overlap with get_table_sample.
All tool names follow a consistent verb_noun pattern in snake_case: execute_sql, get_schema_info, get_table_sample. This makes the toolset predictable and easy to navigate.
Three tools is a reasonable count for a focused read-only MySQL exploration server. While on the smaller side, each tool serves a clear purpose and the set does not feel overly thin.
The domain is well-covered for read-only database exploration: arbitrary SQL queries, schema metadata, and sample rows cover the core needs. Missing functionality like listing all tables can be achieved via execute_sql, so there are no major gaps.