There is no read-only mode here and no query validation — the server runs whatever SQL it is given with whatever permissions the configured credentials carry. That makes the account you put in mysql.js the security boundary: grant it exactly what you are willing to let an assistant do, and nothing more. Scoped that way it is a fast path to answering questions about your own data; unscoped it is a shell on your database.
A direct MySQL bridge. The assistant writes a query, the server runs it and formats the result for reading in the chat — including the structural queries you would otherwise type by hand.
- Execute any valid SQL query against the configured connection
- List databases and the tables inside them
- Read a table's structure, including its size
- Results formatted for reading in the conversation rather than returned raw
Node — clone or download the repository, install dependencies, and point the client at index.js. Published as database-tools, version 1.0.0, and installable through Smithery. Connection credentials live in the project's mysql.js file rather than in environment variables.
One command plus a key — npx -y @smithery/cli install @elber-code/database-tools --client claude, then supply credentials
