remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Integrations
Provides read and write access to Airtable databases, allowing LLMs to inspect database schemas, read and write records. Features include listing bases and tables, searching and filtering records, creating/updating/deleting records, and managing table schemas.
エアテーブルMCPサーバー
Airtableデータベースへの読み取りおよび書き込みアクセスを提供するモデルコンテキストプロトコルサーバー。このサーバーにより、LLMはデータベーススキーマを検査し、レコードの読み取りと書き込みを行うことができます。
https://github.com/user-attachments/assets/c8285e76-d0ed-4018-94c7-20535db6c944
使用法
このサーバーを Claude Desktop アプリで使用するには、 claude_desktop_config.json
の「mcpServers」セクションに次の構成を追加します。
pat123.abc123
Airtable個人アクセストークンに置き換えてください。トークンには少なくともschema.bases:read
とdata.records:read
権限が必要です。また、必要に応じて対応する書き込み権限も必要です。
コンポーネント
ツール
- リストレコード
- 指定されたAirtableテーブルからレコードを一覧表示します
- 入力パラメータ:
baseId
(文字列、必須): AirtableベースのIDtableId
(文字列、必須): クエリするテーブルのIDmaxRecords
(数値、オプション): 返されるレコードの最大数。デフォルトは100です。filterByFormula
(文字列、オプション): レコードをフィルタリングするためのAirtable式
- 検索レコード
- 特定のテキストを含むレコードを検索する
- 入力パラメータ:
baseId
(文字列、必須): AirtableベースのIDtableId
(文字列、必須): クエリするテーブルのIDsearchTerm
(文字列、必須): レコード内で検索するテキストfieldIds
(配列、オプション): 検索する特定のフィールド ID。指定しない場合は、すべてのテキストベースのフィールドを検索します。maxRecords
(数値、オプション): 返されるレコードの最大数。デフォルトは100です。
- リストベース
- アクセス可能なすべてのAirtableベースをリストします
- 入力パラメータは不要
- ベースID、名前、権限レベルを返します
- リストテーブル
- 特定のベース内のすべてのテーブルを一覧表示します
- 入力パラメータ:
baseId
(文字列、必須): AirtableベースのIDdetailLevel
(文字列、オプション): テーブルについて取得する詳細の量 (tableIdentifiersOnly
、identifiersOnly
、またはfull
)
- テーブル ID、名前、説明、フィールド、ビュー (指定された
detailLevel
まで) を返します。
- テーブルの説明
- 特定のテーブルに関する詳細情報を取得します
- 入力パラメータ:
baseId
(文字列、必須): AirtableベースのIDtableId
(文字列、必須): 記述するテーブルのIDdetailLevel
(文字列、オプション): テーブルについて取得する詳細の量 (tableIdentifiersOnly
、identifiersOnly
、またはfull
)
- list_tables と同じ形式を返しますが、単一のテーブルに対して返します。
- ベース内のすべてのテーブルに関する情報を取得せずに、特定のテーブルの詳細を取得するのに役立ちます。
- get_record
- IDで特定のレコードを取得します
- 入力パラメータ:
baseId
(文字列、必須): AirtableベースのIDtableId
(文字列、必須): テーブルのIDrecordId
(文字列、必須): 取得するレコードのID
- レコード作成
- テーブルに新しいレコードを作成します
- 入力パラメータ:
baseId
(文字列、必須): AirtableベースのIDtableId
(文字列、必須): テーブルのIDfields
(オブジェクト、必須): 新しいレコードのフィールドと値
- レコードの更新
- テーブル内の1つ以上のレコードを更新します
- 入力パラメータ:
baseId
(文字列、必須): AirtableベースのIDtableId
(文字列、必須): テーブルのIDrecords
(配列、必須): レコードIDと更新するフィールドを含むオブジェクトの配列
- レコードの削除
- テーブルから1つ以上のレコードを削除します
- 入力パラメータ:
baseId
(文字列、必須): AirtableベースのIDtableId
(文字列、必須): テーブルのIDrecordIds
(配列、必須): 削除するレコードIDの配列
- テーブルを作成する
- ベースに新しいテーブルを作成します
- 入力パラメータ:
baseId
(文字列、必須): AirtableベースのIDname
(文字列、必須): 新しいテーブルの名前description
(文字列、オプション): テーブルの説明fields
(配列、必須): フィールド定義の配列 (名前、タイプ、説明、オプション)
- 更新テーブル
- テーブルの名前または説明を更新します
- 入力パラメータ:
baseId
(文字列、必須): AirtableベースのIDtableId
(文字列、必須): テーブルのIDname
(文字列、オプション): テーブルの新しい名前description
(文字列、オプション): テーブルの新しい説明
- フィールドを作成する
- テーブルに新しいフィールドを作成します
- 入力パラメータ:
baseId
(文字列、必須): AirtableベースのIDtableId
(文字列、必須): テーブルのIDname
(文字列、必須): 新しいフィールドの名前type
(文字列、必須): フィールドのタイプdescription
(文字列、オプション): フィールドの説明options
(オブジェクト、オプション): フィールド固有のオプション
- 更新フィールド
- フィールドの名前または説明を更新します
- 入力パラメータ:
baseId
(文字列、必須): AirtableベースのIDtableId
(文字列、必須): テーブルのIDfieldId
(文字列、必須): フィールドのIDname
(文字列、オプション): フィールドの新しい名前description
(文字列、オプション): フィールドの新しい説明
リソース
サーバーは、Airtable のベースとテーブルのスキーマ情報を提供します。
- テーブルスキーマ(
airtable://<baseId>/<tableId>/schema
)- 各テーブルのJSONスキーマ情報
- 含まれるもの:
- ベースIDとテーブルID
- テーブル名と説明
- プライマリフィールドID
- フィールド定義(ID、名前、タイプ、説明、オプション)
- ビュー定義(ID、名前、タイプ)
- AirtableのメタデータAPIから自動的に検出されます
貢献
GitHub でのプルリクエストを歓迎します。始めるには:
- GitとNode.jsをインストールする
- リポジトリをクローンする
npm install
で依存関係をインストールする- テストを実行するには
npm run test
を実行します。 npm run build
でビルドする
src/index.ts
編集した後、npm run build:watch
を使って自動的にビルドできます。つまり、保存してClaude Desktopをリロード(Ctrl/Cmd+R)するだけで、変更が適用されます。
リリース
バージョンはセマンティック バージョン管理仕様に従います。
解放するには:
- バージョンを上げるには、
npm version <major | minor | patch>
を使用します。 - タグ付きでプッシュするには
git push --follow-tags
を実行します。 - GitHub Actions が NPM レジストリに公開されるまで待ちます。
This server cannot be installed
Tools
Airtableデータベースへの読み取りおよび書き込みアクセスを提供するモデルコンテキストプロトコルサーバー。このサーバーにより、LLMはデータベーススキーマを検査し、レコードの読み取りと書き込みを行うことができます。