airtable-automation について
Rube MCP 経由で Composio の Airtable ツールキットを使い、レコード、スキーマ、コメントを操作するスキルです。ツールの実行順、パラメーター、一般的な制限やエラーへの注意点を示します。
主な機能
- 01レコードの作成・読み取り・更新・削除
- 02数式によるレコード検索
- 03フィールドとテーブル情報の管理
- 04レコードコメントの表示と追加
- 05ページネーションと一括処理の制限案内
活用シーン
- 01Airtable レコードの変更を自動化
- 02数式フィルターによるレコード検索
- 03テーブルフィールドの作成や更新
- 04レコードコメントの確認や追加
MCP 対応
Rube MCP を介して Composio の Airtable ツールキットにアクセスします。操作には有効な Airtable 接続が必要で、実行前に最新のツールスキーマを取得することが推奨されています。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ sickn33/ agentic-awesome-skills --skill airtable-automationインストール後、Claude Code で/airtable-automationを入力して読み込まれたか確認します。
詳細
Rube MCP による Airtable の自動化
Composio の Airtable ツールキットを Rube MCP 経由で使用し、Airtable の操作を自動化します。
前提条件
- Rube MCP が接続されている必要があります(RUBE_SEARCH_TOOLS が利用可能)
- ツールキット
airtableを指定したRUBE_MANAGE_CONNECTIONSによるアクティブな 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- 利用可能なベースを検出します [前提条件]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: ベース ID('app' で始まります。例: 'appXXXXXXXXXXXXXX')tableIdOrName: テーブル ID('tbl' で始まります)またはテーブル名fields: フィールド名を値にマッピングするオブジェクトrecordId: 更新/削除用のレコード ID('rec' で始まります)filterByFormula: フィルタリング用の Airtable 数式typecast: 自動型変換を有効にするには true を設定します
注意点:
- pageSize は最大 100 です。オフセットページネーションを使用します。ページ間でフィルターを変更すると、行のスキップや重複が発生する可能性があります
- CREATE_RECORDS は 1 リクエストあたり 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 のレート制限: 1 ベースあたり約 5 リクエスト/秒です。429 の場合は Retry-After で処理してください
3. フィールドとスキーマの管理
使用するタイミング: ユーザーがテーブルフィールドの作成や変更を希望する場合
ツールの実行順序:
AIRTABLE_GET_BASE_SCHEMA- 現在のスキーマを検査します [前提条件]AIRTABLE_CREATE_FIELD- 新しいフィールドを作成します [任意]AIRTABLE_UPDATE_FIELD- フィールドの名前変更/説明の更新を行います [任意]AIRTABLE_UPDATE_TABLE- テーブルメタデータを更新します [任意]
主要なパラメータ:
name: フィールド名type: フィールド型(singleLineText、number、singleSelect など)options: 型固有のオプション(選択フィールドの選択肢、数値の精度など)description: フィールドの説明
注意点:
- UPDATE_FIELD は名前/説明のみを変更し、型/オプションは変更しません。置き換え用のフィールドを作成して移行してください
- 計算フィールド(formula、rollup、lookup)は API 経由で作成できません
- 型オプションが欠落しているか不正な形式の場合は 422 が返ります
4. コメントの管理
使用する場面: ユーザーがレコードのコメントを表示または追加したい場合
ツールの順序:
AIRTABLE_LIST_COMMENTS- レコードのコメントを一覧表示します [必須]
主要なパラメータ:
baseId: ベース IDtableIdOrName: テーブル識別子recordId: レコード ID (17 文字、'rec' で始まる)pageSize: 1 ページあたりのコメント数 (最大 100)
注意点:
- レコード ID は 'rec' で始まる正確に 17 文字である必要があります
共通パターン
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 の形式:
- ベース ID:
appXXXXXXXXXXXXXX(17 文字) - テーブル ID:
tblXXXXXXXXXXXXXX(17 文字) - レコード ID:
recXXXXXXXXXXXXXX(17 文字) - フィールド ID:
fldXXXXXXXXXXXXXX(17 文字)
バッチの制限:
- CREATE_RECORDS: リクエストあたり最大 10 件
- UPDATE_MULTIPLE_RECORDS: リクエストあたり最大 10 件
- DELETE_MULTIPLE_RECORDS: リクエストあたり最大 10 件
クイックリファレンス
| タスク | ツールスラッグ | 主要なパラメータ |
|---|---|---|
| ベースの一覧表示 | 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 |
使用する場面
このスキルは、概要で説明されているワークフローまたはアクションを実行する場合に適用できます。
例
ユーザーのリクエスト:
Rube MCP (Composio) 経由で Airtable のタスクを自動化する: レコード、ベース、テーブル、フィールド、ビュー。
制限事項
- このスキルは、タスクが上記で説明した範囲に明確に一致する場合にのみ使用してください。
- 出力を、環境固有の検証、テスト、または専門家によるレビューの代替として扱わないでください。
- 必要な入力、権限、安全上の境界、または成功基準が欠けている場合は、停止して明確化を求めてください。