Oracle MCP Server

Oracle MCP Server

site icon
2025.04.16 2
Java数据库操作实时通信数据库
Oracle MCP Server 是一个基于 Model Context Protocol (MCP) 的服务器实现,专门用于 Oracle 数据库操作。它构建在 `spring-ai-mcp-server-webmvc-spring-boot-starter` 之上,提供了一套工具,通过 MCP 与 Oracle 数据库进行交互,并利用 Server-Sent Events (SSE) 实现实时通信。
View on GitHub

Overview

基本能力

产品定位

Oracle MCP Server 是一个专门用于 Oracle 数据库操作的 MCP 服务器实现,提供了一套工具和接口,方便开发者通过 MCP 协议与 Oracle 数据库进行交互。

核心功能

  • 列出 Oracle 数据库中的所有表
  • 描述表结构(列名、数据类型、约束等)
  • 执行 SQL 语句(SELECT, INSERT, UPDATE, DELETE)
  • 安全的数据库连接管理
  • 通过 SSE 实现实时通信
  • 基于 spring-ai-mcp-server-webmvc-spring-boot-starter 构建

适用场景

  • 需要与 Oracle 数据库进行交互的开发者
  • 需要实时监控数据库变化的场景
  • 需要自动化执行 SQL 语句的场景

工具列表

  1. List Tables Tool
  2. 名称: list_tables
  3. 描述: 获取 Oracle 数据库中所有表的列表
  4. 用法: 无需参数
  5. 返回: 以换行符分隔的表名列表

  6. Describe Table Tool

  7. 名称: describe_table
  8. 描述: 获取指定表的结构信息
  9. 参数: tableName - 要描述的表名
  10. 返回: 表结构的 CSV 格式,包括列名、数据类型、可空状态、数据长度和主键信息

  11. Execute SQL Tool

  12. 名称: execute_sql
  13. 描述: 执行 Oracle SQL 语句
  14. 参数: sql - 要执行的 SQL 语句
  15. 返回:
    • 对于 SELECT: 查询结果的 CSV 格式
    • 对于 INSERT/UPDATE/DELETE: 受影响的行数

常见问题解答

  • 如何配置数据库连接? 在 application.propertiesapplication.yml 中设置 Oracle 数据库的连接字符串、用户名和密码。
  • 如何启用 MCP 服务器? 在 Cursor IDE 的配置中设置 MCP 服务器的 URL 并启用。
  • 如何处理连接失败? 检查数据库连接字符串、用户名和密码是否正确,并确保数据库实例可访问。

使用教程

使用依赖

  • JDK 17
  • Maven 3.6+
  • Oracle 数据库实例
  • MCP 服务器环境
  • Cursor IDE

安装教程

  1. 配置数据库 创建或修改 application.propertiesapplication.yml 文件,设置 Oracle 数据库的连接信息: yaml oracle: connectionString: jdbc:oracle:thin:@//your-oracle-host:1521/your-service-name username: your-username password: your-password

  2. 配置 Cursor MCP 在 Cursor IDE 中配置 MCP 服务器: json { "mcpServers": { "oracle-mcp-server": { "url": "http://{server-ip}:{server-port}/sse", "enabled": true } } }

  3. 构建项目 bash mvn clean install

  4. 运行应用 bash mvn spring-boot:run

调试方式

  1. 运行测试 bash mvn test

  2. 检查日志 查看应用启动日志,确保数据库连接成功且 MCP 服务器正常运行。

  3. 验证工具 使用 Cursor IDE 调用 MCP 工具,验证功能是否正常。

许可证

该项目遵循 MIT 开源许可条款。