mcpField
D
db2-mcp-server

db2-mcp-server

本地服务
github.com/huangjien数据库269 周前更新

关于 db2-mcp-server

面向 IBM DB2 数据库的 Python MCP 服务,支持只读表查询和元数据获取,并提供内置及可配置提示词,辅助数据库查询。

主要功能

  1. 01列出 DB2 表
  2. 02获取列及数据类型元数据
  3. 03从 JSON 配置加载提示词
  4. 04内置查询与架构分析提示词
  5. 05只读数据库访问

适用场景

  1. 01查看 DB2 数据库中的表
  2. 02检查表的列和数据类型
  3. 03配置 DB2 查询辅助提示词

MCP 相关

向 MCP 客户端提供 DB2 表列表、表元数据和提示词功能。数据库访问为只读。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

db2-mcp-server

PyPI version License: MIT Coverage

概述

db2-mcp-server 是一个基于 Python 的服务,利用 MCP 框架与 IBM DB2 数据库进行交互。它提供用于列出表和获取表元数据的工具。

功能

  • 列出表:获取已连接的 DB2 数据库中的表列表。
  • 获取表元数据:获取特定表的元数据,包括列详情和数据类型。
  • 动态加载提示词:从 JSON 配置文件加载自定义提示词,灵活地辅助查询。
  • 内置提示词:预配置的 DB2 查询帮助和架构分析提示词。

要求

  • Python 3.12
  • FastMCP(最新稳定版本)
  • IBM DB2 Python 驱动程序(ibm_db)
  • Pydantic

设置说明

  1. 克隆仓库

    git clone <repository-url>
    cd db2-mcp-server
    
  2. 设置虚拟环境

    uv v0.6.x
    source uv/bin/activate
    
  3. 安装依赖

    pip install -r requirements.txt
    
  4. 运行服务

    python src/db2_mcp_server/core.py
    

动态提示词

该服务支持从 JSON 配置文件动态加载提示词。设置 PROMPTS_FILE 环境变量以指定自定义提示词配置文件。

使用示例
export PROMPTS_FILE=/path/to/your/prompts_config.json
python src/db2_mcp_server/core.py
配置格式

完整示例请参阅 examples/prompts_config.json,详细文档请参阅 docs/DYNAMIC_PROMPTS.md。

测试

  • 使用 pytest(版本 ≥ 7.0.0)运行测试。
  • 当前测试覆盖率:92.98%(超过 80% 的要求)。
  • 全面的测试套件包括:
    • 核心功能测试(test_core.py)
    • 数据库工具测试(test_list_tables.py、test_metadata_retrieval.py)
    • 缓存机制测试(test_cache.py)
    • 日志配置测试(test_logger.py)
    • 动态提示词加载测试(test_dynamic_loader.py、test_integration_dynamic_prompts.py)
  • 运行测试:
    pytest --cov=src/db2_mcp_server --cov-report=html tests/
    
  • 查看详细输出:
    pytest --cov=src/db2_mcp_server --cov-report=term-missing -v
    

安全与 API 限制

  • 该服务为只读服务,禁止执行 SQL INSERT、UPDATE 或 DELETE 操作。
  • 使用仅具有 SELECT 权限的数据库用户。

日志记录

  • 错误以结构化 JSON 格式记录,不包含敏感数据。

贡献

  • 欢迎贡献。请遵循项目的编码标准和测试指南。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。