工作流管理服务器

N8N MCP服务器是一个用于管理n8n工作流的工具,支持创建、读取、更新和删除工作流,适用于自动化流程管理场景。

  • by chinmaybhatk
  • JavaScript
  • 本地部署
  • 更新于
在 GitHub 查看 chinmaybhatk/n8n-mcp-server

使用说明

N8N MCP服务器

用于管理n8n工作流的模型上下文协议(MCP)服务器。这允许Claude和其他MCP兼容工具在n8n实例中创建、读取、更新和删除工作流。

特性

  • 📋 列出所有工作流
  • 📖 获取工作流详细信息
  • ✏️ 创建新工作流
  • 🔄 更新现有工作流
  • 🗑️ 删除工作流
  • ▶️ 执行工作流
  • 📊 查看执行历史记录
  • 🔄 激活/停用工作流

设置

  1. 克隆此存储库:

    git clone https://github.com/chinmaybhatk/n8n-mcp-server.git
    cd n8n-mcp-server
    
  2. 安装依赖项:

    npm install
    
  3. 创建环境文件:

    cp .env.example .env
    
  4. 编辑 .env 使用您的n8n凭据:

    N8N_URL=https://your-n8n-instance.com
    N8N_API_KEY=your_api_key_here
    
  5. 构建项目:

    npm run build
    

获取n8n API密钥

  1. 在n8n实例中,转到 设置 > API
  2. 使用以下权限创建新的API密钥:
    • workflow:create
    • workflow:read
    • workflow:update
    • workflow:delete
    • workflow:execute
    • execution:read

用法

使用克劳德桌面

添加到您的Claude Desktop MCP配置中:

{
  "mcpServers": {
    "n8n": {
      "command": "node",
      "args": ["/path/to/n8n-mcp-server/build/index.js"],
      "env": {
        "N8N_URL": "https://your-n8n-instance.com",
        "N8N_API_KEY": "your_api_key_here"
      }
    }
  }
}

发展

在开发模式下运行:

npm run dev

可用工具

  • list_workflows -列出所有带有可选活动筛选器的工作流
  • get_workflow -按ID获取详细的工作流信息
  • create_workflow -使用节点和连接创建新的工作流
  • update_workflow -更新现有工作流
  • delete_workflow -按ID删除工作流
  • activate_workflow -激活或停用工作流
  • execute_workflow -手动执行工作流
  • get_executions -获取工作流执行历史记录

故障排除

常见问题

400创建工作流时的错误请求:

  • 如果没有提供,服务器现在会自动生成节点ID
  • 为没有位置的节点设置默认位置
  • 如果未指定,默认typeVersion设置为1
  • 确保提供节点名称和类型

身份验证错误:

  • 验证您的N8N_API_KEY是否正确并具有适当的权限
  • 确保您的N8N_URL可访问并包含协议(https://)
  • 检查API密钥是否尚未过期

网络超时:

  • 服务器包含API请求的30秒超时
  • 对于大型工作流,考虑将其分解为更小的部分

405不允许的方法:

  • 服务器包括用于激活和执行的回退方法
  • 对于激活,如果PATCH失败,它将尝试更新整个工作流

调试模式

通过设置启用调试模式 DEBUG=true 在你的 .env 文件:

DEBUG=true

这将记录请求/响应数据以进行故障排除。

测试API连接

您可以手动测试n8n API连接:

curl -H "X-N8N-API-KEY: your_api_key" https://your-n8n-instance.com/api/v1/workflows

最近更新(v1.0.2)

  • ✅ 未提供时自动生成节点ID
  • ✅ 为节点设置智能默认位置
  • ✅ 如果未指定,则自动将类型版本设置为1
  • ✅ 使用适当的默认值增强工作流设置
  • ✅ 使用回退方法改进了激活端点
  • ✅ 为请求/响应日志记录添加了调试模式
  • ✅ 具有完整响应数据的更好的错误消息

最近更新(v1.0.1)

  • ✅ 固定工作流创建负载结构
  • ✅ 添加了全面的错误处理和日志记录
  • ✅ 改进了创建前的节点验证
  • ✅ 为不同的n8n版本添加了回退端点
  • ✅ 更好的故障排除错误消息
  • ✅ 在更新过程中保留现有工作流数据
  • ✅ API超时时间增加到30秒

示例用法

配置后,您可以像这样与Claude交互:

你: 创建一个工作流,监控webhook,使用代码节点处理数据以提取电子邮件地址,并通过Slack发送通知

克劳德将:

  1. 设计工作流程结构
  2. 创建适当的节点(Webhook、Code、Slack)
  3. 配置连接
  4. 使用MCP服务器在n8n实例中创建它

注: 您不需要指定节点ID或位置——服务器会自动处理这些!

安全

  • 永远不要承诺你的 .env 文件
  • 安全存储API密钥
  • 使用环境变量进行敏感配置
  • 确保您的n8n实例已正确保护

贡献

  1. 分叉存储库
  2. 创建要素分支
  3. 进行更改
  4. 如果适用,添加测试
  5. 提交拉取请求

许可证

国际协调委员会