MCP Server for Database

MCP Server for Database

A read-only MCP server that enables AI agents to explore database schemas and execute safe queries on PostgreSQL and MySQL.

Category
Visit Server

README

MCP Server for Database (PostgreSQL and MySQL)

Python PostgreSQL MySQL Docker HTTP

A Model Context Protocol server that provides access to PostgreSQL or MySQL. This server enables LLMs to inspect database schemas and execute queries.

Key Features

  • Autonomous Schema Discovery: AI agents can list tables and inspect columns to understand your data structure without manual intervention.
  • Security First (Read-Only): Strictly enforces read-only access. Only SELECT, WITH, SHOW, DESCRIBE, and EXPLAIN statements are permitted.
  • Multi-Database Support: Seamlessly connects to PostgreSQL and MySQL (SQL Server & SQLite support coming soon).
  • Flexible Deployment: Supports multiple transport modes including stdio (for local IDEs), HTTP/SSE (for cloud APIs), and Docker.

Available Tools

The server exposes the following tools to AI clients:

Tool Capability User Intent Example
list-tables Lists all accessible tables in the database. "What tables are available in the schema?"
describe-table Retrieves column details, data types, and constraints. "Tell me about the 'Inventory' table structure."
execute-query Executes safe, read-only SQL queries to fetch live data. "Who are the top 5 customers by revenue today?"

Architecture Overview

graph TD
    A[AI Assistant] -->|MCP Protocol| B{MCP Server}
    subgraph "Deployment Modes"
        B -->|stdio| C[Local IDE: VSCode/Cursor]
        B -->|HTTP/SSE| D[Cloud/Remote API]
        B -->|Docker| E[Containerized Service]
    end
    B -->|Read-Only SQL| F[(PostgreSQL / MySQL)]

[!TIP] Dive Deeper: For a detailed breakdown of the communication flow, sequence diagrams, and deployment strategies, please check out our Full Architecture Guide

Quick Start

1. Installation

pip install -r requirements.txt

2. Run with Docker (Recommended)

Update the DATABASE_URI in docker-compose.yaml and run:

docker compose up --build

3. Run Locally

# PostgreSQL
python -m src --connection-string "postgresql://user:pass@localhost:5432/db"

# MySQL
python -m src --connection-string "mysql+pymysql://user:pass@localhost:3306/db"

AI Client Configuration

Claude Desktop

Add this to your claude_desktop_config.json:

{
  "mcpServers": {
    "sql-intelligence": {
      "command": "python",
      "args": ["-m", "src", "--connection-string", "your_connection_string"],
      "cwd": "/path/to/project"
    }
  }
}

VSCode (Cline / Roo Code)

Create .vscode/mcp.json in your workspace:

{
  "mcpServers": {
    "database": {
      "command": "python",
      "args": [
        "-m", "src",
        "--connection-string", "postgresql://user:pass@localhost:5432/mydb"
      ],
      "cwd": "/path/to/mcp-for-database"
    }
  }
}

Security Guardrails

The server utilizes a strict Regex-based validation layer. Any query that does not start with an authorized read-only keyword is blocked immediately to prevent unauthorized data modification.

Roadmap

  • [ ] Support for SQL Server and SQLite.
  • [ ] Integration of Audit Logs for tracking AI query behaviors.
  • [ ] Semantic Search capabilities combining SQL and Vector DB.

Project Demo

You can watch the full demo of this MCP Server for Database on YouTube: Watch here

Recommended Servers

playwright-mcp

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.

Official
Featured
TypeScript
Magic Component Platform (MCP)

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.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

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.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

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.

Official
Featured
TypeScript
Kagi MCP Server

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.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

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.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured