{"_id":"@bossforce.ai/mcp-mysql","name":"@bossforce.ai/mcp-mysql","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@bossforce.ai/mcp-mysql","version":"0.1.0","type":"module","repository":{"type":"git","url":"git+https://github.com/bossforce-ai/bossforce-tools.git","directory":"mcps/databases-data/mysql"},"publishConfig":{"access":"public"},"bin":{"bossforce-mcp-mysql":"dist/bin.js"},"dependencies":{"mysql2":"^3.11.5","zod":"^4.4.3","@bossforce.ai/mcp-core":"0.3.0"},"devDependencies":{"@bossforce.ai/mcp-testkit":"0.0.0"},"scripts":{"build":"tsc -p tsconfig.json","test":"node --test \"dist/*.test.js\""},"_id":"@bossforce.ai/mcp-mysql@0.1.0","description":"MCP server for **MySQL**, built on the [`mysql2`](https://sidorares.github.io/node-mysql2/) driver. Read-only by default — a good fit for reporting and data lookups.","bugs":{"url":"https://github.com/bossforce-ai/bossforce-tools/issues"},"homepage":"https://github.com/bossforce-ai/bossforce-tools#readme","_integrity":"sha512-sze8MHjXK8zBb2b+TNC4wX673fS50JoNvkd+ilqoRvunyhabAGnQo96ffeDKqyK9tv+H7wBONfozsCNxQZvFKg==","_resolved":"C:\\Users\\user\\AppData\\Local\\Temp\\416e72c6f870310b5b4950166c8ecd87\\bossforce.ai-mcp-mysql-0.1.0.tgz","_from":"file:bossforce.ai-mcp-mysql-0.1.0.tgz","_nodeVersion":"22.18.0","_npmVersion":"10.9.3","dist":{"integrity":"sha512-sze8MHjXK8zBb2b+TNC4wX673fS50JoNvkd+ilqoRvunyhabAGnQo96ffeDKqyK9tv+H7wBONfozsCNxQZvFKg==","shasum":"fb5245829c94c732627e620f3caea6d97e2aa612","tarball":"https://registry.npmjs.org/@bossforce.ai/mcp-mysql/-/mcp-mysql-0.1.0.tgz","fileCount":26,"unpackedSize":20842,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIEpO26ESgJhwlRFn/mo4zGLV9n3KtMXy4DtKfkO4tbtnAiAH+saQEaYtzz7TMBOMb2Vsc//TbVU+GDMlgycQFjXdtw=="}]},"_npmUser":{"name":"bossforce.ai","email":"bossforce.ai@gmail.com"},"directories":{},"maintainers":[{"name":"bossforce.ai","email":"bossforce.ai@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/mcp-mysql_0.1.0_1781237931882_0.5903062564258943"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-12T04:18:51.727Z","0.1.0":"2026-06-12T04:18:52.015Z","modified":"2026-06-12T04:18:52.187Z"},"maintainers":[{"name":"bossforce.ai","email":"bossforce.ai@gmail.com"}],"description":"MCP server for **MySQL**, built on the [`mysql2`](https://sidorares.github.io/node-mysql2/) driver. Read-only by default — a good fit for reporting and data lookups.","homepage":"https://github.com/bossforce-ai/bossforce-tools#readme","repository":{"type":"git","url":"git+https://github.com/bossforce-ai/bossforce-tools.git","directory":"mcps/databases-data/mysql"},"bugs":{"url":"https://github.com/bossforce-ai/bossforce-tools/issues"},"readme":"# @bossforce.ai/mcp-mysql\n\nMCP server for **MySQL**, built on the [`mysql2`](https://sidorares.github.io/node-mysql2/)\ndriver. Read-only by default — a good fit for reporting and data lookups.\n\n## Credentials\n\n| Env                       | How to obtain                                                               |\n| ------------------------- | --------------------------------------------------------------------------- |\n| `MYSQL_CONNECTION_STRING` | `mysql://user:password@host:port/database` for your database.               |\n| `MYSQL_ALLOW_WRITES`      | Optional. Set to `true` to permit writes; omit for read-only (recommended). |\n\nThe connection string is read lazily, so the server boots and answers\n`tools/list` without it; calls fail with an `auth` error until it is set. For\ndefence in depth, point it at a **read-only database user** when writes aren't\nneeded.\n\n## Tools\n\n| Tool             | Arguments               | Returns                       |\n| ---------------- | ----------------------- | ----------------------------- |\n| `query`          | `sql`, `params?`        | `{ rows, row_count, fields }` |\n| `list_tables`    | `schema?` (default: db) | `{ tables: [...] }`           |\n| `describe_table` | `table`, `schema?`      | `{ columns: [...] }`          |\n\n`list_tables` and `describe_table` default to the connection's database via\n`DATABASE()`.\n\n### Safety\n\nBy default every statement runs inside a `START TRANSACTION READ ONLY`, so any\n`INSERT`/`UPDATE`/`DELETE`/DDL fails at the database (error `1792`, SQLSTATE\n`25006`). Set `MYSQL_ALLOW_WRITES=true` to allow writes. Always pass\nuser-supplied values through `params` (`?`) rather than concatenating them into\nthe SQL.\n\n## Develop\n\n```bash\npnpm --filter @bossforce.ai/mcp-mysql build\npnpm --filter @bossforce.ai/mcp-mysql test\n```\n\nTests inject a fake query implementation, so they run without a real database.\nRegenerate the tools/list snapshot after an intentional signature change:\n\n```bash\nUPDATE_SNAPSHOTS=1 pnpm --filter @bossforce.ai/mcp-mysql test\n```\n","readmeFilename":"README.md","_rev":"1-c3b53e095f84cf5d95e2d0424322c4e5"}