Loading...
Loading...
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.
npx skill4agent add airtable/skills airtable-cliairtable-mcp tools # human-readable list
airtable-mcp tools --json # machine-parseable list
airtable-mcp <tool> --help # show flags and descriptions for a toolairtable-mcp toolsnpm install -g @airtable/mcp-cliexport AIRTABLE_TOKEN=pat_xxx~/.airtable/cli.jsonairtable-mcp configureAIRTABLE_TOKEN--profile| Task | Command |
|---|---|
| Set up credentials | |
| Add a named profile | |
| Check auth status | |
| Remove credentials | |
| Remove all profiles | |
| List available tools | |
| Run a tool | |
| Get tool help | |
| Pass args via stdin | |
| Bypass tool cache | |
| Suppress status msgs | |
| Raw text output | |
| Use a specific profile | |
list-recordslist_recordsAIRTABLE_TOKENairtable-mcp configureairtable-mcp toolsairtable-mcp <tool> --helptools --jsonaccessread-onlywritedestructivedestructiveairtable-mcp <tool> --flagName value--jsontools{name, title, access}-q--quiet--output raw--input -012airtable-mcp search-bases --searchQuery "Project Tracker" -q
airtable-mcp list-tables-for-base --baseId appEXAMPLEbase001 -qairtable-mcp list-records-for-table \
--baseId appEXAMPLEbase001 --tableId tblEXAMPLEtable01 \
--fieldIds '["Name","Status"]' --pageSize 10 -qoperandsoperatorandairtable-mcp list-records-for-table \
--baseId appEXAMPLEbase001 --tableId tblEXAMPLEtable01 \
--filters '{"operator":"and","operands":[{"operator":"=","operands":["Status","Done"]}]}' -qget-table-schemaairtable-filterssearch-recordslist-records-for-table--filtersairtable-mcp search-records \
--baseId appEXAMPLEbase001 --table tblEXAMPLEtable01 \
--query "acme" --fields '["Name","Notes"]' -q--fields ALL_SEARCHABLE_FIELDS--input -echo '{"baseId":"appEXAMPLEbase001","tableId":"tblEXAMPLEtable01","records":[{"id":"recEXAMPLErecord1","fields":{"fldEXAMPLEfield01":"Done"}}]}' \
| airtable-mcp update-records-for-table --input - -q{"id":"sel...","name":"Done"}"Done"fldEXAMPLEfield02get-table-schemafieldIdssortfilters| Problem | Cause | Fix |
|---|---|---|
| Tool name doesn't exist on the server or cache is stale | Run |
| Token expired, revoked, or wrong | Run |
| Token missing required scopes | Add scopes at https://airtable.com/create/tokens |
| Server unreachable (10s timeout) | Check network; CLI falls back to stale cache if available |
| Boolean flags take no value | | Use |
| Array/object args fail | Value isn't valid JSON | Pass as JSON string: |
| Filter rejected at top level | Single condition passed without | Wrap in |
Sort key is | | Use |
| Select filter returns no matches | Filtering by display name instead of choice ID | Run |
| Batch limit is 10 records per request (default; varies by account) | Split into chunks of ≤10 and check |
Permission error on | User has interface-only access to the base | Use |
| Endpoints restricted | CLI only allows HTTPS on | Cannot point at arbitrary servers (security constraint) |