mcp-db-explorer
Allows exploring and querying PostgreSQL databases, including table structure inspection, statistical profiling, entity-relationship diagrams, and safe query execution.
Allows exploring and querying SQLite databases, including table structure inspection, statistical profiling, entity-relationship diagrams, and safe query execution.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp-db-explorerList all tables in the database"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Model Context Protocol Database Explorer
A Model Context Protocol (MCP) server that exposes tools for exploring and querying SQLite and PostgreSQL databases. It allows Large Language Models (LLMs) to inspect table structures, perform statistical profiling, generate entity-relationship diagrams, and execute queries safely.
Overview
The Database Explorer MCP Server provides a bridge between LLMs and SQL databases. It features read-only constraints by default, AST-based query safety verification, automatic schema visualization, and execution plan inspection tools.
Related MCP server: MCP Database Server
Architecture
The diagram below outlines the flow of a client request to the database via the MCP server:
graph TD
Client[MCP Client] -->|JSON-RPC| Server[MCP Database Explorer Server]
Server -->|Parse & Safety Check| Safety[Safety Validator]
Safety -->|AST Verification| Allowed{Safe?}
Allowed -->|Yes| Database[(Database: SQLite / PostgreSQL)]
Allowed -->|No| Block[Block Query & Return Error]
Database -->|Query Results| Server
Server -->|Response| ClientProject Structure
mcp-db-explorer/
├── .github/
│ └── workflows/
│ └── ci.yml # GitHub Actions CI workflow
├── mcp_db_explorer/
│ ├── __init__.py
│ ├── database.py # Database connection and querying logic
│ ├── prompts.py # Prompt templates (e.g. NL-to-SQL)
│ ├── safety.py # AST-based SQL safety validation
│ └── server.py # MCP Server definition and CLI entrypoint
├── tests/
│ ├── test_database.py # Tests for database connections and queries
│ ├── test_safety.py # Tests for AST query validation
│ └── test_server.py # Tests for MCP server tool schemas
├── pyproject.toml # Project dependency configuration
└── README.md # Project documentationSetup and Installation
Prerequisites
Ensure you have Python 3.10 or later installed on your system.
1. Clone the Repository
git clone https://github.com/arman1o1/mcp-db-explorer
cd mcp-db-explorer2. Setup and Install Dependencies
Option A: Using uv (Recommended)
This project is configured with uv. To install dependencies and set up the virtual environment, run:
uv syncOption B: Using pip and venv
You can set up a virtual environment and install dependencies manually:
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
pip install -e .Running the Application
Running with uv
To run the MCP server, use the uv run command:
uv run mcp-db-explorer --db-type sqlite --connection-string my_database.dbConfiguration Options
The server accepts several options via command-line arguments or environment variables:
Argument | Environment Variable | Description |
|
| Default database engine type ( |
|
| Database connection string (path for SQLite, URI for PostgreSQL) |
|
| Enable write operations (DML/DDL queries). Disabled by default. |
|
| Restricts SQLite database paths to be inside this directory. |
Client Integration
To use this server with an MCP client (such as Claude Desktop), add the server configuration to your client configuration file.
Claude Desktop Configuration
Open your claude_desktop_config.json:
Windows:
%APPDATA%\Claude\claude_desktop_config.jsonmacOS:
~/Library/Application Support/Claude/claude_desktop_config.json
Add the following configuration (use absolute paths):
{
"mcpServers": {
"mcp-db-explorer": {
"command": "uv",
"args": [
"--directory",
"C:\\absolute\\path\\to\\mcp-db-explorer",
"run",
"mcp-db-explorer",
"--db-type",
"sqlite",
"--connection-string",
"C:\\absolute\\path\\to\\my_database.db"
]
}
}
}Replace the paths with the correct ones for your local setup.
Testing
To run the test suite, run:
uv run pytestLicense
This project is licensed under the MIT License - see the LICENSE file for details.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
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/arman1o1/mcp-db-explorer'
If you have feedback or need assistance with the MCP directory API, please join our Discord server