[ English | 中文 ]
db-query-mcp is a mcp tool supporting diverse database querying and exporting, featuring:
- Multi-DB Support: Full compatibility with mainstream databases (ElasticSearch, MySQL, PostgreSQL, Oracle, SQLite, etc.)
- Secure Access: Default read-only mode for data protection
- Smart Query: Natural language to SQL conversion with query optimization
- Data Export: CSV / Json export capabilities
- Roadmap: Expanding support for MongoDB and GraphDatabase to become full-stack DB query MCP
demo.mp4
- 2025-06-02: Added support for ElasticSearch database queries
pip install db-query-mcpElasticSearch:
pip install "db-query-mcp[elasticsearch]"Install from GitHub:
pip install git+https://github.com/NewToolAI/db-query-mcpMySQL requires additional dependencies:
pip install pymysqlPostgreSQL requires additional dependencies:
pip install psycopg2-binaryFor other databases, install their respective connection packages:
| Database | Connection Package | Example Connection String |
|---|---|---|
| SQLite | Built-in Python | sqlite:///example.db |
| MySQL | pymysql or mysql-connector-python |
mysql+pymysql://user:password@localhost/dbname |
| PostgreSQL | psycopg2 or psycopg2-binary |
postgresql://user:password@localhost:5432/dbname |
| Oracle | cx_Oracle |
oracle+cx_oracle://user:password@hostname:1521/sidname |
| SQL Server | pyodbc or pymssql |
mssql+pyodbc://user:password@hostname/dbname |
Note: For certain clients, such as Cursor, only one db-query-mcp server can run at a time.
{
"mcpServers": {
"sqlite_db_mcp": {
"command": "uvx",
"args": [
"db-query-mcp",
"--db",
"sqlite",
"--uri",
"sqlite:///sqlite_company.db"
]
}
}
}{
"mcpServers": {
"es_db_mcp": {
"command": "uvx",
"args": [
"db-query-mcp",
"--db",
"elasticsearch",
"--uri",
"https://user:password@localhost:9200?index=test_data_index&ca_certs=/home/user/http_ca.crt"
]
}
}
}{
"mcpServers": {
"sqlite_db_mcp": {
"command": "db-query-mcp",
"args": [
"--db",
"sqlite",
"--uri",
"sqlite:///sqlite_company.db"
]
}
}
}{
"mcpServers": {
"es_db_mcp": {
"command": "db-query-mcp",
"args": [
"--db",
"elasticsearch",
"--uri",
"https://user:password@localhost:9200?index=test_data_index&ca_certs=/home/user/http_ca.crt"
]
}
}
}