项目简介

这是一个基于Model Context Protocol (MCP) 构建的服务器,旨在将LLM(大型语言模型)客户端(如Claude AI, Cursor IDE)与n8n自动化平台连接起来。它允许LLM通过标准化的方式访问n8n的工作流、执行记录和标签,并能接收指令创建、更新、删除、激活或停用工作流,甚至通过预设的Prompt模板来生成复杂工作流。核心功能包括提供结构化的信息(资源)、执行特定操作(工具)和生成内容模板(Prompt)。

主要功能点

  • 工作流管理: 通过自然语言创建、列出、获取详细信息、更新、激活、停用和删除n8n中的工作流。
  • 执行记录管理: 列出、获取详情和删除工作流的执行记录。
  • 标签管理: 创建、列出、获取详情、更新和删除n8n中的标签。
  • 资源访问: 提供结构化数据,例如所有工作流列表、工作流详情、执行记录详情和执行统计信息。
  • Prompt模板: 提供多种预定义的工作流模板,通过填写变量快速生成常见类型的工作流,如定时触发、HTTP Webhook、数据处理等。
  • LLM集成: 支持与符合MCP协议的LLM客户端无缝集成,实现通过聊天或指令与n8n进行交互。

安装步骤

  1. 安装 Node.js 和 npm: 确保您的系统已安装 Node.js (推荐 v14+) 和 npm。
  2. 通过 npm 安装: 打开终端,运行以下命令全局安装此包:
    npm install -g @kernel.salacoste/n8n-workflow-builder
  3. 获取 n8n API 密钥: 访问您的 n8n 实例,找到 API 设置,生成或获取您的 API 密钥和 n8n 实例的 API URL (通常是 'https://your-n8n-instance.com/api/v1/')。
  4. 配置环境变量: 在您的系统环境变量中设置以下两个变量:
    • 'N8N_HOST':您的 n8n API URL。
    • 'N8N_API_KEY':您的 n8n API 密钥。 或者,您可以在运行 MCP 服务器的同一目录创建一个 '.env' 文件,并添加这两行:
    N8N_HOST=https://your-n8n-instance.com/api/v1/
    N8N_API_KEY=your_api_key_here

服务器配置(供MCP客户端参考)

MCP客户端(如Claude Desktop)需要知道如何启动此服务器进程。通常,您需要在客户端的配置中添加一个条目,指定服务器的名称、启动命令和参数。

以下是客户端配置中该服务器条目的关键信息格式(具体路径和配置方式取决于您的客户端软件):

"your_server_name": { // 您可以给这个服务器连接起一个易于识别的名称
  "command": "node", // 启动 Node.js 进程
  "args": ["/path/to/your/global/node_modules/@kernel.salacoste/n8n-workflow-builder/build/index.js"], // 指向安装后的服务器主文件路径
  // 注意:如果您是克隆仓库后自行构建,路径应指向您克隆目录下的 build/index.js 文件。
  "env": { // 需要传递给服务器进程的环境变量
    "N8N_HOST": "您的n8n API URL",
    "N8N_API_KEY": "您的n8n API 密钥",
    "MCP_PORT": "可选,指定MCP服务器监听的端口,避免冲突 (如 58921)"
  },
  "disabled": false // 确保服务器是启用的
  // 其他可能的配置,如允许/自动批准的工具列表
}

基本使用方法

配置完成后,启动您的MCP客户端(如Claude App或Cursor IDE)。客户端将检测并启动此n8n Workflow Builder MCP服务器。

在客户端的聊天界面或指令输入框中,您可以使用自然语言或特定的指令来与服务器交互:

  • 列出工作流: 询问客户端“列出我的n8n工作流”或使用相应的工具调用指令。
  • 创建工作流: 描述您想要创建的工作流类型和功能,例如“创建一个每天早上8点运行,调用外部API并发送邮件的工作流”。客户端可能会使用Prompt模板或调用'create_workflow'工具,并引导您提供必要的参数(如API URL、邮箱地址)。
  • 获取工作流详情: 询问客户端关于某个特定工作流的信息,例如“显示工作流ID为 'abc-123' 的详细信息”。客户端将使用'get_workflow'工具。
  • 执行操作: 请求客户端执行工具操作,例如“激活工作流ID为 'abc-123'”或“删除标签ID为 'xyz-456'”。客户端将调用相应的工具。

您可以探索客户端提供的功能,了解如何通过其界面发现和使用本服务器提供的所有工具、资源和Prompt。

信息

分类

AI与计算