Agent Skillsopenai/plugins › airtable-cli

airtable-cli

GitHub

提供Airtable数据库的CLI交互能力,支持记录读写、表字段管理及数据搜索。适用于需通过命令行操作Airtable数据的自动化或开发场景。

plugins/airtable/skills/airtable-cli/SKILL.md openai/plugins

触发场景

用户提及Airtable、bases、tables、records或fields 任务涉及Airtable数据读取、写入或管理

安装

npx skills add openai/plugins --skill airtable-cli -g -y
更多选项

非标准路径

npx skills add https://github.com/openai/plugins/tree/main/plugins/airtable/skills/airtable-cli -g -y

不安装直接使用

npx skills use openai/plugins@airtable-cli

指定 Agent (Claude Code)

npx skills add openai/plugins --skill airtable-cli -a claude-code -g -y

安装 repo 全部 skill

npx skills add openai/plugins --all -g -y

预览 repo 内 skill

npx skills add openai/plugins --list

SKILL.md

Frontmatter
{
    "name": "airtable-cli",
    "description": "Lists bases, reads and writes records, manages tables and fields, filters and searches data in Airtable via the `airtable-mcp` CLI. Use when the task involves Airtable data or the user mentions airtable-mcp, bases, tables, records, or fields."
}

airtable-mcp

Self-discovery

Tools are fetched from the MCP server at runtime, so the CLI never has a hardcoded command list. Discover what's available:

airtable-mcp tools            # human-readable list
airtable-mcp tools --json     # machine-parseable list
airtable-mcp <tool> --help    # show flags and descriptions for a tool

Run airtable-mcp tools before assuming a tool exists. Tool names, arguments, and output shapes can change between server releases without a CLI update.

Install

npm install -g @airtable/mcp-cli

Auth

The CLI needs an Airtable personal access token (PAT). Two paths:

Environment variable (preferred for scripts/agents):

export AIRTABLE_TOKEN=pat_xxx

Interactive configure (stores token in ~/.airtable/cli.json with 0600 permissions):

airtable-mcp configure

Create tokens at https://airtable.com/create/tokens. Ensure the token has the scopes required by the tools being called.

AIRTABLE_TOKEN takes precedence over saved profiles when no --profile flag is set. Never log or echo tokens.

Quick reference

Task Command
Set up credentials airtable-mcp configure
Add a named profile airtable-mcp configure --profile work
Check auth status airtable-mcp whoami
Remove credentials airtable-mcp logout
Remove all profiles airtable-mcp logout --all
List available tools airtable-mcp tools
Run a tool airtable-mcp <tool> --flagName value
Get tool help airtable-mcp <tool> --help
Pass args via stdin echo '{"key":"val"}' | airtable-mcp <tool> --input -
Bypass tool cache airtable-mcp <tool> --refresh
Suppress status msgs airtable-mcp <tool> -q
Raw text output airtable-mcp <tool> --output raw
Use a specific profile airtable-mcp <tool> --profile work

Tool names use hyphens on the CLI (list-records) but underscores in MCP (list_records). The CLI translates automatically.

Workflow

  1. Auth — set AIRTABLE_TOKEN or run airtable-mcp configure
  2. Discover — run airtable-mcp tools to see available tools
  3. Inspect — run airtable-mcp <tool> --help for flags and descriptions
  4. Check access — in tools --json output, check the access field: read-only, write, or destructive. Confirm with the user before running destructive tools.
  5. Execute — run airtable-mcp <tool> --flagName value

Output & automation

  • Default output is formatted JSON to stdout. Status messages go to stderr.
  • --json on tools gives a JSON array of {name, title, access}.
  • -q / --quiet suppresses stderr status messages (cache warnings, etc).
  • --output raw returns the raw server response text instead of parsed JSON.
  • --input - reads tool arguments as a JSON object from stdin, bypassing flag parsing.
  • Exit codes: 0 success, 1 error (auth, tool failure, not found), 2 usage error (bad flags, bad input).

Common tasks

Find a base and list its tables:

airtable-mcp search-bases --searchQuery "Project Tracker" -q
airtable-mcp list-tables-for-base --baseId appK9MtBqFw3o5jGN -q

List records with specific fields:

airtable-mcp list-records-for-table \
  --baseId appK9MtBqFw3o5jGN --tableId tblL4GpTfEz8byRsW \
  --fieldIds '["Name","Status"]' --pageSize 10 -q

Filter records — filters use structured JSON, not formula strings. Wrap conditions in an operands array; the top-level operator defaults to and if omitted:

airtable-mcp list-records-for-table \
  --baseId appK9MtBqFw3o5jGN --tableId tblL4GpTfEz8byRsW \
  --filters '{"operator":"and","operands":[{"operator":"=","operands":["Status","Done"]}]}' -q

For select fields, filter by choice ID (from get-table-schema), not the display name. The airtable-filters skill covers compound filters, date filters, and operator-by-field-type details.

Search records — use search-records for free-text/fuzzy queries on large tables. Use list-records-for-table with --filters when filtering by exact field values:

airtable-mcp search-records \
  --baseId appK9MtBqFw3o5jGN --table tblL4GpTfEz8byRsW \
  --query "acme" --fields '["Name","Notes"]' -q

Pass --fields ALL_SEARCHABLE_FIELDS to search across every indexed field. Date, rating, checkbox, and button fields are not searchable.

Update records — complex args are easier via --input -:

echo '{"baseId":"appK9MtBqFw3o5jGN","tableId":"tblL4GpTfEz8byRsW","records":[{"id":"recVnR3xPq8sD2yLk","fields":{"fld8WsrpLHHevsnW8":"Done"}}]}' \
  | airtable-mcp update-records-for-table --input - -q

Select field values are returned as objects ({"id":"sel...","name":"Done"}) but must be written as plain strings ("Done"). Record field keys in create/update currently require field IDs (fldXXX) — use get-table-schema to resolve names to IDs before writing. Note that fieldIds, sort, and filters accept both names and IDs.

Gotchas

Problem Cause Fix
Unknown tool: X Tool name doesn't exist on the server or cache is stale Run airtable-mcp tools --refresh to refresh, then retry
Authentication failed Token expired, revoked, or wrong Run airtable-mcp configure or check AIRTABLE_TOKEN
Access denied Token missing required scopes Add scopes at https://airtable.com/create/tokens
Connection timed out Server unreachable (10s timeout) Check network; CLI falls back to stale cache if available
Boolean flags take no value --dryRun true passes "true" as next arg Use --dryRun alone (booleans are presence-based)
Array/object args fail Value isn't valid JSON Pass as JSON string: --fieldMappings '{"a":"b"}'
Filter rejected at top level Single condition passed without operands wrapper Wrap in {"operands":[...]} (operator defaults to and)
Sort key is fieldId not field --sort '[{"field":"Name"}]' silently ignored Use {"fieldId":"Name","direction":"asc"} — accepts field IDs or names
Select filter returns no matches Filtering by display name instead of choice ID Run get-table-schema first to get sel... choice IDs
INVALID_RECORDS on batch write Batch limit is 10 records per request (default; varies by account) Split into chunks of ≤10 and check <tool> --help for the current limit
Permission error on list-records-for-table User has interface-only access to the base Use list-records-for-page / get-record-for-page instead
Endpoints restricted CLI only allows HTTPS on *.airtable.com Cannot point at arbitrary servers (security constraint)

版本历史

  • 11c74d6 当前 2026-07-19 09:27

同 Skill 集合

.agents/skills/plugin-creator/SKILL.md
plugins/airtable/skills/airtable-filters/SKILL.md
plugins/airtable/skills/airtable-overview/SKILL.md
plugins/atlassian-rovo/skills/capture-tasks-from-meeting-notes/SKILL.md
plugins/atlassian-rovo/skills/generate-status-report/SKILL.md
plugins/base44/skills/base44-cli/SKILL.md
plugins/base44/skills/base44-sdk/SKILL.md
plugins/base44/skills/base44-troubleshooter/SKILL.md
plugins/boltz-api-cli/skills/boltz-check-status/SKILL.md
plugins/boltz-api-cli/skills/boltz-cli-setup/SKILL.md
plugins/boltz-api-cli/skills/boltz-protein-design/SKILL.md
plugins/boltz-api-cli/skills/boltz-protein-screen/SKILL.md
plugins/boltz-api-cli/skills/boltz-small-molecule-adme/SKILL.md
plugins/boltz-api-cli/skills/boltz-small-molecule-design/SKILL.md
plugins/boltz-api-cli/skills/boltz-small-molecule-screen/SKILL.md
plugins/boltz-api-cli/skills/boltz-structure-and-binding/SKILL.md
plugins/box/skills/box/SKILL.md
plugins/brighthire/skills/brighthire/SKILL.md
plugins/build-ios-apps/skills/ios-app-intents/SKILL.md
plugins/build-ios-apps/skills/ios-debugger-agent/SKILL.md
plugins/build-ios-apps/skills/ios-ettrace-performance/SKILL.md
plugins/build-ios-apps/skills/ios-memgraph-leaks/SKILL.md
plugins/build-ios-apps/skills/ios-simulator-browser/SKILL.md
plugins/build-ios-apps/skills/swiftui-liquid-glass/SKILL.md
plugins/build-ios-apps/skills/swiftui-performance-audit/SKILL.md
plugins/build-ios-apps/skills/swiftui-ui-patterns/SKILL.md
plugins/build-ios-apps/skills/swiftui-view-refactor/SKILL.md
plugins/build-macos-apps/skills/appkit-interop/SKILL.md
plugins/build-macos-apps/skills/build-run-debug/SKILL.md
plugins/build-macos-apps/skills/liquid-glass/SKILL.md
plugins/build-macos-apps/skills/packaging-notarization/SKILL.md
plugins/build-macos-apps/skills/signing-entitlements/SKILL.md
plugins/build-macos-apps/skills/swiftpm-macos/SKILL.md
plugins/build-macos-apps/skills/swiftui-patterns/SKILL.md
plugins/build-macos-apps/skills/telemetry/SKILL.md
plugins/build-macos-apps/skills/test-triage/SKILL.md
plugins/build-macos-apps/skills/view-refactor/SKILL.md
plugins/build-macos-apps/skills/window-management/SKILL.md
plugins/build-web-apps/skills/frontend-app-builder/SKILL.md
plugins/build-web-apps/skills/frontend-testing-debugging/SKILL.md
plugins/build-web-apps/skills/react-best-practices/SKILL.md
plugins/build-web-apps/skills/shadcn-best-practices/SKILL.md
plugins/build-web-apps/skills/supabase-best-practices/SKILL.md
plugins/build-web-data-visualization/skills/accessibility-and-inclusive-visualization/SKILL.md
plugins/build-web-data-visualization/skills/canvas2d-data-visualization/SKILL.md
plugins/build-web-data-visualization/skills/d3-data-visualization/SKILL.md
plugins/build-web-data-visualization/skills/dashboards-and-real-time-visualization/SKILL.md
plugins/build-web-data-visualization/skills/data-visualization/SKILL.md
plugins/build-web-data-visualization/skills/gantt-chart-visualization/SKILL.md

元信息

文件数
0
版本
11c74d6
Hash
8c7aa197
收录时间
2026-07-19 09:27

首页 - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-08-03 09:23
浙ICP备14020137号-1 $访客地图$