MCP HubMCP Hub
domdomegg

airtable-mcp-server

by: domdomegg

🗂️🤖 Airtable Model Context Protocol Server, for allowing AI systems to interact with your Airtable bases

111created 12/12/2024
Visit
Airtable
AI

đź“ŚOverview

Purpose: The airtable-mcp-server framework provides a Model Context Protocol server that facilitates both read and write access to Airtable databases, designed for interaction with large language models (LLMs).

Overview: This server enables LLMs to analyze the schema of Airtable databases and perform operations such as creating, reading, updating, and deleting records. It supports various functionalities in an intuitive manner, allowing developers to leverage Airtable's features within their applications.

Key Features:

  • Data Access: Allows users to list records, search for specific data, and retrieve detailed information about tables and bases. This facilitates easy data management and exploration within Airtable.

  • Record Manipulation: Enables record creation, deletion, and updates, providing comprehensive control over database entries directly through the server.

  • Schema Discovery: Automatically retrieves and exposes schema information for Airtable bases and tables, making it easier for developers to work with data structures and understand the organization of their databases.


airtable-mcp-server

A Model Context Protocol server that provides read and write access to Airtable databases, enabling LLMs to inspect database schemas and manage records.

Usage

To use this server with the Claude Desktop app, add the following configuration to the "mcpServers" section of your claude_desktop_config.json:

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

Replace pat123.abc123 with your Airtable personal access token. Your token should have read and write permissions for the necessary data.

Components

Tools

  • list_records: Lists records from a specified Airtable table.
  • search_records: Searches for records containing specific text.
  • list_bases: Lists all accessible Airtable bases.
  • list_tables: Lists all tables in a specific base.
  • describe_table: Gets detailed information about a specific table.
  • get_record: Retrieves a specific record by ID.
  • create_record: Creates a new record in a table.
  • update_records: Updates one or more records in a table.
  • delete_records: Deletes one or more records from a table.
  • create_table: Creates a new table in a base.
  • update_table: Updates a table’s name or description.
  • create_field: Creates a new field in a table.
  • update_field: Updates a field’s name or description.

Resources

The server provides schema information for Airtable bases and tables, which includes JSON schema data for each table, detailing base ID, table ID, name, primary field ID, field definitions, and view definitions.

Contributing

Pull requests are welcomed on GitHub! To get started:

  1. Install Git and Node.js.
  2. Clone the repository.
  3. Install dependencies with npm install.
  4. Run npm run test to execute tests.
  5. Build with npm run build.

Releases

Versions follow the semantic versioning spec. To release:

  1. Use npm version <major | minor | patch> to bump the version.
  2. Run git push --follow-tags to push with tags.
  3. Wait for GitHub Actions to publish to the NPM registry.