Skip to content

OceanBase MCP v1.1.2

Choose a tag to compare

@github-actions github-actions released this 02 Jul 05:48
· 162 commits to main since this release

OceanBase MCP v1.1.2

This release improves local OpenCode query stability for OceanBase MCP. It raises the default local HTTP rate limit for tool-heavy workflows, adds crash and slow-call logs, and accepts common Oracle named bind placeholders when positional params are supplied. The server remains strictly read-only.

新增能力

  • 本地 HTTP 默认限流从每分钟 60 次调整为 600 次,适配 OpenCode 连续元数据查询、预览和分页调用。
  • 生产环境或非本地绑定仍默认每分钟 60 次,保持共享部署的保守边界。
  • OB_MCP_LOG_FILE 支持 JSONL 日志落盘,便于排查 stdio 场景下的 OpenCode 断连。
  • 新增进程级崩溃日志、慢工具调用日志、慢 HTTP 请求日志、HTTP 限流日志和 JSON body 错误日志。
  • Oracle 模式在传入 params 数组时兼容简单 :name:1 占位符,执行前转换为驱动可识别的参数形式。
  • 占位符转换会跳过字符串、标识符和注释,避免改写 SQL 文本内容。
  • SQL 辅助文档补充 Oracle 参数化写法,仍建议生成 MCP 调用时优先使用 ? 位置占位符。
  • 只读策略、profile 权限、行数限制、输出大小限制、超时、审计日志和错误脱敏保持不变。

Delivery Assets

  • ob-mcp-1.1.2-source.tar.gz:源码归档,用于内网编译。
  • ob-mcp-1.1.2.tgz:npm package。
  • sbom.cdx.json:CycloneDX SBOM。
  • oceanbase-mcp-1.1.2-amd64.tar.gz:amd64 离线镜像。
  • oceanbase-mcp-1.1.2-arm64.tar.gz:arm64 离线镜像。
  • ghcr.io/sevoniva/oceanbase-mcp:v1.1.2
  • ghcr.io/sevoniva/oceanbase-mcp:1.1.2

内网源码编译

tar -xzf ob-mcp-1.1.2-source.tar.gz
cd ob-mcp-1.1.2
npm ci
npm run build
npm run start

源码归档不包含 node_modulesdist。内网 npm 制品库需要能提供 package-lock.json 中锁定的依赖。

验证要求

  • OceanBase MySQL 模式 smoke test 和连续查询压测通过。
  • OceanBase Oracle 模式 smoke test、命名占位符查询预览和连续查询压测通过。
  • 本地 HTTP 连续调用压测通过,未触发默认限流。
  • JSONL 日志落盘和敏感字段脱敏单元测试通过。
  • npm testnpm run docs:checknpm audit --omit=dev --audit-level=moderatenpm pack --dry-run、Docker build 通过。

生产注意事项

  • 建议数据库账号仍使用只读权限;MCP 会继续拦截写入、DDL、DCL、过程调用和序列 NEXTVAL
  • 本地排查 OpenCode 断连时建议配置 OB_MCP_LOG_FILE=/var/log/ob-mcp/ob-mcp.jsonl
  • 本地 OpenCode 推荐使用 stdio;如使用 HTTP,本地默认限流为 600 次/分钟,可通过 OB_MCP_RATE_LIMIT_MAX 显式调整。
  • 生产或非本地 HTTP 绑定必须配置鉴权、Host allowlist 和来源 IP allowlist。
  • Oracle 模式生成新 SQL 时仍优先使用 ? 位置占位符,避免重复命名参数带来的歧义。
  • OpenCode 使用前建议先加载随包提供的 Agent/Skill 配置。