数据库通信协议服务器

Tibero MCP Server是一个提供Tibero数据库与AI应用之间安全通信的Model Context Protocol(MCP)服务器,支持SQL查询、数据资源提供和表结构信息查询。

  • by YeomYuJun
  • Python
  • 本地部署
  • 5 星标
  • 更新于
在 GitHub 查看 YeomYuJun/tibero-mcp-server

使用说明

Tibero MCP服务器

Model Context Protocol(MCP)服务器,提供Tibero数据库和AI应用程序之间的安全通信。

注意事项

参考现有TADB的MCP重新构建的MCP。 实际使用时,请注意SELECT以外的内容。

主要功能

  • 提供资源:将数据库表和视图作为MCP资源公开
  • SQL执行:运行SELECT、INSERT、UPDATE、DELETE、DDL查询
  • 方案信息:查询表结构、约束条件和索引信息
  • 示例数据:每个表最多提供100行示例数据

所需环境

  • Python 3.11+
  • Java运行时环境8+
  • Tibero JDBC驱动程序(tibero6-jdbc.jar)(需要安装在drivers内部)

安装

pip install -r requirements.txt

Claude桌面设置

claude_desktop_config.json 添加到文件:

{
  "mcpServers": {
    "tibero": {
      "command": "python",
      "args": ["/path/to/tibero_mcp_server/src/tibero_mcp_server/server.py"],
      "env": {
        "TIBERO_HOST": "localhost",
        "TIBERO_PORT": "8629",
        "TIBERO_SID": "tibero",
        "TIBERO_USER": "username",
        "TIBERO_PASSWORD": "password",
        "CLASSPATH": "/path/to/tibero6-jdbc.jar"
      }
    }
  }
}

提供的功能

1.资源(Resources)

  • 桌子: tibero://TABLE_NAME/data -表模式+示例数据(最多100行)
  • 视图: tibero://VIEW_NAME/view -视图模式+示例数据

2.工具(Tools)

execute_sql

运行SQL查询。

  • 选择/显示/描述:返回CSV形状的结果
  • 插入/更新/删除:返回受影响的行数,明确提交
  • 数据定义语言:返回运行结果

get_table_info

查询表格详细信息。

  • 列信息(允许名称、类型、长度、NULL)
  • 约束条件(PRIMARY KEY,UNIQUE,FOREIGN KEY,CHECK)
  • 索引信息(名称,是否唯一)

执行

# 직접 실행
python src/tibero_mcp_server/server.py

# 모듈로 실행
python -m tibero_mcp_server.server

数据库连接

使用jaydebeapi连接到Tibero JDBC驱动程序。DML查询运行后明确提交,为安全起见,将其设置为AutoCommit=False。