Automate Airtable tasks via Rube MCP (Composio): records, bases, tables, fields, views. Always search tools first for current schemas.
RUBE_MANAGE_CONNECTIONS with toolkit airtableRUBE_SEARCH_TOOLS first to get current tool schemasRUBE_SEARCH_TOOLS respondsRUBE_MANAGE_CONNECTIONS with toolkit airtableAIRTABLE_LIST_BASES - Discover available bases [Prerequisite]AIRTABLE_GET_BASE_SCHEMA - Inspect table structure [Prerequisite]AIRTABLE_LIST_RECORDS - List/filter records [Optional]AIRTABLE_CREATE_RECORD / AIRTABLE_CREATE_RECORDS - Create records [Optional]AIRTABLE_UPDATE_RECORD / AIRTABLE_UPDATE_MULTIPLE_RECORDS - Update records [Optional]AIRTABLE_DELETE_RECORD / AIRTABLE_DELETE_MULTIPLE_RECORDS - Delete records [Optional]baseId: Base ID (starts with 'app', e.g., 'appXXXXXXXXXXXXXX')tableIdOrName: Table ID (starts with 'tbl') or table namefields: Object mapping field names to valuesrecordId: Record ID (starts with 'rec') for updates/deletesfilterByFormula: Airtable formula for filteringtypecast: Set true for automatic type conversionAIRTABLE_GET_BASE_SCHEMA - Verify field names and types [Prerequisite]AIRTABLE_LIST_RECORDS - Query with filterByFormula [Required]AIRTABLE_GET_RECORD - Get full record details [Optional]filterByFormula: Airtable formula (e.g., {Status}='Done')sort: Array of sort objectsfields: Array of field names to returnmaxRecords: Max total records across all pagesoffset: Pagination cursor from previous response{} and match schema exactly{Status}='Active' not {Status}=ActiveAIRTABLE_GET_BASE_SCHEMA - Inspect current schema [Prerequisite]AIRTABLE_CREATE_FIELD - Create a new field [Optional]AIRTABLE_UPDATE_FIELD - Rename/describe a field [Optional]AIRTABLE_UPDATE_TABLE - Update table metadata [Optional]name: Field nametype: Field type (singleLineText, number, singleSelect, etc.)options: Type-specific options (choices for select, precision for number)description: Field descriptionAIRTABLE_LIST_COMMENTS - List comments on a record [Required]baseId: Base IDtableIdOrName: Table identifierrecordId: Record ID (17 chars, starts with 'rec')pageSize: Comments per page (max 100){Status}='Done' - Equals{Priority}>1 - Greater than{Name}!='' - Not emptyAND({A}='x', {B}='y') - Both conditionsOR({A}='x', {A}='y') - Either conditionFIND('test', {Name})>0 - Contains textIS_BEFORE({Due Date}, TODAY()) - Date comparison{Name}='John''s Company')pageSize (max 100)offset stringoffset to next request unchangedappXXXXXXXXXXXXXX (17 chars)tblXXXXXXXXXXXXXX (17 chars)recXXXXXXXXXXXXXX (17 chars)fldXXXXXXXXXXXXXX (17 chars)| Task | Tool Slug | Key Params |
|---|---|---|
| List bases | AIRTABLE_LIST_BASES | (none) |
| Get schema | AIRTABLE_GET_BASE_SCHEMA | baseId |
| List records | AIRTABLE_LIST_RECORDS | baseId, tableIdOrName |
| Get record | AIRTABLE_GET_RECORD | baseId, tableIdOrName, recordId |
| Create record | AIRTABLE_CREATE_RECORD | baseId, tableIdOrName, fields |
| Create records | AIRTABLE_CREATE_RECORDS | baseId, tableIdOrName, records |
| Update record | AIRTABLE_UPDATE_RECORD | baseId, tableIdOrName, recordId, fields |
| Update records | AIRTABLE_UPDATE_MULTIPLE_RECORDS | baseId, tableIdOrName, records |
| Delete record | AIRTABLE_DELETE_RECORD | baseId, tableIdOrName, recordId |
| Create field | AIRTABLE_CREATE_FIELD | baseId, tableIdOrName, name, type |
| Update field | AIRTABLE_UPDATE_FIELD | baseId, tableIdOrName, fieldId |
| Update table | AIRTABLE_UPDATE_TABLE | baseId, tableIdOrName, name |
| List comments | AIRTABLE_LIST_COMMENTS | baseId, tableIdOrName, recordId |