Back to Home
FatherOfCurses icon

mcp_sql_demo

Verified Safe

by FatherOfCurses

Overview

Provides secure, multi-database access for LLMs to inspect MySQL schemas and execute SQL queries, supporting both read and configurable write operations with fine-grained schema-specific permissions.

Installation

Run Command
npx @benborla29/mcp-server-mysql

Environment Variables

  • MYSQL_HOST
  • MYSQL_PORT
  • MYSQL_USER
  • MYSQL_PASS
  • MYSQL_DB
  • ALLOW_INSERT_OPERATION
  • ALLOW_UPDATE_OPERATION
  • ALLOW_DELETE_OPERATION
  • ALLOW_DDL_OPERATION
  • SCHEMA_INSERT_PERMISSIONS
  • SCHEMA_UPDATE_PERMISSIONS
  • SCHEMA_DELETE_PERMISSIONS
  • SCHEMA_DDL_PERMISSIONS
  • MULTI_DB_WRITE_MODE
  • MYSQL_DISABLE_READ_ONLY_TRANSACTIONS
  • IS_REMOTE_MCP
  • REMOTE_SECRET_KEY
  • PORT
  • ENABLE_LOGGING
  • MYSQL_LOG_LEVEL
  • MYSQL_POOL_SIZE
  • MYSQL_QUERY_TIMEOUT
  • MYSQL_CACHE_TTL
  • MYSQL_RATE_LIMIT
  • MYSQL_MAX_QUERY_COMPLEXITY
  • MYSQL_SSL
  • MYSQL_SSL_REJECT_UNAUTHORIZED
  • MYSQL_SOCKET_PATH

Security Notes

The server demonstrates strong security practices: it defaults to read-only mode, enforces schema-specific permissions for write/DDL operations, uses prepared statements to prevent SQL injection (implicitly via mysql2 library), and requires a `REMOTE_SECRET_KEY` for remote access. The primary security risks would stem from misconfiguration (e.g., granting excessive MySQL user privileges, setting `MULTI_DB_WRITE_MODE=true` without granular schema permissions, or using a weak `REMOTE_SECRET_KEY`). The `scripts/setup-test-db.ts` file uses hardcoded `mcp_test_password` but this is strictly for a test environment.

Similar Servers

Stats

Interest Score30
Security Score9
Cost ClassMedium
Avg Tokens2000
Stars1
Forks0
Last Update2025-11-26

Tags

MySQLDatabaseMCP ServerSQLLLM ToolData ManagementPermissionsMulti-DBNode.js