n8n API MCP服务器
一种模型上下文协议(MCP)服务器,旨在与自托管n8n实例交互。
此服务器提供以下工具:
- 执行对n8n API的调用。
- 使用根据OpenAPI规范填充的本地数据库搜索n8n API端点。
- 使用“快速内存”数据库存储和检索常用或成功的API调用,以实现更快的自然语言访问。
特性
数据库
- API规范数据库(
api_spec.db): 存储从OpenAPI/Swagger JSON文件加载的n8n API端点的详细信息。用于搜索和详细信息工具。 - 快速内存数据库(
fast_memory.db): 缓存链接到自然语言查询的成功API调用。允许快速检索以前使用的呼叫,并建议保存新的成功呼叫。
工具
search_api_endpoints:在本地API规范数据库中搜索与查询匹配的终结点(路径、摘要、描述、标记)。get_api_endpoint_details:从本地API规范数据库中检索特定终结点(路径和方法)的详细信息(参数、请求主体、响应)。execute_api_call:对已配置的n8n实例执行API调用。首先检查快速内存;如果未找到,则提示在成功后将调用保存到快速内存。natural_language_api_search:使用自然语言搜索API调用。首先检查Fast Memory,然后返回到基于查询搜索API规范数据库。save_to_fast_memory:手动将API调用(路径、方法、参数、数据)及其原始自然语言查询和描述保存到Fast Memory数据库中。list_fast_memory:列出当前存储在Fast Memory数据库中的条目,可选择按搜索词进行筛选。delete_from_fast_memory:按ID从Fast Memory数据库中删除特定条目。clear_fast_memory:从快速内存数据库中删除所有条目。load_api_spec_from_json:加载或更新API规范数据库(api_spec.db)通过解析OpenAPI/Swagger JSON文件。send_raw_api_request:使用原始请求字符串执行API调用(例如,“GET/workflows?limit=5”)。使用与以下相同的底层逻辑execute_api_call,包括快速内存检查和保存提示。
设置
- 克隆存储库:
git clone https://github.com/jasondsmith72/N8N-api-MCP.git
cd N8N-api-MCP- 安装依赖项:
npm install- 构建服务器:
npm run build这将TypeScript代码编译为JavaScript build 目录。
配置
此服务器需要环境变量才能连接到n8n实例。这些通常在MCP客户端的配置文件中设置(例如。, cline_mcp_settings.json).
N8N_URL:n8n实例的基本URL(例如。,http://your-n8n.example.com).默认为http://localhost:5678如果没有设置。N8N_API_KEY:用于身份验证的n8n API密钥。
加载API规范
在使用搜索工具之前(search_api_endpoints, natural_language_api_search),您需要填充API规范数据库。
- 获取n8n版本的OpenAPI(Swagger)JSON规范文件。这可以从n8n文档中获得,也可以从您的实例中下载(例如。,
/api/v1/docs-json). - 使用
load_api_spec_from_json工具,提供下载的JSON文件的绝对路径:
load_api_spec_from_json(json_file_path="C:\\path\\to\\your\\n8n-openapi.json")Cline/Claude桌面安装
将以下配置添加到您的 cline_mcp_settings.json (将路径调整为 index.js 基于您的克隆位置):
{
"mcpServers": {
"... other servers ...": {},
"n8n-api-mcp": {
"command": "node",
"args": [
"C:\\MCP-Servers\\N8N-api-MCP\\build\\index.js" // <-- Update this path if needed
],
"env": {
"N8N_URL": "YOUR_N8N_INSTANCE_URL", // e.g., "http://192.168.1.100:5678"
"N8N_API_KEY": "YOUR_N8N_API_KEY_HERE"
},
"disabled": false,
"autoApprove": []
}
}
}*(记得更换 YOUR_N8N_INSTANCE_URL 和 YOUR_N8N_API_KEY_HERE 与您的实际值)*
发展
对于在文件更改时自动重建的开发:
npm run watch调试
使用 MCP检查员 为了更容易调试:
npm run inspector检查器提供了一个web界面来查看MCP通信。
