Skip to main content
Glama
PedroUrday

MySQL MCP Server

by PedroUrday
README.md
# MySQL MCP Server

This project is an MCP (Model Context Protocol) server for AI models that allows executing SQL queries against a MySQL database.

## What it does

The server exposes a tool that sends a single SQL statement to a MySQL database and returns the result as JSON. It also handles connection and execution errors.

## Requirements

- Node.js
- npm

## Installation

Install the dependencies with:

```bash
npm install
```

## Configuration

Before running the server, you should change the connection constants to match your MySQL setup:

```javascript
const DB_HOSTNAME = "localhost";
const DB_USERNAME = "root";
const DB_PASSWORD = "123456";
```

Replace DB_HOSTNAME, DB_USERNAME, and DB_PASSWORD with the values required by your environment.

## Usage with MCP clients

This server is intended to be started by MCP-compatible clients; you do not need to run `node main.js` manually. Properly configured clients will start the server when needed. Below are example client configurations (use relative paths or environment variables; replace `/path/to/...` with the correct path on your system).

- Continue (VSCode extension) — example `config.yaml`:

```yaml
mcpServers:
	- name: MySQL MCP server
		command: npx
		args:
			- -y
			- node
			- /path/to/mcp_servers/mysql/main.js
		env: {}
```

- Claude (desktop) — example `claude_desktop_config.json`:

```json
{
	"mcpServers": {
		"mysql": {
			"command": "npx",
			"args": ["-y", "node", "/path/to/mcp_servers/mysql/main.js"]
		}
	}
}
```

- GitHub Copilot (VSCode) — example `settings.json` (if the extension supports direct entries):

```json
{
	"github.copilot.mcpServers": {
		"mysql": {
			"command": "npx",
			"args": ["-y", "node", "/path/to/mcp_servers/mysql/main.js"]
		}
	}
}
```

- ChatGPT (clients that support MCP) — generic example:

```json
{
	"mcpServers": {
		"mysql": {
			"command": "npx",
			"args": ["-y", "node", "/path/to/mcp_servers/mysql/main.js"]
		}
	}
}
```

- Generic MCP client (command line):

```bash
# A client can launch the server this way if it must be started manually
npx -y node /path/to/mcp_servers/mysql/main.js
```

Notes:
- Replace paths and credentials with secure values for your environment.
- Ignore any configuration entries that contain machine-specific absolute paths; use relative paths or variables instead.
- Check the documentation of the MCP client you use for the exact configuration key names; the examples above are common templates.

Once started, it can be used by MCP-compatible clients.