
MCP Database Server

2025.03.20
17
TypeScript数据库管理数据库连接数据库查询数据库
MCP Database Server 是一个基于 Model Context Protocol (MCP) 的实现,用于连接和操作多种数据库系统。它支持 SQLite、PostgreSQL、Microsoft SQL Server 和 MongoDB 等多种数据库,提供了丰富的工具和资源来管理和查询数据库。
View on GitHub
Overview
基本能力
产品定位
MCP Database Server 是一个数据库连接和操作工具,旨在简化与多种数据库系统的交互过程。
核心功能
- 支持多种数据库:SQLite、PostgreSQL、Microsoft SQL Server、MongoDB
- 提供两种运行模式:SSE 模式和 STDIO 模式
- 丰富的数据库操作工具:连接、断开连接、执行查询、执行更新等
- 数据库资源管理:获取数据库架构、表架构、表列表等
适用场景
- 开发过程中需要快速连接和操作多种数据库
- 需要自动化执行数据库查询和更新
- 需要获取数据库架构信息进行分析
工具列表
- connect-database: 连接到一个数据库
- disconnect-database: 断开与数据库的连接
- execute-query: 执行查询并返回结果
- execute-update: 执行不返回结果的查询(如 INSERT、UPDATE、DELETE)
常见问题解答
- 如何配置数据库连接?可以通过环境变量或直接传递参数来配置数据库连接。
- 如何切换运行模式?使用
--stdio
参数切换到 STDIO 模式,默认是 SSE 模式。
使用教程
使用依赖
确保已安装 Node.js 和 npm。
安装教程
npm install -g mcp-dbs
调试方式
SSE 模式(默认)
npx mcp-dbs
自定义端口
npx mcp-dbs --port 8080
STDIO 模式
npx mcp-dbs --stdio
与 Claude Desktop 集成
- 打开或创建 Claude Desktop 配置文件
- 在
mcpServers
部分添加 mcp-dbs 配置
示例配置:
{
"mcpServers": {
"mcp-dbs": {
"command": "node",
"args": [
"/path/to/your/mcp-dbs/dist/cli.js",
"--stdio"
],
"env": {
"MCP_MONGODB_URI": "mongodb://localhost:27017",
"MCP_MONGODB_DATABASE": "your-database-name"
}
}
}
}
环境变量配置
SQLite
export MCP_SQLITE_FILENAME="path/to/database.db"
export MCP_SQLITE_CREATE_IF_NOT_EXISTS="true"
PostgreSQL
export MCP_POSTGRES_HOST="your-postgres-host"
export MCP_POSTGRES_PORT="5432"
export MCP_POSTGRES_DATABASE="your-database-name"
export MCP_POSTGRES_USER="your-username"
export MCP_POSTGRES_PASSWORD="your-password"
export MCP_POSTGRES_SSL="false"
SQL Server
export MCP_MSSQL_SERVER="your-server-address"
export MCP_MSSQL_PORT="1433"
export MCP_MSSQL_DATABASE="your-database-name"
export MCP_MSSQL_USER="your-username"
export MCP_MSSQL_PASSWORD="your-password"
export MCP_MSSQL_ENCRYPT="true"
export MCP_MSSQL_TRUST_SERVER_CERTIFICATE="true"
MongoDB
export MCP_MONGODB_URI="mongodb://localhost:27017"
export MCP_MONGODB_DATABASE="your-database-name"
export MCP_MONGODB_MAX_POOL_SIZE="10"
export MCP_MONGODB_USE_UNIFIED_TOPOLOGY="true"