Connector · Data and infrastructure

An Airtable teammate in Slack, running on Airtable's MCP server.

Chickpea gives a Slack channel a named AI teammate that holds its own Airtable connection. It signs in with OAuth and calls Airtable's MCP server, so there is no client to configure and no key to paste. Airtable's consent screen is where you choose which workspaces and bases the connection may reach, and the teammate never sees past that choice.

What people ask it.

The teammate is @pm, in #ops. Pick a scenario to watch it play.

# ops
18
Today
M
Marco
@pm which requests in Ops Requests are still in review, and who owns each one?
👀 1
pmAPP
Six rows are in review. Two of them have nobody on the Owner field.
RequestTeamOwnerWaiting on
REQ-198FinancePriyaVendor quote
REQ-201SupportDanaLegal
REQ-204EngnoneOwner
REQ-207EngMarcoBudget code
REQ-209OpsnoneOwner
pm·Claude Sonnet 5·Configure
BIS
Aa
  • Find the records Read only

    @pm which requests are still in review, and who owns each one@pm find every vendor row with no signed contract and a renewal this quarter

    Say what you want to know and the teammate reads the base to answer it. Reads never need confirmation, and a long answer comes back as a table in the thread. Airtable says MCP permissions mirror the permissions you already have, so signing in does not widen anyone.

  • Add a record from a thread Applies at once

    @pm add this thread to Ops Requests as a new row, status Triage, owner Priya@pm create a record for the Vancouver printer order, due next Friday

    A new record is a small, reversible write, so it goes straight through. The reply names the table, the fields it set, and what it left empty, with a link into the base. Airtable caps record creation at ten records per request, which is the limit on how much one ask can add.

  • Fix a field or leave a comment Applies at once

    @pm set REQ-204 to Approved and put Marco on it@pm comment on the Halvorsen row that the quote came in under budget

    One field or one comment applies on the spot. The connection asks Airtable for read and write on records, schemas, and comments, and nothing else, so that is the whole of what a teammate can change.

  • Change several rows at once Asks first

    @pm move every request still in Triage from August to Needs owner@pm set the region on the fourteen new vendor rows to EMEA

    A change across several rows comes back as a list of what would move, and it waits for a yes. A write also needs the message you sent to name it, because thread history, a pasted document, and memory cannot authorize one on their own.

  • On a schedule Applies at once

    @pm every Monday at 9am Pacific, post the requests still in Triage@pm every weekday at 8am Eastern, list the rows due this week with no owner

    A schedule saves on the spot. It needs an explicit time zone, runs under the Airtable connection of the person who asked, and fails with a named reason rather than running if that connection is disconnected.

Connect it

Five steps, from Admin or from Slack.

You sign in through a page Chickpea serves, never in Slack. The link the teammate posts is good for one action, for one teammate, for 24 hours.

  1. In Chickpea Admin, open the teammate, then Connections, find Airtable, and choose Connect. Or ask in Slack, @pm connect Airtable, and follow the link it posts.
  2. Choose who uses it. Team is one shared Airtable account that everyone who can use the teammate acts through. Personal means each member signs in as themselves, and Airtable records their actions as them.
  3. Choose Continue to sign in. Airtable's consent screen is where the reach is decided: one or more individual bases, every current and future base in named workspaces, or every base in every workspace. Pick the narrowest one that does the job.
  4. Approve read and write on records, schemas, and comments. There is no token to paste and no config file to edit. Airtable keeps the grant on your third-party integrations page, where bases can be added or removed later.
  5. Chickpea connects to mcp.airtable.com/mcp and records the tools the server answered with. Ask something. @pm which requests are still in review is a good first question, because it reads and cannot change anything.

A connection belongs to one teammate. Giving a second teammate Airtable means a second sign-in with its own consent and its own choice of bases, so the support teammate never inherits the bases the ops teammate can reach.

There is no built-in Chickpea skill for Airtable, and none is needed. The tools arrive from Airtable's MCP server: Chickpea connects before it saves anything, records what the server answered with, and exposes only those tools. Airtable groups what the server covers into creating and discovering bases, changing a base schema, reading and writing records, and creating and managing automations. Chickpea asks for read and write on records, schemas, and comments, plus reading the list of workspaces and bases, so that grant is the ceiling on what a teammate can use. Airtable documents the server, its scopes, and the clients it supports.

# ops
18
Today
D
Dana
@pm connect our Airtable
👀 1
pmAPP
Open this link, choose team or personal, and sign in to Airtable there. Airtable then asks which workspaces and bases I may reach. Nothing is pasted into Slack, and only people in #ops can use the connection through me.
Sign in to Airtable
pm·Claude Sonnet 5·Configure
pmAPP
Airtable is connected as a team account, and you approved one base, Ops Requests. I can read and write records, schemas, and comments there, and I cannot see your other bases.
pm@pm
Keeps the Ops Requests base current in Airtable.
has access to Airtable
1
BIS
Aa

Questions people ask

Is there an Airtable MCP server?

Yes. Airtable runs a hosted MCP server at mcp.airtable.com/mcp, with OAuth sign-in or a personal access token, and it is available to all users on all plans at no extra charge. Airtable documents setup for Claude, ChatGPT, Cursor, and other MCP clients. Chickpea connects to that same server with OAuth, which is how a teammate in Slack uses it with no client installed.

How do I set up the Airtable MCP?

For a coding client or a chat client, follow Airtable's own docs, since each one keeps its own config. For Slack there is nothing to configure. Open the teammate in Chickpea Admin, choose Airtable, choose Continue to sign in, and pick the bases on Airtable's consent screen. Or ask "@pm connect Airtable" in the channel and follow the link it posts.

Does it use Airtable's MCP server or the API?

The MCP server. Airtable is a vendor MCP lane: the deployment connects to mcp.airtable.com/mcp over streamable HTTP and signs in with OAuth. There is no API key and no personal access token anywhere in this connector, and the connection cannot reach any other address.

Which bases can it see?

The ones you approved when you signed in. Airtable lets you grant one or more individual bases, every current and future base in named workspaces, or every base in every workspace, and the grant can be edited later on your third-party integrations page. Airtable also says MCP permissions mirror the permission level you already hold, so the teammate cannot outrun the account it signed in as. In Chickpea the binding is a ceiling: it can be narrowed to fewer tools but never widened, and reauthorizing Airtable with more bases does not widen the teammate.

Can it delete records?

Airtable describes the server as covering creating and discovering bases, changing base schema, reading and writing records, and creating and managing automations, and publishes no tool list, so this page will not claim one way or the other about what exists. What is fixed is the scope and the gate. The connection carries read and write on records, schemas, and comments, and nothing else. During a Slack turn Chickpea refuses any MCP tool whose name does not start with an unambiguous read verb unless the message you just sent names that action.

Where does the OAuth token live?

On your deployment, outside the teammate record. It never enters the model's context, the tool arguments the model writes, or Slack. The model picks a connection by id and the credential goes in at the last step on the way out. Who it belongs to is your choice when you connect: a team account is one shared sign-in that everyone with access to the teammate acts through, and a personal account is used only for your own requests. Disconnect the account and the stored secret is removed, and any schedule that depended on it stops.

Do I still need Airtable's Slack integration?

Often yes, because it does things a teammate does not. Airtable's Slack app posts messages when records change, sends messages from an automation to a channel, and shows a rich preview when someone pastes a record link. It also has an AI assistant you @mention to ask about a base, summarize it, and create or update records, on all plans, with each person linking their own Airtable account. Airtable caps that assistant at 50 records and five messages per response, and only the person who started a thread can continue it. A Chickpea teammate hears nothing from Airtable and posts nothing unprompted. What it adds is schedules, saved instructions, several connected accounts in one teammate, and the whole thing running on your own Cloudflare account.

Which Airtable plan does this need?

None in particular. Airtable says the MCP server is available to all users on all plans, with no additional Airtable charge, though calls count against the standard API rate limits. Setting one up takes an Owner, Creator, or Editor role; a read-only or commenter role can only read. What the teammate can see and change is what the account you signed in with can see and change.

Can Airtable integrate with Slack?

Two ways. Airtable ships its own Slack app for notifications, automation messages, record previews, and an AI assistant you @mention. A Chickpea teammate is the other way: it holds an Airtable connection of its own and does what you ask in the channel, through Airtable's MCP server. They do different jobs, and both can be installed.

Can I use this from Claude Code or Cursor instead?

Yes, and Airtable documents both. Those put the server in one person's editor. A teammate puts it in a channel, with a stored connection, saved instructions, schedules, and every change visible in the thread where someone asked for it. Teams often run both.

Try it

Give a channel an Airtable teammate.

One deploy into your own Cloudflare account, connect Slack, sign in to Airtable, ask. Apache 2.0, no seats, no metering.

Star on GitHub4

Or run it on Node. The setup guide covers both.