DATABASE DEVELOPMENT / AWS Labs
Aurora MySQL MCP
AWS Labs MCP server that turns natural language into SQL for Aurora MySQL on the same host as the client, with a keyword guard the README says is not a security boundary.
“Runs MySQL queries locally and, without --allow_write_query, rejects mutating keywords in the SQL text while telling operators to rely on the database role.”
01 / THE REASONING
Why this made the selection.
- The catalogue has no Aurora MySQL MCP server.
- The README states the read-only mode's limit in a way a catalogue can repeat without calling it a guarantee.
02 / THE REVIEW RECORD
What we actually inspected.
Source review has boundaries.
A clear record is more useful than a “safe” badge.
Material inspected
- src/mysql-mcp-server/README.md
- src/mysql-mcp-server/LICENSE
Our findings
- The server is local-only and converts questions into MySQL SQL for Aurora MySQL.
- The security section says read-only mode is a best-effort SQL-text safeguard, not a security boundary, and names mutating keywords it tries to reject.
- The sample MCP config includes --allow_write_query, and the README says to remove that flag to disable writes. The directory LICENSE is Apache-2.0.
Not established by this review
- The server was not started.
- No SQL was sent.
- The keyword guard was not tested against obfuscated statements.
The review applies to the material and revision named here. A newer upstream release can change its behavior.
03 / PUT IT TO WORK
Connect a server deliberately.
- Install uv and Python 3.10 and configure a client command of uvx awslabs.mysql-mcp-server@latest.
- Remove --allow_write_query from the example if writes should stay off.
- uvx awslabs.mysql-mcp-server@latest --ca_bundle /path/to/custom.pem is a CA override example, not recorded as the install command.
Before you start
- Python 3.10 and uv
- AWS credentials and an Aurora MySQL endpoint
- A MySQL user limited to the statements the workload needs
04 / FOLLOW THE EVIDENCE
The source trail.
Our notes are separate from the original resource.
Check upstream before adopting a new version.
- MySQL MCP README ↗Checked
https://github.com/awslabs/mcp/blob/8840003820a78dd018561d55c7ab12fcdd708464/src/mysql-mcp-server/README.md
Supports: security model and example flag
- Directory LICENSE ↗Checked
https://github.com/awslabs/mcp/blob/8840003820a78dd018561d55c7ab12fcdd708464/src/mysql-mcp-server/LICENSE
Supports: Apache-2.0 Version 2.0 header