mcp-sequel
MCP server for Claude that connects to MySQL, MariaDB, and SQLite databases. Query your databases using natural language.
README
mcp-sequel
MCP server for Claude that connects to MySQL, MariaDB, and SQLite databases. Query your databases using natural language. Supports multiple named connections, SSH tunnels, readonly mode, and per-connection row limits.
Install & Registration
Tip: ask Claude to read this README and set up the server for you.
Option 1: uvx (recommended) — no installation needed, always runs the latest version:
claude mcp add mcp-sequel uvx mcp-sequel
Option 2: from cloned repository:
git clone https://github.com/eukos/mcp-sequel
claude mcp add mcp-sequel uv run --directory /path/to/mcp-sequel mcp-sequel
Configuration
Tip: ask Claude to read this README and create a connection config for you.
One file per connection in ~/.config/mcp-sequel/. The filename (without .json) becomes the connection name.
~/.config/mcp-sequel/
├── production.json
├── staging.json
└── local.json
Each file is one connection. Examples:
MySQL / MariaDB
{
"type": "mysql",
"host": "db.example.com",
"port": 3306,
"user": "analyst",
"password": "secret",
"database": "myapp",
"readonly": true,
"row_limit": 1000,
"description": "Production replica, analytics only"
}
| Field | Required | Default | Description |
|---|---|---|---|
type |
yes | — | "mysql" or "mariadb" |
host |
yes | — | hostname or IP |
user |
yes | — | database user |
password |
yes | — | database password |
port |
no | 3306 |
TCP port |
database |
no | — | default database; can be overridden per query |
readonly |
no | true |
if true, only SELECT/SHOW/DESCRIBE/EXPLAIN are allowed |
row_limit |
no | 1000 |
max rows returned; null for no limit |
description |
no | — | human-readable label shown in list_connections |
ssh_tunnel |
no | — | SSH tunnel config (see below); routes the connection through a bastion host |
MySQL via SSH tunnel
Use ssh_tunnel when the database is only reachable through a bastion/jump host. host and port in the top-level config refer to the DB as seen from the SSH server (commonly localhost).
With a key file (most common):
{
"type": "mysql",
"host": "localhost",
"port": 3306,
"user": "reader",
"password": "secret",
"database": "myapp",
"ssh_tunnel": {
"host": "bastion.example.com",
"user": "ubuntu",
"key_file": "~/.ssh/id_rsa"
}
}
With an SSH password:
{
"type": "mysql",
"host": "localhost",
"port": 3306,
"user": "reader",
"password": "secret",
"ssh_tunnel": {
"host": "bastion.example.com",
"user": "ubuntu",
"password": "sshpass"
}
}
| Field | Required | Default | Description |
|---|---|---|---|
host |
yes | — | SSH server hostname or IP |
user |
yes | — | SSH username |
key_file |
no* | — | path to private key file (~ expanded) |
password |
no* | — | SSH password (if not using key file) |
port |
no | 22 |
SSH server port |
* at least one of key_file or password should be provided.
SQLite
{
"type": "sqlite",
"path": "/data/analytics.db",
"readonly": true,
"row_limit": 1000,
"description": "Local analytics database"
}
| Field | Required | Default | Description |
|---|---|---|---|
type |
yes | — | "sqlite" |
path |
yes | — | absolute path to the .db file |
readonly |
no | true |
if true, opens connection with ?mode=ro (OS-level enforcement) |
row_limit |
no | 1000 |
max rows returned; null for no limit |
description |
no | — | human-readable label shown in list_connections |
Set permissions to owner-only:
chmod 600 ~/.config/mcp-sequel/*.json
Usage
After registering, restart Claude to load the server. Then try:
- "List available database connections"
- "Show databases for staging"
- "How many customers do we have on production?"
- "Show me the schema of the orders table"
- "Query local: SELECT * FROM users LIMIT 10"
- "Query production: show me the top 10 users by order count"
License
MIT
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.