# Cursor

## Using the install deep link

1. Click the [Airtable MCP install deeplink for Cursor](cursor://anysphere.cursor-deeplink/mcp/install?name=airtable&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vbWNwLmFpcnRhYmxlLmNvbS9tY3AifQ==).
2. You'll be redirected to **Cursor** > **Cursor Settings**. Under **Tools & MCP** > **Installed MCP servers**, navigate to the **Install MCP Server?** dialog.
3. Press **Install** and authorize via OAuth.

## Connecting manually

1. Open your user-level `~/.cursor/mcp.json` (or a project-level `.cursor/mcp.json` in trusted projects) and configure the Airtable MCP server:

```json
{
    "mcpServers": {
        "server": {
            "type": "http",
            "url": "https://mcp.airtable.com/mcp"
        }
    }
}
```

By default, Cursor authenticates with Airtable via an auto-generated OAuth client for each new connection via _Dynamic Client Registration (DCR)_, but you may optionally register a pre-provisioned [static OAuth client](https://cursor.com/docs/mcp#static-oauth-for-remote-servers) or personal access token (PAT).

-   **Static OAuth Client** - this can be useful if you want all users in your project to authenticate through a single, allow-listable OAuth client.

1. Register an [OAuth integration](https://airtable.com/create/oauth) with the Cursor MCP redirect url (`cursor://anysphere.cursor-mcp/oauth/callback`).
2. Grant it the following scopes:

```
data.records:read
data.records:write
schema.bases:read
schema.bases:write
data.recordComments:read
data.recordComments:write
workspacesAndBases:read
```

3. Enter its **OAuth Client ID** in the Cursor configuration file.

```json
{
    "mcpServers": {
        "server": {
            "type": "http",
            "url": "https://mcp.airtable.com/mcp",
            "auth": {
                "CLIENT_ID": "your-oauth-client-id"
            }
        }
    }
}
```

-   **Personal access token (PAT)**

1. [Create a personal access token](/create/tokens/new?scopes=data.records:read,data.records:write,schema.bases:read,schema.bases:write,data.recordComments:read,data.recordComments:write,workspacesAndBases:read) with the Airtable MCP scopes pre-selected (remove any you don't need to limit access).
2. Store your PAT as an environment variable (e.g., `AIRTABLE_PAT`).
3. Enter your PAT environment variable in the Cursor configuration file.

```json
{
    "mcpServers": {
        "server": {
            "type": "http",
            "url": "https://mcp.airtable.com/mcp",
            "headers": {
                "Authorization": "Bearer ${env:AIRTABLE_PAT}"
            }
        }
    }
}
```
