Skip to main content
Glama
myheisenberg

mysql-mcp-server

by myheisenberg

๐Ÿ”ง MySQL MCP Server

A Model Context Protocol (MCP) server for MySQL database operations. Provides 4 powerful tools for database interaction through any MCP-compatible client.

โœจ Features

  • ๐Ÿ” Execute SQL Queries - Run any SELECT, INSERT, UPDATE, DELETE commands

  • ๐Ÿ“Š List Databases - View all available databases

  • ๐Ÿ“‹ List Tables - Show tables in any database

  • ๐Ÿ—๏ธ Describe Tables - Get detailed table structure information

  • ๐Ÿ”’ Secure - Environment-based configuration, no hardcoded credentials

  • โšก Fast - Built with TypeScript and connection pooling

Related MCP server: MariaDB-MCP

๐Ÿš€ Quick Start

Installation

# Clone the repository
git clone https://github.com/myheisenberg/mysql-mcp-server.git
cd mysql-mcp-server

# Install dependencies
npm install

# Build the project
npm run build

Configuration

The server uses environment variables for database configuration:

DB_HOST=localhost        # MySQL host (default: localhost)
DB_USER=root            # MySQL username (default: root)
DB_PASSWORD=            # MySQL password (default: empty)
DB_PORT=3306           # MySQL port (default: 3306)

๐Ÿ“– Usage

With Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "mysql": {
      "command": "node",
      "args": ["path/to/mysql-mcp-server/dist/index.js"],
      "env": {
        "DB_HOST": "localhost",
        "DB_USER": "your_username",
        "DB_PASSWORD": "your_password",
        "DB_PORT": "3306"
      }
    }
  }
}

With Cursor IDE

Add to your MCP configuration:

{
  "mcpServers": {
    "mysql": {
      "command": "node",
      "args": ["path/to/mysql-mcp-server/dist/index.js"],
      "env": {
        "DB_HOST": "localhost",
        "DB_USER": "your_username", 
        "DB_PASSWORD": "your_password",
        "DB_PORT": "3306"
      }
    }
  }
}

๐Ÿ› ๏ธ Available Tools

1. mysql_query

Execute any MySQL query and get formatted results.

Example: "Run a SELECT query on the users table"

2. mysql_databases

List all available databases on the MySQL server.

Example: "Show me all databases"

3. mysql_tables

List all tables in a specific database.

Example: "What tables are in the blog database?"

4. mysql_describe

Get detailed information about a table's structure.

Example: "Describe the structure of the users table"

๐Ÿ”ง Development

# Install dependencies
npm install

# Development mode (watch for changes)
npm run dev

# Build for production
npm run build

# Start the server
npm start

๐Ÿ“ฆ Project Structure

mysql-mcp-server/
โ”œโ”€โ”€ src/
โ”‚   โ””โ”€โ”€ index.ts          # Main MCP server implementation
โ”œโ”€โ”€ dist/                 # Compiled JavaScript (auto-generated)
โ”œโ”€โ”€ package.json          # Project dependencies and scripts
โ”œโ”€โ”€ tsconfig.json         # TypeScript configuration
โ”œโ”€โ”€ .gitignore           # Git ignore rules
โ””โ”€โ”€ README.md            # This file

๐Ÿ”’ Security

  • No hardcoded credentials - All database connection details come from environment variables

  • Connection pooling - Efficient and secure database connections

  • Error handling - Proper error messages without exposing sensitive information

๐Ÿค Contributing

  1. Fork the repository

  2. Create your feature branch (git checkout -b feature/amazing-feature)

  3. Commit your changes (git commit -m 'Add some amazing feature')

  4. Push to the branch (git push origin feature/amazing-feature)

  5. Open a Pull Request

๐Ÿ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

๐Ÿ™ Acknowledgments

๐Ÿ“ž Support

If you encounter any issues or have questions:

  1. Check the Issues page

  2. Create a new issue if your problem isn't already reported

  3. Provide as much detail as possible including error messages and configuration


Made with โค๏ธ for the MCP community

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

No tool schema history has been recorded yet.

Maintenance

ActivityInactive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables interaction with MySQL databases through MCP, supporting query execution, table operations (insert, update, delete), and schema inspection for natural language database management.
    102
    MIT
  • F
    license
    A
    quality
    B
    maintenance
    Enables interaction with MariaDB/MySQL databases via MCP, supporting read-only mode, SQL execution, and schema inspection.
    6
    -
  • A
    license
    Not graded
    quality
    C
    maintenance
    Provides MySQL database operations through MCP, enabling users to execute SQL queries, retrieve table structures, and check database connectivity using natural language.
    102
    Apache 2.0
  • A
    license
    A
    quality
    A
    maintenance
    Enables secure interaction with MySQL databases through MCP, offering tools for SQL queries, schema inspection, and data sampling, with support for multiple databases, SSH tunnels, and safe write operations.
    3
    1
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/myheisenberg/mysql-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server