---
title: "Airtable Integration"
description: "Manage Airtable bases, tables, and records"
---
The Airtable integration provides access to manage Airtable bases, tables, and records through the Integrate MCP server.

## Installation

The Airtable integration is included with the SDK:

```typescript
import { airtableIntegration } from "integrate-sdk/server";
```

## Setup

### 1. Create an Airtable OAuth App

1. Go to [Airtable Developer Hub](https://airtable.com/create/oauth)
2. Create a new OAuth application
3. Configure your redirect URI
4. Note your Client ID and Client Secret

### 2. Configure the Integration on Your Server

Add the Airtable integration to your server configuration. The integration automatically reads `AIRTABLE_CLIENT_ID` and `AIRTABLE_CLIENT_SECRET` from your environment variables:

```typescript
import { createMCPServer, airtableIntegration } from "integrate-sdk/server";

export const { client: serverClient } = createMCPServer({
  apiKey: process.env.INTEGRATE_API_KEY,
  integrations: [
    airtableIntegration({
    }),
  ],
});
```

You can override the environment variables by passing explicit values:

```typescript
airtableIntegration({
  clientId: process.env.CUSTOM_AIRTABLE_ID,
  clientSecret: process.env.CUSTOM_AIRTABLE_SECRET,
});
```

### 3. Client-Side Usage

The default client automatically includes all integrations. You can use it directly:

```typescript
import { client } from "integrate-sdk";

await client.authorize("airtable");
const result = await client.airtable.listBases({});

console.log(result);
```

If you're using a custom client, add the integration to the integrations array:

```typescript
import { createMCPClient, airtableIntegration } from "integrate-sdk";

const customClient = createMCPClient({
  integrations: [airtableIntegration()],
});
```

## Configuration Options

<AutoTypeTable
  path="../src/integrations/airtable.ts"
  name="AirtableIntegrationConfig"
/>


## Tools

### `airtable_list_bases`

List all accessible bases

<AutoTypeTable
  path="generated/tool-params/airtable.ts"
  name="AirtableListBasesParams"
/>

### `airtable_get_base`

Get a specific base

<AutoTypeTable
  path="generated/tool-params/airtable.ts"
  name="AirtableGetBaseParams"
/>

### `airtable_list_tables`

List tables in a base

<AutoTypeTable
  path="generated/tool-params/airtable.ts"
  name="AirtableListTablesParams"
/>

### `airtable_get_table`

Get a specific table schema

<AutoTypeTable
  path="generated/tool-params/airtable.ts"
  name="AirtableGetTableParams"
/>

### `airtable_list_records`

List records in a table

<AutoTypeTable
  path="generated/tool-params/airtable.ts"
  name="AirtableListRecordsParams"
/>

### `airtable_get_record`

Get a specific record

<AutoTypeTable
  path="generated/tool-params/airtable.ts"
  name="AirtableGetRecordParams"
/>

### `airtable_create_record`

Create a new record

<AutoTypeTable
  path="generated/tool-params/airtable.ts"
  name="AirtableCreateRecordParams"
/>

### `airtable_update_record`

Update an existing record

<AutoTypeTable
  path="generated/tool-params/airtable.ts"
  name="AirtableUpdateRecordParams"
/>

### `airtable_search_records`

Search for records using a formula

<AutoTypeTable
  path="generated/tool-params/airtable.ts"
  name="AirtableSearchRecordsParams"
/>

### `airtable_delete_record`

Delete a record

<AutoTypeTable
  path="generated/tool-params/airtable.ts"
  name="AirtableDeleteRecordParams"
/>

### `airtable_create_base`

Create a new base

<AutoTypeTable
  path="generated/tool-params/airtable.ts"
  name="AirtableCreateBaseParams"
/>

### `airtable_create_table`

Create a new table in a base

<AutoTypeTable
  path="generated/tool-params/airtable.ts"
  name="AirtableCreateTableParams"
/>

### `airtable_update_table`

Update a table's name or description

<AutoTypeTable
  path="generated/tool-params/airtable.ts"
  name="AirtableUpdateTableParams"
/>

### `airtable_create_field`

Create a new field in a table

<AutoTypeTable
  path="generated/tool-params/airtable.ts"
  name="AirtableCreateFieldParams"
/>

### `airtable_update_field`

Update a field's name or description

<AutoTypeTable
  path="generated/tool-params/airtable.ts"
  name="AirtableUpdateFieldParams"
/>

### `airtable_list_comments`

List comments on a record

<AutoTypeTable
  path="generated/tool-params/airtable.ts"
  name="AirtableListCommentsParams"
/>

### `airtable_create_comment`

Create a comment on a record

<AutoTypeTable
  path="generated/tool-params/airtable.ts"
  name="AirtableCreateCommentParams"
/>

### `airtable_update_comment`

Update a comment

<AutoTypeTable
  path="generated/tool-params/airtable.ts"
  name="AirtableUpdateCommentParams"
/>

### `airtable_delete_comment`

Delete a comment

<AutoTypeTable
  path="generated/tool-params/airtable.ts"
  name="AirtableDeleteCommentParams"
/>

### `airtable_list_webhooks`

List webhooks for a base

<AutoTypeTable
  path="generated/tool-params/airtable.ts"
  name="AirtableListWebhooksParams"
/>

### `airtable_create_webhook`

Create a webhook for a base

<AutoTypeTable
  path="generated/tool-params/airtable.ts"
  name="AirtableCreateWebhookParams"
/>

### `airtable_delete_webhook`

Delete a webhook

<AutoTypeTable
  path="generated/tool-params/airtable.ts"
  name="AirtableDeleteWebhookParams"
/>

### `airtable_list_webhook_payloads`

List webhook payloads

<AutoTypeTable
  path="generated/tool-params/airtable.ts"
  name="AirtableListWebhookPayloadsParams"
/>

### `airtable_refresh_webhook`

Refresh a webhook to extend its expiration

<AutoTypeTable
  path="generated/tool-params/airtable.ts"
  name="AirtableRefreshWebhookParams"
/>

## Notes

- Category: Business
- Authentication mode: OAuth
