跳到主要内容

开发者工具全景

本文定位

了解 Rabetbase 提供的五大核心工具,以及它们如何协同工作,让开发效率提升 10 倍以上。

Rabetbase 五件套

五件套概览

Rabetbase 为开发者提供了一套完整的工具链:

工具一句话定位核心价值
OpenAPI标准 HTTP 接口跨语言调用、第三方系统集成、无 SDK 依赖
CLI项目生命周期管理创建项目、生成配置、同步菜单、构建部署
TypeScript SDK前端数据访问类型安全、统一错误处理、高效查询
Java SDK后端数据访问服务端复杂业务逻辑开发
MCP ServerAI 业务智能引擎让 AI 理解你的业务数据,生成准确代码

核心优势:五件套深度集成,覆盖从接口调用到 AI 辅助开发的完整场景。


OpenAPI:标准 HTTP 接口

# 通过 HTTP 直接调用,无需安装 SDK
curl -X POST https://api.lovrabet.com/openapi/v1/data/filter \
-H "Authorization: Bearer YOUR_ACCESS_KEY" \
-H "Content-Type: application/json" \
-d '{"modelCode": "customers", "pageSize": 10}'

OpenAPI 帮你做了什么?

  • 跨语言调用,Python、Go、PHP 等都能用
  • 第三方系统集成,无需依赖特定 SDK
  • RESTful 风格,标准 HTTP 协议
  • 完整的认证机制,AccessKey 或 Token 两种模式

CLI:项目生命周期管理

# 安装
npm install -g @lovrabet/cli

# 常用命令
lovrabet auth # 登录认证
lovrabet create # 创建项目
lovrabet start # 启动开发服务器
lovrabet api pull # 拉取数据集配置,生成 SDK 代码
lovrabet menu sync # 同步菜单到工作台
lovrabet build # 构建生产版本

CLI 帮你做了什么?

  • 一键创建项目结构,不用从零配置
  • 自动生成 SDK 配置,不用手写类型定义
  • 菜单同步到工作台,不用登录后台手动添加
  • 开发服务器内置代理,不用处理跨域问题

TypeScript SDK:前端数据访问

import { lovrabetClient } from '@/api/client';

// 列表查询(带筛选、分页)
const result = await lovrabetClient.models.customers.filter({
where: { status: { $eq: 'active' } },
select: ['id', 'name', 'phone'],
orderBy: [{ createTime: 'desc' }],
pageSize: 20,
});

// 单条查询
const customer = await lovrabetClient.models.customers.getOne(customerId);

// 创建数据
await lovrabetClient.models.customers.create({
name: '张三',
phone: '13800138000',
});

// 自定义 SQL(复杂报表场景)
const stats = await lovrabetClient.api.executeSql('sql-code-xxx', {
startDate: '2024-01-01',
endDate: '2024-12-31',
});

TypeScript SDK 帮你做了什么?

  • 类型安全,IDE 智能提示
  • 统一错误处理,不用到处写 try-catch
  • 自动处理认证,浏览器端自动使用 Cookie
  • 内置分页、筛选、排序,不用手写参数拼接

Java SDK:后端数据访问

// 初始化客户端
LovrabetClient client = new LovrabetClient(accessKey, secretKey);

// 列表查询
FilterResult<Customer> result = client.models("customers")
.filter(new FilterParams()
.where("status", "active")
.select("id", "name", "phone")
.orderBy("createTime", "desc")
.pageSize(20));

// 单条查询
Customer customer = client.models("customers").getOne(customerId);

// 创建数据
client.models("customers").create(new Customer("张三", "13800138000"));

Java SDK 帮你做了什么?

  • 服务端安全调用,密钥不暴露给前端
  • 复杂业务逻辑处理,如批量操作、事务管理
  • 与现有 Java 生态无缝集成
  • 适合定时任务、后台服务等场景

MCP:AI 的业务智能大脑

为什么 MCP 是关键?

传统 AI 只能"看文档",知道字段名但不理解业务关系。

MCP 让 AI "理解业务",知道表之间的关联、字段的业务含义、数据的流转规则。

配置 MCP

在 Claude Desktop 或 Cursor 中配置:

{
"mcpServers": {
"lovrabet-dataset": {
"command": "npx",
"args": ["-y", "@lovrabet/dataset-mcp-server"],
"env": {
"LOVRABET_APP_CODE": "your-app-code"
}
}
}
}

MCP 能做什么?

配置后,你可以直接在 AI 中对话:

你:列出所有数据集
AI:(调用 MCP)你的应用有 8 个数据集...

你:查看 customer 表的字段
AI:(调用 MCP)customer 表有以下字段:id、name、phone...

你:帮我写一个客户列表页面
AI:(调用 MCP 理解数据结构后)好的,我来生成代码...

效率对比

场景传统 AI 开发使用 MCP
数据探索20-30 分钟(查文档、试接口)< 5 秒
SQL 设计30-60 分钟(反复调试)< 2 分钟
代码生成20-30 分钟(多轮修正)5 分钟
完整页面2-3 小时10-15 分钟

代码准确度

  • 传统 AI:60-70%(需多轮迭代)
  • 使用 MCP:95%+(基本一次通过)

五件套协同工作流程

┌─────────────────────────────────────────────────────────────────┐
│ 开发前 │
│ 1. lovrabet create → 创建项目 │
│ 2. lovrabet api pull → 生成 SDK 配置 │
│ 3. 配置 MCP → 让 AI 理解你的数据 │
├─────────────────────────────────────────────────────────────────┤
│ 开发中 │
│ 4. AI + MCP → 探索数据、生成代码 │
│ 5. SDK 调用 → 类型安全的数据操作 │
│ 6. lovrabet start → 实时预览调试 │
├─────────────────────────────────────────────────────────────────┤
│ 开发后 │
│ 7. lovrabet build → 构建生产版本 │
│ 8. lovrabet menu sync → 同步菜单到工作台 │
└─────────────────────────────────────────────────────────────────┘

实战案例:用户列表页

需求:显示用户列表,包含基础信息 + 会员标签 + 最近登录时间(需要关联 3 张表)

传统方式

  1. 查文档找字段名 → 猜错了 → 再查
  2. 写 SQL → JOIN 方式不对 → 再改
  3. 写代码 → 字段名拼错 → 再调
  4. 反复 4-5 轮 → 耗时 2-3 小时

使用 MCP

你:我要做一个用户列表页,显示用户基础信息、会员标签、最近登录时间

AI:(调用 MCP 分析)
- user_info 表:基础信息
- user_membership 表:会员信息
- user_login_log 表:登录记录
我来帮你写一个关联查询...

(生成完整代码,字段名 100% 准确)

耗时:10 分钟


下一步