
How to add Airtable MCP Server to Cursor
Read and write access to Airtable bases — inspect schemas, query, and modify records, tables, fields, and comments. Paste the config into ~/.cursor/mcp.json and restart Cursor.
Last updated June 14, 2026 · 449★ · stdio · apikey
Cursor config for Airtable MCP Server
npx -y airtable-mcp-server{
"mcpServers": {
"airtable-mcp-server": {
"command": "npx",
"args": [
"-y",
"airtable-mcp-server"
],
"env": {
"AIRTABLE_API_KEY": "pat123.abc123"
}
}
}
}Setup steps
- 1Open Cursor → Settings → MCP → Add new MCP server (or edit ~/.cursor/mcp.json directly).
- 2Paste the Airtable MCP Server config below into the "mcpServers" object.
- 3Fill in placeholder secrets, then save.
- 4Cursor reloads MCP servers automatically — check Settings → MCP for a green status dot.
- 5Ask Cursor to use one of Airtable MCP Server's tools to confirm it's connected.
Before you start
- An Airtable personal access token with appropriate scopes (schema.bases:read, data.records:read, and optionally the :write and data.recordComments scopes)
- Node.js (for npx / JSON configuration installation)
What Airtable MCP Server can do in Cursor
list_recordsLists records from a specified Airtable table, with optional maxRecords limit and Airtable filterByFormula filtering.
search_recordsSearches for records containing specific text, optionally restricted to given field IDs, with an optional maxRecords limit.
list_basesLists all accessible Airtable bases, returning base ID, name, and permission level. No input parameters required.
list_tablesLists all tables in a base, returning ID, name, description, fields, and views at the requested detailLevel (tableIdentifiersOnly, identifiersOnly, or full).
describe_tableGets detailed information about a single table at the requested detailLevel, returning the same format as list_tables for one table.
get_recordGets a specific record by its record ID from a table.
create_recordCreates a new record in a table from a provided fields object.
update_recordsUpdates one or more records in a table, given an array of record IDs and the fields to update.
Security
Authentication uses an Airtable personal access token supplied via the AIRTABLE_API_KEY environment variable; scope the token to only the bases and permissions you need. The optional HTTP transport (MCP_TRANSPORT=http) has no built-in authentication and should only be run behind a reverse proxy or in a secured environment.
Airtable MCP Server + Cursor FAQ
Where is the Cursor config file?
Cursor reads MCP servers from ~/.cursor/mcp.json. Paste the Airtable MCP Server config there under the "mcpServers" key and restart the client.
Is Airtable MCP Server safe to use with Cursor?
Authentication uses an Airtable personal access token supplied via the AIRTABLE_API_KEY environment variable; scope the token to only the bases and permissions you need. The optional HTTP transport (MCP_TRANSPORT=http) has no built-in authentication and should only be run behind a reverse proxy or in a secured environment.
How do I authenticate?
Create an Airtable personal access token at airtable.com/create/tokens/new, grant it the scopes you need (schema.bases:read and data.records:read at minimum, plus :write scopes for editing), and provide it via the AIRTABLE_API_KEY environment variable.
Can it run as a remote/HTTP server?
Yes. Running with MCP_TRANSPORT=http PORT=3000 npx airtable-mcp-server starts a stateless HTTP server at http://localhost:3000/mcp. This transport has no built-in authentication, so only run it behind a reverse proxy or in a secured environment.
Which clients are supported?
The README documents installation for Claude Desktop (extensions browser, .mcpb, or JSON config), Cursor (one-click or JSON config), and Cline (marketplace or JSON config).