mcpField
S
show-airtable-link

show-airtable-link

github.com/airtableAgent 工作流53107 次安装14 周前更新
代码仓库

关于 show-airtable-link

show-airtable-link 是供修改或读取 Airtable 可见内容的 Agent 使用的工作流技能,规定如何根据 MCP 结果和已确认的访问权限,返回指向最具体界面的可点击链接。

主要功能

  1. 01使用响应中返回的 ID 构建 URL
  2. 02优先选择最具体的界面
  3. 03遵循已验证的访问权限
  4. 04使用一个带描述的 Markdown 链接
  5. 05避免编造 ID 和查询参数

适用场景

  1. 01交接已修改的 Airtable 记录
  2. 02多记录更新后链接到表格
  3. 03为页面范围的操作返回页面链接
  4. 04基于全库操作分享 Base

MCP 相关

该技能适用于影响 Airtable 可见内容的 MCP 调用之后。它依据工具响应确认的 ID 和访问界面,确定要返回的 Airtable URL。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/airtable/skills --skill show-airtable-link

安装后在 Claude Code 中输入/show-airtable-link确认已加载。

详细介绍

显示 Airtable 链接

每次 MCP 调用影响用户可见的 Airtable 内容后,都应返回一个可点击链接,指向该调用结果允许用户访问的最具体页面。用户通过链接查看 Agent 的工作成果;没有链接,用户就看不到这些成果,除非自行查找。

URL 模板

所有 URL 均由工具调用实际返回的 ID 构成。不要包含工具响应中未出现的任何 ID 槽位,例如 viw*、tbl*、rec*、pag* 等。

页面URL 模式
工作区https://airtable.com/workspaces/<wspId>
Basehttps://airtable.com/<appId>
Base 接口中心https://airtable.com/<appId>/interfaces
表https://airtable.com/<appId>/<tblId>
记录(表上下文)https://airtable.com/<appId>/<tblId>/<recId>
接口页面https://airtable.com/<appId>/<pagId>
记录(页面上下文)https://airtable.com/<appId>/<pagId>/<recId>

ID 前缀:wsp(工作区)、app(Base)、tbl(表)、pag(接口页面)、rec(记录)、fld(字段)。使用 MCP 响应中的原始 ID 构造 URL——不要将其转为小写、转换或猜测。

优先级顺序

交付最具体的 URL,具体程度以操作所能支持为准:

  1. 单条记录——操作针对一条记录时使用。如果 get_record_for_page 返回了该记录,则使用页面上下文 URL;否则使用表上下文 URL。
  2. 接口页面——操作范围限定在某个页面时使用(读取页面 / 列出页面内容)。
  3. 表——适用于多条记录操作或架构变更(创建 / 更新表、字段)。不要逐条列出记录;只链接一次表。
  4. Base——最后的选择:刚创建的 Base、Base 范围的架构操作,或没有更具体页面适用时使用。

对于没有明显“最佳”记录的多条记录结果,只链接一次表或页面。不要为每条记录都生成链接——那会造成刷屏。

按权限交付链接

MCP 用户的身份验证权限决定哪些工具调用能够成功。仅交付调用序列已证明用户有权访问的页面链接:

  • 仅限页面访问的用户:只有 list_pages_for_base、list_records_for_page、get_record_for_page 调用成功。只交付页面 URL——自行拼接 tbl* URL 会导致用户无法打开,形成无效链接。
  • 表级访问权限:list_tables_for_base、get_table_schema、list_records_for_table、update_records_for_table 调用成功。可以安全地使用表 URL。
  • 工作区级访问权限:list_workspaces 返回了 ID。可以安全地使用工作区 URL。

通用规则:如果工具调用未能证明用户有权访问某个页面,就不要链接到该页面。如有疑问,降低一个具体程度,链接到已确认可访问的页面。

展示方式

  • 使用带描述性标签的 Markdown 链接。 所有宿主(Claude Code、Cowork、Codex、Claude.ai)都能渲染此类链接。裸 URL 也能渲染,但可读性较差。
    • 推荐:[Sales Pipeline base](https://airtable.com/appEXAMPLEbase001)
    • 可接受:在 Airtable 中查看:[Sales Pipeline](https://airtable.com/appEXAMPLEbase001)——与 Airtable 现有的内部交付标签一致
    • 不推荐:https://airtable.com/appEXAMPLEbase001——没有上下文的裸 URL
  • 每条回复只放一个链接。 对于多步骤操作,在结尾统一提供链接,而不是在每次工具调用后都提供。
  • 不要使用富媒体嵌入。 目前,内嵌聊天界面不会为 Airtable URL 渲染 OpenGraph 卡片。不要围绕宿主无法呈现的内容组织回复。

反模式

  • 不要合成 ID。 URL 中的每个 ID 都必须原样来自工具响应。不要为了补全 URL 而伪造 viw*、tbl*、rec*、pag* 或其他标识符——如果工具调用没有返回该 ID,那么 URL 中对应的位置就没有真实目标。
  • 不要包含 ?home=<pagId> 或其他查询参数。 页面管理模式(/build、/edit、/preview)面向页面作者,不用于从聊天中交接。

组合使用

创建、修改或返回 Airtable 内容的工作流和方法技能,应在交接时采用这一约定。不要在内联代码中重新实现 URL 构造。

在另一项技能的正文中:

“完成工作后,通过 show-airtable-link 技能返回可点击的链接。交接最具体的 URL,且该 URL 必须已由 Agent 的工具调用证实可访问。”

示例

创建了用于产品路线图的新 base:

已创建路线图 base,其中包含三个表:路线图、反馈和发布。

在 Airtable 中查看路线图 base

更新了 12 条记录的 Status 字段:

已将 12 条记录的 Status 更新为“In Review”。

在 Airtable 中查看路线图表

从界面页面返回了一条记录(受页面访问权限限制的用户):

找到了匹配的交易:Acme Corp,$50k,阶段 = Negotiation。

在 Sales pipeline 中查看记录

评论

支持 Markdown