show-airtable-link について
show-airtable-link は、Airtable の表示対象コンテンツを変更または取得するエージェント向けのワークフロースキルです。MCP の結果と確認済みのアクセス権に基づき、最も具体的な画面へのリンクを返す方法を定めています。
主な機能
- 01応答で返された ID から URL を構築
- 02最も具体的な画面を優先
- 03確認済みのアクセス権を尊重
- 04説明付き Markdown リンクを 1 つ使用
- 05架空の ID とクエリパラメーターを回避
活用シーン
- 01変更した Airtable レコードの引き継ぎ
- 02複数レコード更新後のテーブルへのリンク
- 03ページ単位の作業でページリンクを返す
- 04Base 全体の操作後に 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 のリンクを表示する
ユーザーに表示される Airtable コンテンツに影響する MCP 呼び出しを行った後は、その呼び出しの結果からユーザーがアクセスできる最も具体的な画面へのクリック可能なリンクを返してください。このリンクを使って、ユーザーはエージェントの作業を確認できます。リンクがなければ、ユーザーが探しに行くまで作業内容は見えません。
URL テンプレート
すべての URL は、ツール呼び出しから実際に返された ID を使って作成します。ツールの応答に含まれていない ID スロット(viw*、tbl*、rec*、pag* など)は含めないでください。
| 画面 | URL パターン |
|---|---|
| ワークスペース | https://airtable.com/workspaces/<wspId> |
| ベース | https://airtable.com/<appId> |
| ベースのインターフェース一覧 | 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(ベース)、tbl(テーブル)、pag(インターフェースページ)、rec(レコード)、fld(フィールド)。MCP の応答に含まれる ID をそのまま使って URL を作成してください。小文字にしたり、変換したり、推測したりしないでください。
優先順位
作業内容に応じて、最も具体的な URL を案内してください。
- 単一レコード — 作業対象が 1 件のレコードの場合。
get_record_for_pageがレコードを返した場合はページのコンテキストの URL を、それ以外の場合はテーブルのコンテキストの URL を使ってください。 - インターフェースページ — ページを対象とした作業(ページの読み取り/一覧表示)の場合。
- テーブル — 複数レコードの作業またはスキーマの変更(テーブルやフィールドの作成/更新)の場合。各レコードを個別に列挙せず、テーブルへのリンクを 1 つだけ表示してください。
- ベース — 最後の手段です。新規作成したベース、ベース全体に関わるスキーマ操作、またはこれ以上具体的な対象がない場合に使ってください。
明確に「最適」といえるレコードがない複数レコードの結果では、テーブルまたはページへのリンクを 1 つだけ表示してください。レコードごとにリンクを作成しないでください。スパムになります。
権限に応じた案内
MCP ユーザーの認証情報によって、成功するツールは異なります。ツール呼び出しの一連の流れでアクセスできると確認できた画面に限り、URL を案内してください。
- ページ限定ユーザー:
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 を案内できます。
基本ルール:ツール呼び出しでアクセス可能と確認できなかった対象にはリンクしないでください。判断に迷った場合は、具体性を 1 段階下げ、実際にアクセスできると確認できた画面にリンクしてください。
表示方法
- 内容がわかるラベル付きの 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 のみ
- 推奨:
- 1 回の応答につきリンクは 1 つ。複数ステップの操作では、各ツール呼び出しの後にリンクを表示するのではなく、最後にまとめてください。
- リッチ埋め込みは使わないでください。現在、インラインのチャット画面では Airtable URL の OpenGraph カードは表示されません。ホスト側で表示されないものを前提に、応答を構成しないでください。
アンチパターン
- ID を生成しないでください。 URL 内のすべての ID は、ツールの応答からそのまま取得する必要があります。URL を埋めるために
viw*、tbl*、rec*、pag*などの識別子を捏造しないでください。ツールの呼び出しでその ID が返されていない場合、URL の該当箇所には有効なリンク先がありません。 ?home=<pagId>やその他のクエリパラメーターを含めないでください。 ページ管理モード(/build、/edit、/preview)はページの作成者向けであり、チャットからの引き継ぎには使用しません。
構成
Airtable のコンテンツを作成、変更、または返すワークフローや手法のスキルでは、引き継ぎ時にこの規約を組み込んでください。URL の構築をインラインで再実装しないでください。
別のスキルの本文では、次のように記述します。
"作業を完了したら、
show-airtable-linkスキルを使ってクリック可能なリンクを返してください。エージェントのツール呼び出しでアクセスが確認できた、最も具体的な URL を引き継いでください。"
例
製品ロードマップ用の新しいベースを作成した場合:
テーブルを 3 つ(ロードマップ、フィードバック、リリース)含むロードマップのベースを作成しました。
12 件のレコードの Status フィールドを更新した場合:
12 件のレコードの Status を「In Review」に更新しました。
インターフェースページから 1 件のレコードを返した場合(ページ制限のあるユーザー):
該当する取引が見つかりました:Acme Corp、50,000 ドル、Stage = Negotiation。