无线mcp服务器
](https://smithery.ai/server/airtable-mcp-server)
一个模型上下文协议服务器,提供对Airtable数据库的读写访问。此服务器使LLM能够检查数据库模式,然后读取和写入记录。
https://github.com/user-attachments/assets/c8285e76-d0ed-4018-94c7-20535db6c944
用法
- 启动服务器:
npm start服务器将在端口8080上启动。
- 配置您的客户端:
要将此服务器与Claude Desktop应用程序等客户端一起使用,请将以下配置添加到客户端配置文件的“mcpServers”部分。API密钥应在 Authorization 标头作为Bearer令牌。
{
"mcpServers": {
"airtable": {
"url": "http://localhost:8080/sse",
"headers": {
"Authorization": "Bearer pat123.abc123"
}
}
}
}替换 pat123.abc123 与你的 Airtable 个人访问令牌。您的令牌至少应该有 schema.bases:read 和 data.records:read,以及可选的相应写入权限。
组件
工具
- list_records
- 列出指定Airtable表中的记录 - 输入参数: - baseId (string,必填):Airtable基座的ID - tableId (string,必填):要查询的表的ID - maxRecords (number,可选):要返回的最大记录数。默认值为100。 - filterByFormula (字符串,可选):用于过滤记录的Airtable公式
- 搜索记录
- 搜索包含特定文本的记录 - 输入参数: - baseId (string,必填):Airtable基座的ID - tableId (string,必填):要查询的表的ID - searchTerm (字符串,必填):要在记录中搜索的文本 - fieldIds (数组,可选):要搜索的特定字段ID。如果没有提供,则搜索所有基于文本的字段。 - maxRecords (number,可选):要返回的最大记录数。默认值为100。
- 列表基
- 列出所有可访问的Airtable基地 - 无需输入参数 - 返回基本ID、名称和权限级别
- describe_base
- 获取特定基的完整架构,包括其所有表 - 输入参数: - baseId (string,必填):Airtable基座的ID - detailLevel (string,可选):要获取的有关表格的详细信息量(tableIdentifiersOnly, identifiersOnly,或 full) - 将基础信息及其所有表及其模式的列表返回到指定的详细级别。
- describe_all_bases
- 获取所有可访问基及其表的完整架构 - 输入参数: - detailLevel (string,可选):要获取的有关表格的详细信息量(tableIdentifiersOnly, identifiersOnly,或 full) - 返回所有基的列表,每个基都有其指定详细级别的所有表及其模式的列表。
- list_tables
- 列出特定库中的所有表 - 输入参数: - baseId (string,必填):Airtable基座的ID - detailLevel (string,可选):要获取的有关表格的详细信息量(tableIdentifiersOnly, identifiersOnly,或 full) - 返回表ID、名称、描述、字段和视图(到给定的 detailLevel)
- describe_table
- 获取特定表的详细信息 - 输入参数: - baseId (string,必填):Airtable基座的ID - tableId (string,必填):要描述的表的ID - detailLevel (string,可选):要获取的关于表格的详细信息量(tableIdentifiersOnly, identifiersOnly,或 full) - 返回与list_tables相同的格式,但针对单个表 - 有助于获取特定表的详细信息,而无需获取基中所有表的信息
- 获取记录
- 按ID获取特定记录 - 输入参数: - baseId (string,必填):Airtable基座的ID - tableId (string,必填):表的ID - recordId (string,必填):要检索的记录的ID
- create_record
- 在表中创建新记录 - 输入参数: - baseId (string,必填):Airtable基座的ID - tableId (string,必填):表的ID - fields (object,必填):新记录的字段和值
- update_records
- 更新表中的一个或多个记录 - 输入参数: - baseId (string,必填):Airtable基座的ID - tableId (string,必填):表的ID - records (array,必填):包含记录ID和要更新的字段的对象数组
- 删除记录
- 从表中删除一条或多条记录 - 输入参数: - baseId (string,必填):Airtable基座的ID - tableId (string,必填):表的ID - recordIds (array,必填):要删除的记录ID数组
- create_table
- 在基中创建新表 - 输入参数: - baseId (string,必填):Airtable基座的ID - name (string,必填):新表的名称 - description (字符串,可选):表的描述 - fields (array,必填):字段定义数组(名称、类型、描述、选项)
- update_table
- 更新表的名称或描述 - 输入参数: - baseId (string,必填):Airtable基座的ID - tableId (string,必填):表的ID - name (字符串,可选):表的新名称 - description (字符串,可选):表的新描述
- create_field
- 在表中创建新字段 - 输入参数: - baseId (string,必填):Airtable基座的ID - tableId (string,必填):表的ID - name (string,必填):新字段的名称 - type (string,必填):字段类型 - description (字符串,可选):字段描述 - options (对象,可选):特定于字段的选项
- update_field
- 更新字段的名称或描述 - 输入参数: - baseId (string,必填):Airtable基座的ID - tableId (string,必填):表的ID - fieldId (string,必填):字段的ID - name (字符串,可选):字段的新名称 - description (字符串,可选):字段的新描述
资源
服务器为Airtable库和表提供架构信息:
- 持微软签名的表模式 (
airtable:////schema)
- 每个表的JSON模式信息 - 包括: - 基id和表id - 表名称和说明 - 主字段ID - 字段定义(ID、名称、类型、描述、选项) - 视图定义(ID、名称、类型) - 从Airtable的元数据API中自动发现
使用Docker托管
要使用Docker托管此服务器,请执行以下步骤:
- 构建Docker镜像:
docker build -t airtable-mcp-server .- 运行Docker容器:
docker run -p 8080:8080 airtable-mcp-server这将启动服务器,并将端口8080从容器映射到主机上的端口8080。然后,您可以访问服务器 http://localhost:8080.
对于生产使用,您应该在提供HTTPS的反向代理后面运行此程序。
贡献
GitHub上欢迎拉取请求!开始:
- 安装Git和Node.js
- 克隆存储库
- 安装依赖项
npm install - 跑
npm run test运行测试 - 建立
npm run build
- 您可以使用
npm run build:watch编辑后自动构建src/index.ts。这意味着您可以点击保存,重新加载Claude Desktop(使用Ctrl/Cmd+R),然后应用更改。
发布
版本遵循 语义版本规范.
要发布:
- 使用
npm version升级版本 - 跑
git push --follow-tags使用标签推送 - 等待GitHub Actions发布到NPM注册表。
