关于 airtable-automation
airtable-automation 是通过 Composio Airtable 工具包和 Rube MCP 自动处理 Airtable 数据与结构的技能,适用于管理记录、字段和评论。
主要功能
- 01创建、读取、更新和删除记录
- 02按公式筛选记录
- 03管理表和字段结构
- 04查看记录评论
适用场景
- 01批量维护 Airtable 记录
- 02按条件查找记录
- 03创建或调整表字段
- 04查看记录讨论
MCP 相关
通过 Rube MCP 调用 Composio 的 Airtable 工具包;需要先连接 MCP,并激活 Airtable 账户连接。
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ composiohq/ awesome-claude-skills --skill airtable-automation安装后在 Claude Code 中输入/airtable-automation确认已加载。
详细介绍
通过 Rube MCP 自动化 Airtable
通过 Rube MCP 使用 Composio 的 Airtable 工具包自动执行 Airtable 操作。
工具包文档:composio.dev/toolkits/airtable
前提条件
- 必须已连接 Rube MCP(可使用 RUBE_SEARCH_TOOLS)
- 通过
RUBE_MANAGE_CONNECTIONS建立有效的 Airtable 连接,并使用工具包airtable - 务必先调用
RUBE_SEARCH_TOOLS,获取当前工具架构
设置
获取 Rube MCP:在客户端配置中将 https://rube.app/mcp 添加为 MCP 服务。无需 API 密钥——只需添加端点即可使用。
- 确认
RUBE_SEARCH_TOOLS能正常响应,以验证 Rube MCP 已可用 - 使用工具包
airtable调用RUBE_MANAGE_CONNECTIONS - 如果连接状态不是 ACTIVE,请根据返回的授权链接完成 Airtable 授权
- 运行任何工作流之前,确认连接状态显示为 ACTIVE
核心工作流
1. 创建和管理记录
适用场景:用户希望创建、读取、更新或删除记录
工具调用顺序:
AIRTABLE_LIST_BASES- 发现可用的 Base [前置步骤]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 条记录;批量导入较多记录时请分批处理
- 字段名区分大小写,且必须与架构完全一致
- 字段名错误时会返回 422 UNKNOWN_FIELD_NAME;权限问题会返回 403
- INVALID_MULTIPLE_CHOICE_OPTIONS 可能需要设置 typecast=true
2. 搜索和筛选记录
适用场景:用户希望通过公式查找特定记录
工具调用顺序:
AIRTABLE_GET_BASE_SCHEMA- 确认字段名和类型 [前置步骤]AIRTABLE_LIST_RECORDS- 使用 filterByFormula 查询 [必需]AIRTABLE_GET_RECORD- 获取完整记录详情 [可选]
关键参数:
filterByFormula:Airtable 公式(例如,{Status}='Done')sort:排序对象数组fields:要返回的字段名数组maxRecords:所有页面中的记录总数上限offset:上一条响应中的分页游标
注意事项:
- 公式中的字段名必须用
{}括起来,且与架构完全一致 - 字符串值必须加引号:
{Status}='Active',而不是{Status}=Active - 语法错误或字段不存在时会返回 422 INVALID_FILTER_BY_FORMULA
- Airtable 的速率限制约为每个 Base 每秒 5 个请求;遇到 429 时请遵循 Retry-After
3. 管理字段和架构
适用场景:用户想要创建或修改表字段
工具调用顺序:
AIRTABLE_GET_BASE_SCHEMA- 检查当前架构 [前置步骤]AIRTABLE_CREATE_FIELD- 创建新字段 [可选]AIRTABLE_UPDATE_FIELD- 重命名字段或修改字段描述 [可选]AIRTABLE_UPDATE_TABLE- 更新表元数据 [可选]
关键参数:
name:字段名称type:字段类型(singleLineText、number、singleSelect 等)options:特定类型的选项(例如,select 的选项、number 的精度)description:字段描述
注意事项:
- UPDATE_FIELD 只能修改名称或描述,不能修改类型或选项;请创建替代字段并迁移数据
- 无法通过 API 创建计算字段(formula、rollup、lookup)
- 类型选项缺失或格式错误时会返回 422
4. 管理评论
适用场景:用户想查看记录上的评论或添加评论
工具调用顺序:
AIRTABLE_LIST_COMMENTS- 列出记录上的评论 [必需]
关键参数:
baseId:Base IDtableIdOrName:表标识符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 - 在各页之间保持筛选条件、排序和视图不变
已知注意事项
ID 格式:
- Base ID:
appXXXXXXXXXXXXXX(17 个字符) - 表 ID:
tblXXXXXXXXXXXXXX(17 个字符) - 记录 ID:
recXXXXXXXXXXXXXX(17 个字符) - 字段 ID:
fldXXXXXXXXXXXXXX(17 个字符)
批量操作限制:
- CREATE_RECORDS:每次请求最多 10 条
- UPDATE_MULTIPLE_RECORDS:每次请求最多 10 条
- DELETE_MULTIPLE_RECORDS:每次请求最多 10 条
快速参考
| 任务 | 工具标识 | 关键参数 |
|---|---|---|
| 列出 Base | AIRTABLE_LIST_BASES | (无) |
| 获取架构 | 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 |
由 Composio 提供支持
评论
支持 Markdown