RBDC MCP Server

An MCP-based database server with support for SQLite, MySQL, PostgreSQL, and MSSQL.

RBDC MCP Server

A database server based on Model Context Protocol (MCP), supporting SQLite, MySQL, PostgreSQL, MSSQL, DuckDB, and Turso databases.

🇨🇳 中文文档 / Chinese Documentation: readme_cn.md

Advantages

  • Multiple Database Support: Seamlessly work with SQLite, MySQL, PostgreSQL, MSSQL, DuckDB, and Turso using a unified interface
  • AI Integration: Native integration with Claude AI through the Model Context Protocol
  • Zero Configuration: Automatic management of database connections and resources
  • Security: Controlled access to your database through AI-driven natural language queries
  • Simplicity: Use natural language to query and modify your database without writing SQL

Installation

🚀 Method 1: Install via Cargo (Recommended)

Prerequisites: Install Rust first.

Choose the install command based on your needs:

All drivers (default, ~10-15 minutes build)

cargo install --git https://github.com/rbatis/rbdc-mcp.git

Minimal: SQLite only (fastest build, ~2-3 minutes)

cargo install --git https://github.com/rbatis/rbdc-mcp.git --no-default-features --features sqlite

Single driver (e.g., MySQL):

cargo install --git https://github.com/rbatis/rbdc-mcp.git --no-default-features --features mysql

Multiple drivers:

cargo install --git https://github.com/rbatis/rbdc-mcp.git --no-default-features --features "mysql postgres"

💡 Build speed tip: If you only need one database (e.g., SQLite), add --no-default-features --features sqlite to skip compiling unused drivers, cutting build time from ~15 minutes to ~2 minutes.

Available Features

FeatureDriverDescription
sqliterbdc-sqliteSQLite support
mysqlrbdc-mysqlMySQL support
postgresrbdc-pgPostgreSQL support
mssqlrbdc-mssqlMSSQL/SQL Server support
duckdbrbdc-duckdbDuckDB support
tursorbdc-tursoTurso/libsql support
full(all above)Enable all database drivers

📦 Method 2: Download Pre-built Binaries

Download the latest release for your platform from GitHub Releases:

PlatformDownload
Windows (x64)rbdc-mcp-windows-x86_64.exe
macOS (Intel)rbdc-mcp-macos-x86_64
macOS (Apple Silicon)rbdc-mcp-macos-aarch64
Linux (x64)rbdc-mcp-linux-x86_64

After downloading, rename the file to rbdc-mcp (or rbdc-mcp.exe on Windows) and add it to your system PATH.

🔧 Quick Setup

Step 1: Configure Claude Desktop

Configuration File Location:

  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

Basic Configuration:

{ "mcpServers": { "rbdc-mcp": { "command": "rbdc-mcp", "args": ["--database-url", "sqlite://./database.db"] } } }

Platform-Specific Examples:

Different Database Examples

{ "mcpServers": { "rbdc-mcp-sqlite": { "command": "rbdc-mcp", "args": ["--database-url", "sqlite://./database.db"] }, "rbdc-mcp-mysql": { "command": "rbdc-mcp", "args": ["--database-url", "mysql://user:password@localhost:3306/database"] }, "rbdc-mcp-postgres": { "command": "rbdc-mcp", "args": ["--database-url", "postgres://user:password@localhost:5432/database"] }, "rbdc-mcp-mssql": { "command": "rbdc-mcp", "args": ["--database-url", "mssql://user:password@localhost:1433/database"] }, "rbdc-mcp-duckdb": { "command": "rbdc-mcp", "args": ["--database-url", "duckdb://path/to/database.duckdb"] }, "rbdc-mcp-turso": { "command": "rbdc-mcp", "args": ["--database-url", "turso://database-url?token=your-token"] } } }

Windows Full Path (if not in PATH)

{ "mcpServers": { "rbdc-mcp": { "command": "C:\tools\rbdc-mcp.exe", "args": ["--database-url", "sqlite://C:\path\to\database.db"] } } }

Step 2: Restart Claude Desktop

After saving the configuration, restart Claude Desktop to load the MCP server.

Step 3: Test the Connection

In Claude Desktop, try asking:

  • "Show me the database connection status"
  • "What tables are in my database?"

📊 Usage Examples

Natural Language Database Operations

  • Query Data: "Show me all users in the database"
  • Modify Data: "Add a new user named John with email [email protected]"
  • Get Status: "What's the database connection status?"
  • Schema Info: "What tables exist in my database?"

🗄️ Database Support

DatabaseConnection URL Format
SQLitesqlite://path/to/database.db
MySQLmysql://user:password@host:port/database
PostgreSQLpostgres://user:password@host:port/database
MSSQLmssql://user:password@host:port/database
DuckDBduckdb://path/to/database.duckdb
Tursoturso://database-url?token=your-token

⚙️ Configuration Options

ParameterDescriptionDefault
--database-url, -dDatabase connection URLRequired
--max-connectionsMaximum connection pool size1
--timeoutConnection timeout (seconds)30
--log-levelLog level (error/warn/info/debug)info
--read-onlyDisable sql_exec and enforce read-only SQL validationfalse

🛠️ Available Tools

  • sql_query: Execute single read-only SQL queries safely
  • sql_exec: Execute INSERT/UPDATE/DELETE operations when the server is not in read-only mode
  • db_status: Check connection pool status

Read-Only Mode

--read-only disables the sql_exec tool, preventing any data modifications. Additionally, sql_query validates submitted SQL and rejects statements containing write keywords (INSERT, UPDATE, DELETE, etc.) or multi-statement input.

📸 Screenshots

Step 1: Configuration Configuration

Step 2: Usage in Claude Usage

License

Apache-2.0

Máy chủ liên quan

NotebookLM Web Importer

Nhập trang web và video YouTube vào NotebookLM chỉ với một cú nhấp. Được tin dùng bởi hơn 200.000 người dùng.

Cài đặt tiện ích Chrome