MCP Directory

Airtable MCP Server

Read and write access to Airtable bases — inspect schemas, query, and modify records, tables, fields, and comments.

Unverified
stdio (local)
API key
TypeScript

Add to your client

Copy the config for your MCP client and paste it into its config file.

Install / run
npx -y airtable-mcp-server

Paste into ~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "airtable-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "airtable-mcp-server"
      ],
      "env": {
        "AIRTABLE_API_KEY": "pat123.abc123"
      }
    }
  }
}

Step-by-step guides: Add to Claude Desktop · Add to Cursor · Add to Windsurf

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)

About Airtable MCP Server

airtable-mcp-server exposes Airtable bases to MCP clients such as Claude Desktop, Cursor, and Cline. LLMs can list accessible bases, inspect table and field schemas at varying detail levels, query and search records, and create, update, or delete records. With a write-scoped token it can also create and update tables and fields, and read or write record comments. It is distributed on npm and can be installed as a Claude Desktop extension (.mcpb) or via JSON configuration. A stateless HTTP transport is available for remote clients.

Tools & capabilities (15)

list_records

Lists records from a specified Airtable table, with optional maxRecords limit and Airtable filterByFormula filtering.

search_records

Searches for records containing specific text, optionally restricted to given field IDs, with an optional maxRecords limit.

list_bases

Lists all accessible Airtable bases, returning base ID, name, and permission level. No input parameters required.

list_tables

Lists all tables in a base, returning ID, name, description, fields, and views at the requested detailLevel (tableIdentifiersOnly, identifiersOnly, or full).

describe_table

Gets detailed information about a single table at the requested detailLevel, returning the same format as list_tables for one table.

get_record

Gets a specific record by its record ID from a table.

create_record

Creates a new record in a table from a provided fields object.

update_records

Updates one or more records in a table, given an array of record IDs and the fields to update.

delete_records

Deletes one or more records from a table, given an array of record IDs.

create_table

Creates a new table in a base with a name, optional description, and an array of field definitions (name, type, description, options).

update_table

Updates a table's name and/or description.

create_field

Creates a new field in a table with a name, type, optional description, and field-specific options.

update_field

Updates a field's name and/or description.

create_comment

Creates a comment on a record, with optional parentCommentId for threaded replies; returns the created comment with ID, author, creation time, and text.

list_comments

Lists comments on a record (newest to oldest) with pagination via pageSize and offset; returns author, text, timestamps, reactions, and mentions.

What this server can do

Airtable MCP Server provides tools for these capabilities — tap one to see every MCP server that does the same:

When to use it

  • Letting an AI assistant query and summarize records across Airtable bases
  • Inspecting base and table schemas before reading or writing data
  • Creating, updating, and deleting records through natural-language requests
  • Programmatically building or modifying tables and fields
  • Reading and posting record comments for collaboration workflows

Security notes

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 FAQ

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).

Is it read-only?

No. It supports both read and write operations. Write capabilities depend on the token's scopes — without :write scopes the server can only read.

Alternatives to Airtable MCP Server

Compare all alternatives →

Google's official MCP server with prebuilt BigQuery tools, querying datasets via Application Default Credentials.

Verified
stdio (local)
OAuth
Go
10 tools
Updated 15 days agoRepo

Read/write Postgres access plus index tuning, EXPLAIN plans, and database health analysis for AI agents.

Verified
stdio (local)
API key
Python
9 tools
Updated 3 months agoRepo

Official Supabase server: manage tables, run SQL, branches, configs and edge functions from your AI client.

Verified
HTTP (remote)
OAuth
TypeScript
12 tools
Updated 1 month agoRepo