Token导航 LogoToken导航

MCP Server · 数据服务

MCP Multiple Db Toolbox

MCP多数据库连接工具是一个统一网关,支持通过单一服务器同时连接和管理PostgreSQL、MongoDB和Redis等多种数据库,并自动生成相应工具。

stdio官方级别未说明来源级核验工具 6
数据库连接PostgreSQLMongoDB

快速开始

作者 / 组织
trupti79916
提供方
trupti79916

工具数量

6

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

0

仓库热度

收录来源

1 个

MCP World

选型结论

MCP Multiple Db Toolbox 属于数据服务类 MCP Server,公开资料标注 6 个工具,通过stdio 本地进程接入,客户端适配情况以官方文档为准,有可以直接复制的安装命令;接入前先确认权限范围。

分类

数据服务

传输方式

stdio

认证方式

无需认证

部署方式

公开资料未说明

安装与配置

安装命令

pip install -r requirements.txt

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 对应的运行时,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 6 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

详细介绍

MCP多数据库工具包

使用1台MCP服务器连接到多个数据库。

概述

此MCP(模型上下文协议)服务器提供了一个统一的网关,可以同时与多个数据库交互。它支持PostgreSQL、MongoDB和Redis,并根据您的配置自动生成工具。

建筑

  • 单MCP服务器:一个服务器实例处理所有数据库连接
  • 动态工具生成:工具会根据您的 config.yaml
  • 连接池:高效的连接管理,实现最佳性能
  • SSE/HTTP协议:用于远程服务器访问的流式HTTP传输
  • 安全凭据:敏感数据的环境变量

安装

先决条件

  • Python 3.8+
  • 点

设置

  1. 克隆存储库:
git clone https://github.com/trupti79916/mcp-multiple-db-toolbox.git
cd mcp-multiple-db-toolbox
  1. 安装依赖项:
pip install -r requirements.txt
  1. 配置您的数据库:
cp .env.example .env
# Edit .env with your actual credentials
  1. 更新 config.yaml 使用您的数据库配置(请参阅配置部分)

配置

config.yaml

只配置您需要的数据库! 您不必设置所有数据库类型,只需取消注释并配置要使用的类型即可。

MCP服务器将仅为您配置的数据库自动创建工具。

示例1:仅限PostgreSQL

databases:
  - id: "prod_postgres"
    type: "postgres"
    host: "localhost"
    port: 5432
    user: "${PROD_POSTGRES_USER}"
    password: "${PROD_POSTGRES_PASSWORD}"
    dbname: "prod"

示例2:MongoDB Atlas(云)

databases:
  - id: "atlas_mongo"
    type: "mongodb"
    uri: "${MONGODB_ATLAS_URI}"
    database: "production"

以...为背景 .env:

MONGODB_ATLAS_URI=mongodb+srv://username:password@cluster0.xxxxx.mongodb.net/?retryWrites=true&w=majority

示例3:多个数据库

databases:
  - id: "prod_postgres"
    type: "postgres"
    host: "localhost"
    port: 5432
    user: "${PROD_POSTGRES_USER}"
    password: "${PROD_POSTGRES_PASSWORD}"
    dbname: "prod"

  - id: "atlas_mongo"
    type: "mongodb"
    uri: "${MONGODB_ATLAS_URI}"
    database: "production"

  - id: "cache_redis"
    type: "redis"
    host: "localhost"
    port: 6379
    db: 0

示例3:多个PostgreSQL实例

databases:
  - id: "prod_postgres"
    type: "postgres"
    host: "prod-db.example.com"
    port: 5432
    user: "${PROD_POSTGRES_USER}"
    password: "${PROD_POSTGRES_PASSWORD}"
    dbname: "prod"

  - id: "analytics_postgres"
    type: "postgres"
    host: "analytics-db.example.com"
    port: 5432
    user: "${ANALYTICS_POSTGRES_USER}"
    password: "${ANALYTICS_POSTGRES_PASSWORD}"
    dbname: "analytics"

环境变量

创建一个 .env 文件基于 .env.example:

# PostgreSQL
PROD_POSTGRES_USER=your_username
PROD_POSTGRES_PASSWORD=your_password

# Add other credentials as needed

备注:价值观 config.yaml 使用 ${VAR_NAME} 语法将替换为环境变量。

运行服务器

使用SSE传输启动MCP服务器:

python main.py

服务器将:

  1. 从加载配置 config.yaml
  2. 验证环境变量
  3. 初始化数据库连接器
  4. 使用HTTP/SSE协议启动MCP服务器
  5. 监听传入请求

可用工具

工具会根据您的数据库配置自动生成:

PostgreSQL工具

query_postgres

对PostgreSQL数据库执行SQL查询。

参数:

  • db_id (str):数据库标识符(例如“prod_postgres”)
  • query (str):要执行的SQL查询
  • params (str,可选):查询参数的JSON字符串

例子:

query_postgres(
    db_id="prod_postgres",
    query="SELECT * FROM users WHERE id = %s",
    params='[1]'
)

MongoDB工具

find_mongodb

在MongoDB集合中查找文档。

参数:

  • db_id (str):数据库标识符(例如“dev_mongo”)
  • collection (str):集合名称
  • query (str):以JSON字符串形式查询筛选器
  • projection (str,可选):投影为JSON字符串

例子:

find_mongodb(
    db_id="dev_mongo",
    collection="users",
    query='{"age": {"$gt": 18}}',
    projection='{"name": 1, "email": 1}'
)
insert_mongodb

将文档插入MongoDB集合。

参数:

  • db_id (str):数据库标识符
  • collection (str):集合名称
  • document (str):作为JSON字符串插入的文档

例子:

insert_mongodb(
    db_id="dev_mongo",
    collection="users",
    document='{"name": "John", "age": 30}'
)

Redis工具

get_redis

从Redis缓存中获取值。

参数:

  • db_id (str):数据库标识符(例如“cache_redis”)
  • key (str):要检索的密钥
set_redis

在Redis缓存中设置一个值。

参数:

  • db_id (str):数据库标识符
  • key (str):设置键
  • value (str):要存储的值
  • expiry (int,可选):过期时间(秒)
delete_redis

从Redis缓存中删除密钥。

参数:

  • db_id (str):数据库标识符
  • key (str):删除键

项目结构

mcp-multiple-db-toolbox/
├── main.py                 # Main MCP server with FastMCP
├── config.yaml            # Database configurations
├── config_parser.py       # Configuration loader with validation
├── requirements.txt       # Python dependencies
├── .env.example          # Environment variables template
├── connectors/           # Database connector modules
│   ├── postgres.py       # PostgreSQL connector
│   ├── mongodb.py        # MongoDB connector
│   └── redis.py          # Redis connector
└── README.md

错误处理

服务器包括全面的错误处理:

  • 配置错误:启动时验证config.yaml和环境变量
  • 连接错误:妥善处理数据库连接失败
  • 查询错误:格式错误查询的详细错误消息
  • 日志记录:记录所有操作以进行调试

常见用例

用例1:仅限PostgreSQL

非常适合只使用PostgreSQL数据库的团队:

  • 在中仅配置PostgreSQL数据库 config.yaml
  • 创建的工具: query_postgres 对于每个数据库
  • 仅设置PostgreSQL环境变量

用例2:微服务架构

不同的服务使用不同的数据库:

  • 为主要应用程序数据配置Postgres
  • 配置MongoDB用于文档存储
  • 配置Redis进行缓存
  • 所有这些都可以通过一个MCP服务器访问!

用例3:多环境

相同的数据库类型,不同的环境:

databases:
  - id: "prod_postgres"
    # Production database config
  - id: "staging_postgres"
    # Staging database config
  - id: "dev_postgres"
    # Development database config

用例4:分析+操作

用于不同目的的单独数据库:

  • 用于事务数据的PostgreSQL操作
  • 分析MongoDB的聚合数据
  • Redis用于实时缓存

添加新数据库

  1. 向添加新条目 config.yaml:
databases:
  - id: "new_db"
    type: "postgres"  # or mongodb, redis
    # ... connection details
  1. 在中设置所需的环境变量 .env
  1. 重新启动服务器

工具将自动生成!

发展

测试配置

测试您的配置:

python config_parser.py

添加对新数据库类型的支持

  1. 在中创建新连接器 connectors/
  2. 在中添加工具功能 main.py 使用 @mcp.tool() 装饰器
  3. 更新配置验证 config_parser.py

许可证

看 许可证 文件以获取详细信息。

贡献

欢迎投稿!请随时提交拉取请求。

工具与能力

工具数量

6

资源数量

0

提示词数量

0

能力标签

数据库连接Python本地部署多数据库管理PostgreSQLMongoDBRedis自动化工具

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

用自然语言查库

不用手写 SQL,直接问数据,让模型组织查询语句。

数据巡检

定期拉指标、做对比,把异常项整理成一段说明。

打通业务数据

把数据库、数仓和接口接进同一个上下文,减少导出再上传。

选择建议

值得选的地方

  • 只提供 6 个工具,职责集中,接入后不容易误操作。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • stdio 方式要求本地装好 运行环境,换机器要重新装一遍。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在数据服务场景里让模型直接调用外部能力的人。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
MCP Multiple Db Toolbox

MCP World · 本页

6stdio有1 个2026-05-17
Memory 9d25f64e

MCP World

9未说明未标注1 个2026-05-17
Prisma MCP Server

MCP World

0stdio有3 个2026-05-17
Astr Bot

MCP World

0stdio有1 个2026-05-17
Getzep MCP

MCP World

9stdio有1 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

MCP Multiple Db Toolbox 怎么安装?

公开资料给出的安装命令是 pip install -r requirements.txt,运行环境为 未标注。装完后按客户端要求写进 MCP 配置,重启客户端生效。

MCP Multiple Db Toolbox 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 未标注;保存后完全退出客户端再打开,配置才会生效。

MCP Multiple Db Toolbox 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

MCP Multiple Db Toolbox 需要 API Key 吗?

公开资料标注为无需认证,装好就能连;如果实际调用时报鉴权错误,按官方文档补上凭据。

MCP Multiple Db Toolbox 支持哪些客户端?

公开资料没有标注具体客户端;能配置本地 MCP 命令的客户端都能接,配置方式参照官方文档。

来源信息

继续浏览同类 MCP