
Airtable
The Airtable MCP Server provides read and write access to Airtable databases through the Model Context Protocol, enabling LLMs to inspect database schemas and perform CRUD operations on records. It exposes tools for querying and modifying Airtable bases after authenticating with a personal access token, solving the problem of integrating Airtable data directly into AI workflows without manual data transfer. The server supports multiple client implementations including Claude Desktop, Cursor, and Cline, with flexible installation options ranging from browser extensions to manual configuration.
- GitHub stars
- 456
- tools
- 18
- auth
- Secret needed
- transport
- STDIO
- env var
- 1
- last updated
- Jul 27, 2026
Tools
18 toolsPublic tool metadata for what this MCP can expose to an agent.
airtable_list_recordsList records from an Airtable table. Supports filtering with formulas, sorting, field selection, views, and pagination (max 100 per page). Use the offset token from the response to get the next page.9 params
List records from an Airtable table. Supports filtering with formulas, sorting, field selection, views, and pagination (max 100 per page). Use the offset token from the response to get the next page.
base_idstringfieldsarrayfilter_by_formulastringmax_recordsnumberoffsetstringpage_sizenumbersortarraytable_id_or_namestringviewstringairtable_get_recordGet a single record by its ID. Returns the record with all fields.3 params
Get a single record by its ID. Returns the record with all fields.
base_idstringrecord_idstringtable_id_or_namestringairtable_create_recordsCreate one or more records in a table (max 10 per request). Each record needs a "fields" object with field name-value pairs. Enable typecast to auto-convert values to the correct field type.4 params
Create one or more records in a table (max 10 per request). Each record needs a "fields" object with field name-value pairs. Enable typecast to auto-convert values to the correct field type.
base_idstringrecordsarraytable_id_or_namestringtypecastbooleanairtable_update_recordsUpdate specific fields in one or more records (PATCH — partial update, max 10 per request). Only specified fields are changed; other fields remain untouched.4 params
Update specific fields in one or more records (PATCH — partial update, max 10 per request). Only specified fields are changed; other fields remain untouched.
base_idstringrecordsarraytable_id_or_namestringtypecastbooleanairtable_delete_recordsDelete one or more records by their IDs (max 10 per request). This action is irreversible.3 params
Delete one or more records by their IDs (max 10 per request). This action is irreversible.
base_idstringrecord_idsarraytable_id_or_namestringairtable_upsert_recordsUpdate existing records or create new ones based on matching fields. Specify fields_to_merge_on to match existing records — matched records are updated, unmatched are created.5 params
Update existing records or create new ones based on matching fields. Specify fields_to_merge_on to match existing records — matched records are updated, unmatched are created.
base_idstringfields_to_merge_onarrayrecordsarraytable_id_or_namestringtypecastbooleanairtable_list_basesList all bases accessible to the authenticated user. Returns base ID, name, and permission level.1 params
List all bases accessible to the authenticated user. Returns base ID, name, and permission level.
offsetstringairtable_get_base_schemaGet the complete schema of a base — all tables with their fields (name, type, options) and views. Essential for understanding the data structure before querying.1 params
Get the complete schema of a base — all tables with their fields (name, type, options) and views. Essential for understanding the data structure before querying.
base_idstringairtable_create_baseCreate a new base in a workspace. Requires at least one table with at least one field.3 params
Create a new base in a workspace. Requires at least one table with at least one field.
namestringtablesarrayworkspace_idstringairtable_create_tableCreate a new table in a base. Requires at least one field. Field types: singleLineText, multilineText, number, singleSelect, multipleSelects, date, checkbox, email, url, etc.4 params
Create a new table in a base. Requires at least one field. Field types: singleLineText, multilineText, number, singleSelect, multipleSelects, date, checkbox, email, url, etc.
base_idstringdescriptionstringfieldsarraynamestringairtable_update_tableUpdate a table name or description.4 params
Update a table name or description.
base_idstringdescriptionstringnamestringtable_idstringairtable_create_fieldAdd a new field to a table. Common types: singleLineText, multilineText, number, singleSelect, multipleSelects, date, dateTime, checkbox, email, url, multipleAttachments, multipleRecordLinks.6 params
Add a new field to a table. Common types: singleLineText, multilineText, number, singleSelect, multipleSelects, date, dateTime, checkbox, email, url, multipleAttachments, multipleRecordLinks.
base_idstringdescriptionstringnamestringoptionsobjecttable_idstringtypestringairtable_update_fieldUpdate a field name or description. Cannot change field type.5 params
Update a field name or description. Cannot change field type.
base_idstringdescriptionstringfield_idstringnamestringtable_idstringairtable_create_webhookCreate a webhook to receive notifications when data changes in a base. Webhooks expire after 7 days — use airtable_refresh_webhook to extend. Returns a MAC secret for verifying payloads.3 params
Create a webhook to receive notifications when data changes in a base. Webhooks expire after 7 days — use airtable_refresh_webhook to extend. Returns a MAC secret for verifying payloads.
base_idstringnotification_urlstringspecificationobjectairtable_list_webhooksList all webhooks for a base. Shows webhook IDs, enabled status, notification URLs, and expiration times.1 params
List all webhooks for a base. Shows webhook IDs, enabled status, notification URLs, and expiration times.
base_idstringairtable_refresh_webhookExtend a webhook expiration time by 7 days from now. Webhooks expire after 7 days — call this periodically to keep them active.2 params
Extend a webhook expiration time by 7 days from now. Webhooks expire after 7 days — call this periodically to keep them active.
base_idstringwebhook_idstringairtable_list_webhook_payloadsGet pending webhook notification payloads. Returns changed records, fields, and tables since the last cursor position.4 params
Get pending webhook notification payloads. Returns changed records, fields, and tables since the last cursor position.
base_idstringcursornumberlimitnumberwebhook_idstringairtable_delete_webhookDelete a webhook. Stops all notifications for this webhook.2 params
Delete a webhook. Stops all notifications for this webhook.
base_idstringwebhook_idstringSponsors
Configuration
AIRTABLE_API_KEY*secretAirtable personal access token (e.g., pat123.abc123). Create at https://airtable.com/create/tokens/new with scopes: schema.bases:read, data.records:read, and optionally schema.bases:write and data.records:write.
Readme
airtable-mcp-server
A Model Context Protocol server that provides read and write access to Airtable databases. This server enables LLMs to inspect database schemas, then read and write records.
https://github.com/user-attachments/assets/c8285e76-d0ed-4018-94c7-20535db6c944
Installation
Follow the instructions on install-mcp, which generates the right config for your MCP client (Claude Code, Claude Desktop, Cursor, Cline, VS Code, and more).
You'll need an Airtable personal access token — create one here with scopes schema.bases:read and data.records:read (and optionally schema.bases:write, data.records:write, data.recordComments:read, data.recordComments:write), and access to the bases you want to use. It looks something like pat123.abc123 (but longer). Set it as AIRTABLE_API_KEY (replacing the placeholder in the generated config).
Components
Tools
Details
- Repository
- github.com/domdomegg/airtable-mcp-server
- Website
- github.com/domdomegg/airtable-mcp-server#readme
- Categories
- Databases, Documents & Knowledge
- Package
airtable-mcp-server- Transport
- STDIO
- Auth
- Required
- Registry
- MCP registry, active