Universal database MCP server supporting multiple database types including PostgreSQL, Redshift, CockroachDB, MySQL, RDS MySQL, Microsoft SQL Server, BigQuery, Oracle DB, and SQLite
A server that helps people access and query data in databases using the Legion Query Runner with integration of the Model Context Protocol (MCP) Python SDK.
This tool is provided by Legion AI. To use the full-fledged and fully powered AI data analytics tool, please visit the site.
Database | DB_TYPE code |
---|---|
PostgreSQL | pg |
Redshift | redshift |
CockroachDB | cockroach |
MySQL | mysql |
RDS MySQL | rds_mysql |
Microsoft SQL Server | mssql |
Big Query | bigquery |
Oracle DB | oracle |
SQLite | sqlite |
We use Legion Query Runner library as connectors. You can find more info on their api doc.
The Model Context Protocol (MCP) is a specification for maintaining context in AI applications. This server uses the MCP Python SDK to:
Two parameters are required for all installation methods:
The DB_CONFIG format varies by database type. See the API documentation for database-specific configuration details.
When using uv
, no specific installation is needed. We will use uvx
to directly run database-mcp.
UV Configuration Example:
REPLACE DB_TYPE and DB_CONFIG with your connection info.
{
"mcpServers": {
"database-mcp": {
"command": "uvx",
"args": [
"database-mcp"
],
"env": {
"DB_TYPE": "pg",
"DB_CONFIG": "{\"host\":\"localhost\",\"port\":5432,\"user\":\"user\",\"password\":\"pw\",\"dbname\":\"dbname\"}"
},
"disabled": true,
"autoApprove": []
}
}
}
Install via pip:
pip install database-mcp
PIP Configuration Example:
{
"mcpServers": {
"database": {
"command": "python",
"args": [
"-m", "database_mcp",
"--repository", "path/to/git/repo"
],
"env": {
"DB_TYPE": "pg",
"DB_CONFIG": "{\"host\":\"localhost\",\"port\":5432,\"user\":\"user\",\"password\":\"pw\",\"dbname\":\"dbname\"}"
}
}
}
}
mcp dev mcp_server.py
python mcp_server.py
export DB_TYPE="pg" # or mysql, postgresql, etc.
export DB_CONFIG='{"host":"localhost","port":5432,"user":"username","password":"password","dbname":"database_name"}'
mcp dev mcp_server.py
python mcp_server.py --db-type pg --db-config '{"host":"localhost","port":5432,"user":"username","password":"password","dbname":"database_name"}'
Or with UV:
uv mcp_server.py --db-type pg --db-config '{"host":"localhost","port":5432,"user":"username","password":"password","dbname":"database_name"}'
Resource | Description |
---|---|
schema://all | Get the complete database schema |
Tool | Description |
---|---|
execute_query | Execute a SQL query and return results as a markdown table |
execute_query_json | Execute a SQL query and return results as JSON |
get_table_columns | Get column names for a specific table |
get_table_types | Get column types for a specific table |
get_query_history | Get the recent query history |
Prompt | Description |
---|---|
sql_query | Create an SQL query against the database |
explain_query | Explain what a SQL query does |
optimize_query | Optimize a SQL query for better performance |
uv pip install -e ".[dev]"
pytest
rm -rf dist/ build/ *.egg-info/ && python -m build
python -m build
python -m twine upload dist/*
This repository is licensed under GPL
Knowledge graph-based persistent memory system
Read-only database access with schema inspection
Database interaction and business intelligence capabilities
Embeddings, vector search, document storage, and full-text search with the open-source AI application database
Query your ClickHouse database server.
Immutable ledger database with live synchronization
Provides AI assistants with a secure and structured way to explore and analyze data in GreptimeDB.
Connect to a Hologres instance, get table metadata, query and analyze data.
Open source MCP server specializing in easy, fast, and secure tools for Databases.
Search, Query and interact with data in your Milvus Vector Database.