Airtable Automation via Rube MCP 通过 Composio 的 Airtable 工具包,经 Rube MCP 自动化 Airtable 操作。
【用途】 用于以自动化方式管理 Airtable 中的记录、数据表(bases/tables)、字段(fields)、视图相关数据以及记录评论。
【前置条件】
- Rube MCP 必须已连接(RUBE_SEARCH_TOOLS 可用)。
- 通过 RUBE_MANAGE_CONNECTIONS 建立有效的 Airtable 连接,工具包为 airtable。
- 始终先调用 RUBE_SEARCH_TOOLS 以获取当前工具 schema。
【设置方式】
- 获取 Rube MCP:在客户端配置中将 https://rube.app/mcp 添加为 MCP 服务器。无需 API 密钥——只需添加该 endpoint 即可工作。
- 确认 RUBE_SEARCH_TOOLS 有响应,以验证 Rube MCP 可用。
- 调用 RUBE_MANAGE_CONNECTIONS,工具包选择 airtable。
- 若连接不是 ACTIVE,按返回的授权链接完成 Airtable 授权。
- 在运行任何工作流前,确认连接状态显示为 ACTIVE。
【核心工作流】
- 创建与管理记录 适用场景:用户想要创建、读取、更新或删除记录。 工具顺序:
- AIRTABLE_LIST_BASES(发现可用 bases,前置)
- AIRTABLE_GET_BASE_SCHEMA(检查表结构,前置)
- AIRTABLE_LIST_RECORDS(列出/过滤记录,可选)
- AIRTABLE_CREATE_RECORD / AIRTABLE_CREATE_RECORDS(创建记录,可选)
- AIRTABLE_UPDATE_RECORD / AIRTABLE_UPDATE_MULTIPLE_RECORDS(更新记录,可选)
- AIRTABLE_DELETE_RECORD / AIRTABLE_DELETE_MULTIPLE_RECORDS(删除记录,可选) 关键参数:
- baseId:Base ID(以 app 开头,如 appXXXXXXXXXXXXXX)
- tableIdOrName:表 ID(以 tbl 开头)或表名
- fields:字段名到值的映射对象
- recordId:记录 ID(以 rec 开头),用于更新/删除
- filterByFormula:用于过滤的 Airtable 公式
- typecast:设为 true 以自动类型转换 注意事项:
- pageSize 上限为 100;使用 offset 分页;在分页之间更改过滤条件可能跳过或重复行。
- CREATE_RECORDS 每次请求硬上限 10 条记录;更大导入需分块。
- 字段名区分大小写,且必须与 schema 完全匹配。
- 字段名错误时返回 422 UNKNOWN_FIELD_NAME;权限问题返回 403。
- INVALID_MULTIPLE_CHOICE_OPTIONS 可能需要 typecast=true。
- 搜索与过滤记录 适用场景:用户想用公式查找特定记录。 工具顺序:
- AIRTABLE_GET_BASE_SCHEMA(核验字段名与类型,前置)
- AIRTABLE_LIST_RECORDS(使用 filterByFormula 查询,必需)
- AIRTABLE_GET_RECORD(获取完整记录详情,可选) 关键参数:
- filterByFormula:Airtable 公式(如 {Status}='Done')
- sort:排序对象数组
- fields:要返回的字段名数组
- maxRecords:所有分页合计的最大记录数
- offset:来自上一次响应的分页游标 注意事项:
- 公式中的字段名必须用 {} 包裹,且与 schema 完全匹配。
- 字符串值必须加引号:{Status}='Active' 而非 {Status}=Active。
- 语法错误或字段不存在时返回 422 INVALID_FILTER_BY_FORMULA。
- Airtable 速率限制:每个 base 约每秒 5 次请求;处理 429 时遵循 Retry-After。
- 管理字段与 schema 适用场景:用户想创建或修改表字段。 工具顺序:
- AIRTABLE_GET_BASE_SCHEMA(检查当前 schema,前置)
- AIRTABLE_CREATE_FIELD(创建新字段,可选)
- AIRTABLE_UPDATE_FIELD(重命名/描述字段,可选)
- AIRTABLE_UPDATE_TABLE(更新表元数据,可选) 关键参数:
- name:字段名
- type:字段类型(singleLineText、number、singleSelect 等)
- options:类型专属选项(如 select 的 choices、number 的 precision)
- description:字段描述 注意事项:
- UPDATE_FIELD 只能更改名称/描述,不能更改类型/选项;需创建替代字段并迁移。
- 计算型字段(formula、rollup、lookup)无法通过 API 创建。
- 缺少或格式错误的类型选项时返回 422。
- 管理评论 适用场景:用户想查看或添加记录评论。 工具顺序:
- AIRTABLE_LIST_COMMENTS(列出记录评论,必需) 关键参数:
- baseId:Base ID
- tableIdOrName:表标识
- recordId:记录 ID(17 个字符,以 rec 开头)
- pageSize:每页评论数(最大 100) 注意事项:
- 记录 ID 必须恰好 17 个字符且以 rec 开头。
【常见模式】 Airtable 公式语法 比较:
- {Status}='Done' —— 等于
- {Priority}>1 —— 大于
- {Name}!='' —— 非空 函数:
- AND({A}='x', {B}='y') —— 同时满足
- OR({A}='x', {A}='y') —— 满足其一
- FIND('test', {Name})>0 —— 包含文本
- IS_BEFORE({Due Date}, TODAY()) —— 日期比较 转义规则:
- 值中的单引号需双写:{Name}='John''s Company'
分页:
- 设置 pageSize(最大 100)
- 检查响应中的 offset 字符串
- 将 offset 原样传给下一次请求
- 分页之间保持 filters/sorts/view 稳定
【已知注意事项】 ID 格式:
- Base ID:appXXXXXXXXXXXXXX(17 字符)
- Table ID:tblXXXXXXXXXXXXXX(17 字符)
- Record ID:recXXXXXXXXXXXXXX(17 字符)
- Field ID:fldXXXXXXXXXXXXXX(17 字符)
批量限制:
- CREATE_RECORDS:每次请求最多 10 条
- UPDATE_MULTIPLE_RECORDS:每次请求最多 10 条
- DELETE_MULTIPLE_RECORDS:每次请求最多 10 条
【快速参考】 任务 / 工具 Slug / 关键参数
- 列出 bases / AIRTABLE_LIST_BASES /(无)
- 获取 schema / AIRTABLE_GET_BASE_SCHEMA / baseId
- 列出记录 / AIRTABLE_LIST_RECORDS / baseId, tableIdOrName
- 获取记录 / AIRTABLE_GET_RECORD / baseId, tableIdOrName, recordId
- 创建记录 / AIRTABLE_CREATE_RECORD / baseId, tableIdOrName, fields
- 创建多条记录 / AIRTABLE_CREATE_RECORDS / baseId, tableIdOrName, records
- 更新记录 / AIRTABLE_UPDATE_RECORD / baseId, tableIdOrName, recordId, fields
- 更新多条记录 / AIRTABLE_UPDATE_MULTIPLE_RECORDS / baseId, tableIdOrName, records
- 删除记录 / AIRTABLE_DELETE_RECORD / baseId, tableIdOrName, recordId
- 创建字段 / AIRTABLE_CREATE_FIELD / baseId, tableIdOrName, name, type
- 更新字段 / AIRTABLE_UPDATE_FIELD / baseId, tableIdOrName, fieldId
- 更新表 / AIRTABLE_UPDATE_TABLE / baseId, tableIdOrName, name
- 列出评论 / AIRTABLE_LIST_COMMENTS / baseId, tableIdOrName, recordId