Package Exports
- @rashidazarang/airtable-mcp
- @rashidazarang/airtable-mcp/airtable_simple.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@rashidazarang/airtable-mcp) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Airtable MCP Server
A Model Context Protocol (MCP) server that enables AI assistants like Claude to interact with your Airtable bases. Query, create, update, and delete records using natural language through a secure, standardized interface.
๐ Security Notice
Important: Version 1.2.4 includes critical security fixes. If you used this MCP before January 2025, please see SECURITY_NOTICE.md for important information about token rotation.
โจ Features
- ๐ Natural Language Queries - Ask questions about your data in plain English
- ๐ Full CRUD Operations - Create, read, update, and delete records
- ๐๏ธ Schema Management - View and understand your base structure
- ๐ Secure Authentication - Uses environment variables for credentials
- ๐ Easy Setup - Multiple installation options available
- โก Fast & Reliable - Built with Node.js for optimal performance
๐ Prerequisites
- Node.js 14+ installed on your system
- An Airtable account with a Personal Access Token
- Your Airtable Base ID
๐ Quick Start
Step 1: Get Your Airtable Credentials
Personal Access Token: Visit Airtable Account โ Create a token with the following scopes:
data.records:readdata.records:writeschema.bases:read
Base ID: Open your Airtable base and copy the ID from the URL:
https://airtable.com/[BASE_ID]/...
Step 2: Installation
Choose one of these installation methods:
Option A: Install via NPM (Recommended)
npm install -g @rashidazarang/airtable-mcpOption B: Clone from GitHub
git clone https://github.com/rashidazarang/airtable-mcp.git
cd airtable-mcp
npm installStep 3: Set Up Environment Variables
Create a .env file in your project directory:
AIRTABLE_TOKEN=your_personal_access_token_here
AIRTABLE_BASE_ID=your_base_id_hereSecurity Note: Never commit .env files to version control!
Step 4: Configure Your MCP Client
For Claude Desktop
Add to your Claude Desktop configuration file:
MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"airtable": {
"command": "npx",
"args": [
"@rashidazarang/airtable-mcp",
"--token",
"YOUR_AIRTABLE_TOKEN",
"--base",
"YOUR_BASE_ID"
]
}
}
}For Environment Variables (More Secure)
{
"mcpServers": {
"airtable": {
"command": "npx",
"args": ["@rashidazarang/airtable-mcp"],
"env": {
"AIRTABLE_TOKEN": "YOUR_AIRTABLE_TOKEN",
"AIRTABLE_BASE_ID": "YOUR_BASE_ID"
}
}
}
}Step 5: Restart Your MCP Client
After configuration, restart Claude Desktop or your MCP client to load the Airtable server.
๐ฏ Usage Examples
Once configured, you can interact with your Airtable data naturally:
"Show me all records in the Projects table"
"Create a new task with priority 'High' and due date tomorrow"
"Update the status of task ID rec123 to 'Completed'"
"Delete all records where status is 'Archived'"
"What tables are in my base?"๐ ๏ธ Available Tools
| Tool | Description |
|---|---|
list_tables |
Get all tables in your base |
list_records |
Query records with optional filtering |
create_record |
Add new records to a table |
update_record |
Modify existing records |
delete_record |
Remove records from a table |
๐ง Advanced Configuration
Using with Smithery Cloud
For cloud-hosted MCP servers:
{
"mcpServers": {
"airtable": {
"command": "npx",
"args": [
"@smithery/cli",
"run",
"@rashidazarang/airtable-mcp",
"--token",
"YOUR_TOKEN",
"--base",
"YOUR_BASE_ID"
]
}
}
}Direct Node.js Execution
If you cloned the repository:
{
"mcpServers": {
"airtable": {
"command": "node",
"args": [
"/path/to/airtable-mcp/airtable_simple.js",
"--token",
"YOUR_TOKEN",
"--base",
"YOUR_BASE_ID"
]
}
}
}๐งช Testing
Run the test suite to verify your setup:
# Set environment variables first
export AIRTABLE_TOKEN=your_token
export AIRTABLE_BASE_ID=your_base_id
# Run tests
npm test๐ Troubleshooting
"Connection Refused" Error
- Ensure the MCP server is running
- Check that port 8010 is not blocked
- Restart your MCP client
"Invalid Token" Error
- Verify your Personal Access Token is correct
- Check that the token has the required scopes
- Ensure no extra spaces in your credentials
"Base Not Found" Error
- Confirm your Base ID is correct
- Check that your token has access to the base
Port Conflicts
If port 8010 is in use:
lsof -ti:8010 | xargs kill -9๐ Documentation
๐ค Contributing
Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
๐ License
MIT License - see LICENSE file for details
๐ Acknowledgments
- Built for the Model Context Protocol
- Powered by Airtable API
- Compatible with Claude Desktop and other MCP clients
๐ฎ Support
- Issues: GitHub Issues
- Discussions: GitHub Discussions
Version: 1.2.4 | Status: โ Production Ready | Last Updated: August 14, 2025