返回市场
N8N代理市场

N8N代理市场

作者:Super-Chain125 星标更新:2025-08-11

项目介绍

【技术文档摘要】

<img width="512" height="128" alt="2025年7月21日下午5点38分29秒的屏幕截图" src="https://gips0.baidu.com/it/u=1135617941,1427183688&fm=3081&app=3081&f=PNG?w=512&h=128" />

<a href="https://www.producthunt.com/products/n8n2mcp-n8n-workflow-into-mcp-servers?embed=true&utm_source=badge-featured&utm_medium=badge&utm_source=badge-n8n2mcp" target="_blank"><img src="https://api.producthunt.com/widgets/embed-image/v1/featured.svg?post_id=995941&theme=light&t=1753173693440" alt="N8N2MCP - 将您的N8N工作流转换为MCP服务器只需3次点击 | Product Hunt" style="width: 250px; height: 54px;" width="250" height="54" /></a>

即时将您的N8N工作流转换为MCP服务器

一个全面的平台,可以将N8N工作流转换为模型上下文协议(MCP)服务器,实现与Claude、Cursor和其他兼容MCP平台的AI助手无缝集成。使用N8N的可视化工作流编辑器构建强大的自动化工具,并将其部署为可调用的AI函数。 演示

✨ 使用方法

  1. 从任何工作流中复制N8N模板链接/JSON

  2. 通过我们直观的界面映射您的凭据

  3. 一键部署!

您的N8N工作流被部署并创建了一个本地托管的MCP服务器。只需将服务器URL粘贴到Claude、Cursor、Super Chain或任何兼容MCP的平台上!

🎯 关键特性

🤖 MCP服务器创建

将您的N8N工作流转换为AI助手可用的自定义工具

🔄 双架构

  • 代理市场:基于Web的工作流管理和部署平台
  • MCP路由器:高性能的MCP服务器创建和路由系统

🛠️ 全面的工作流管理

  • 浏览和部署预建的工作流模板
  • 上传和管理您自定义的N8N工作流
  • 实时凭据配置和测试
  • 一键部署到您的N8N实例

🏗️ 架构

graph TB
    subgraph "AI助手层"
        A[Claude/Cursor/Super Chain]
    end
    
    subgraph "N8N 2 MCP"
        B[代理市场<br/>Flask Web应用]
        C[MCP路由器<br/>FastAPI服务]
        D[工作流解析器<br/>分析引擎]
    end
    
    subgraph "基础设施"
        E[Supabase数据库]
        F[N8N实例]
        G[凭据管理器]
    end
    
    A -->|MCP协议| C
    C -->|动态MCP| F
    B -->|工作流管理| E
    B -->|部署与配置| F
    C -->|用户配置| E
    B -->|解析与分析| D
    D -->|提取需求| G
    G -->|安全处理| F

📦 安装

预备条件

  • Python 3.11+
  • N8N实例(cloud.n8n.io 或自托管)
  • Supabase账户(用于数据存储)
  • Playwright(N8N认证所需)
  • Docker(可选,用于容器化部署)

⚠️ 重要:Playwright安装是必需的,用于N8N工作流执行。如果Playwright未正确安装,系统将使用虚拟凭据,限制功能。

快速开始

方案1:Docker Compose(推荐)

  1. 克隆仓库

    git clone https://github.com/Super-Chain/N8N2MCP.git
    cd N8N2MCP
    
  2. 配置环境

    cp env.example .env
    # 编辑.env文件以包含实际配置值
    
  3. 使用Docker Compose启动

    docker-compose up -d
    

    这将启动:

  4. 查看日志

    docker-compose logs -f
    

方案2:手动安装

  1. 克隆仓库

    git clone https://github.com/Super-Chain/N8N2MCP.git
    cd N8N2MCP
    
  2. 安装依赖项

    pip install -r requirements.txt
    
  3. 安装Playwright浏览器(必需)

    playwright install
    # 这会下载N8N认证所需的必要浏览器二进制文件
    
  4. 配置环境

    # 复制并编辑.env文件(参见环境配置部分)
    cp .env.example .env
    
    # Supabase配置
    SUPABASE_URL=https://your-project-id.supabase.co
    SUPABASE_KEY=your_supabase_anon_key
    SUPABASE_SERVICE_KEY=your_supabase_service_role_key
    
    # N8N配置
    X_N8N_API_KEY=your_n8n_api_key
    N8N_BASE_URL=https://your-n8n-instance.com
    N8N_USERNAME=your_n8n_username
    N8N_PASSWORD=your_n8n_password
    
    # MCP路由器配置
    N8N_BUILDER_URL=http://localhost:6545
    
    # 服务器配置
    FLASK_HOST=0.0.0.0
    FLASK_PORT=5000
    MCP_HOST=0.0.0.0
    MCP_PORT=6545
    
    # 可选:身份验证凭据(自动填充)
    N8N_AUTH=
    N8N_BROWSER_ID=   
    
  5. 启动两个服务器

    python main.py
    

    这将启动:

  6. 访问UI 前端:http://localhost:5000

配置说明:

  • SUPABASE_URL:您的Supabase项目URL
  • SUPABASE_KEY:客户端操作的匿名密钥
  • SUPABASE_SERVICE_KEY:管理员操作的服务角色密钥
  • N8N_BASE_URL:您的N8N实例URL(必须包含https://)
  • N8N_BUILDER_URL:必须包含http://协议

🔧 使用

从N8N工作流创建MCP服务器

方法1:导入N8N模板

  1. 浏览模板:访问N8N模板
  2. 导入模板:输入来自n8n.io的N8N模板URL
  3. 配置凭据:填写所需的API密钥和服务凭据
  4. 部署工作流:点击部署以在您的N8N实例中创建工作流
  5. MCP服务器创建:自动生成MCP服务器端点

方法2:上传自定义工作流

  1. 上传JSON:上传您的N8N工作流JSON文件 / 复制并粘贴您的JSON工作流
  2. 审查分析:检查检测到的节点和所需凭据
  3. 配置与部署:填写凭据并部署到N8N
  4. 访问MCP服务器:使用生成的MCP端点在AI工具中

使用MCP服务器

# 示例MCP服务器URL格式:
http://localhost:6545/mcp/{work_flow_id}/{api_key}

# 测试MCP服务器:
curl http://localhost:6545/list  # 列出所有注册的MCP服务器

🎨 使用案例

🔍 数据处理与分析

  • 使用N8N的数据操作节点转换CSV/Excel文件
  • 连接到数据库和API进行实时数据分析
  • 从AI对话生成报告和可视化

🌐 API集成中心

  • 将AI助手连接到外部服务(Slack、Google等)
  • 创建专有系统的自定义API端点
  • 构建统一的多SaaS平台接口

📧 通信与通知

  • 发送电子邮件、Slack消息或Discord通知
  • 创建自动报告系统
  • 构建由AI交互触发的警报系统

🔄 工作流自动化

  • 从AI对话触发复杂业务流程
  • 创建审批工作流和任务管理系统
  • 构建与企业系统的自定义集成

🛠️ 开发

项目结构

N8N2MCP/
├── main.py                        # 统一服务器启动脚本
├── requirements.txt               # 汇总的Python依赖项
├── .env                          # 环境配置(共享)
│
├── agent_marketplace/             # Flask Web应用
│   ├── app.py                    # 主Flask应用及API端点
│   ├── database.py               # Supabase集成及数据模型
│   ├── n8n_workflow_parser.py    # 工作流分析引擎
│   ├── setup_supabase.py         # 数据库设置实用程序
│   ├── templates/                # HTML模板
│   │   ├── workflows.html        # 主市场界面
│   │   └── static/               # CSS、JS资源
│   └── __init__.py               # Python包标记
│
├── mcp_router/                   # FastAPI MCP服务
│   ├── mcp_router.py             # 主FastAPI应用
│   ├── n8n_credential_extractor.py # N8N认证
│   ├── credential_helper.py       # 凭据管理实用程序
│   └── __init__.py               # Python包标记
│
└── README.md                     # 此文档

数据库设置

系统使用Supabase中的2个主要表

设置

  1. 创建Supabase项目:在supabase.com上设置新项目
  2. 在Supabase SQL编辑器中运行SQL
-- 主工作流存储表
CREATE TABLE IF NOT EXISTS public.user_workflows (
    id UUID DEFAULT gen_random_uuid() PRIMARY KEY,
    user_id TEXT NOT NULL,
    template_id TEXT NOT NULL,
    template_url TEXT NOT NULL,
    workflow_name TEXT NOT NULL,
    workflow_json JSONB NOT NULL,
    workflow_description TEXT,
    n8n_workflow_id TEXT,
    source TEXT DEFAULT 'user_upload',
    credentials_required JSONB DEFAULT '[]'::jsonb,
    mcp_link TEXT,
    status TEXT DEFAULT 'pending',
    created_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(),
    updated_at TIMESTAMP WITH TIME ZONE DEFAULT NOW()
);

-- MCP服务器配置
CREATE TABLE IF NOT EXISTS public.mcp_configs (
    id UUID DEFAULT gen_random_uuid() PRIMARY KEY,
    workflow_id TEXT NOT NULL,
    user_apikey TEXT NOT NULL,
    code TEXT NOT NULL,
    created_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(),
    updated_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(),
    UNIQUE(workflow_id, user_apikey)
);

-- 启用行级安全性(推荐)
ALTER TABLE user_workflows ENABLE ROW LEVEL SECURITY;
ALTER TABLE mcp_configs ENABLE ROW LEVEL SECURITY;

🚀 运行系统

统一启动(推荐)

python main.py

这将自动启动两个服务:

  • ✅ 环境验证
  • ✅ 数据库设置验证
  • ✅ 平滑关闭处理
  • ✅ 中央日志记录

单独服务

代理市场(端口5000)

cd agent_marketplace
python app.py

MCP路由器(端口6545)

cd mcp_router
python mcp_router.py

验证

# 测试代理市场
curl http://localhost:5000/api/health

# 测试MCP路由器
curl http://localhost:6545/list

# 查看所有端点
curl http://localhost:5000/api/health | grep endpoints

🔧 故障排除

常见问题

端口已被占用

# 杀死5000和6545端口上的进程
fuser -k 5000/tcp 6545/tcp
# 或者重启main.py,它会自动处理这个问题
python main.py

数据库连接问题

# 验证Supabase配置
python -c "from agent_marketplace.database import db_manager; print('✅ 数据库正常' if db_manager.supabase else '❌ 数据库连接失败')"

# 重置数据库表
python agent_marketplace/setup_supabase.py

MCP路由器无响应

# 检查MCP路由器是否正在运行
curl http://localhost:6545/list

# 查看MCP路由器日志
# 日志出现在启动main.py的终端中

N8N工作流创建失败

  • 验证N8N_BASE_URL包括https://
  • 检查X_N8N_API_KEY有效且具有工作流创建权限
  • 确保N8N实例可以从您的服务器访问

缺少依赖项

# 安装缺少的包
pip install playwright
playwright install  # 用于N8N认证(必需)

# 或安装所有依赖项
pip install -r requirements.txt

Playwright浏览器问题

# 如果Playwright浏览器无法下载
playwright install --force

# 对于无头环境(服务器)
playwright install chromium

# 检查Playwright是否正常工作
python -c "from playwright.async_api import async_playwright; print('✅ Playwright正常')"

开发技巧

# 启用Flask调试模式
export FLASK_DEBUG=1

# 查看详细的MCP路由器日志
cd mcp_router && python mcp_router.py --log-level debug

# 测试单独组件
python -m agent_marketplace.n8n_workflow_parser  # 测试解析器
python -m mcp_router.mcp_router                  # 测试MCP路由器

🔐 安全最佳实践

  • 凭据管理:绝不在服务器端存储用户凭据
  • API密钥轮换:定期轮换N8N API密钥和Supabase密钥
  • 网络安全:生产环境中使用HTTPS和正确的SSL证书
  • 访问控制:实施适当的认证和授权
  • 数据隔离:确保通过RLS策略实现适当的数据隔离

🤝 贡献

  1. 分叉仓库
  2. 创建功能分支git checkout -b feature/amazing-feature
  3. 提交更改git commit -m '添加惊人的功能'
  4. 推送到分支git push origin feature/amazing-feature
  5. 打开拉取请求

📄 许可证

此项目采用MIT许可证 - 详情请参阅LICENSE文件。

📋 快速参考

API端点

代理市场(端口5000)

  • GET / - 主市场界面
  • GET /api/health - 健康检查和可用端点
  • POST /api/import-n8n-template-enhanced - 导入N8N模板
  • POST /api/deploy-workflow-to-n8n - 使用凭据部署工作流
  • GET /api/user/uploaded-workflows - 列出用户工作流
  • GET /api/user/mcp-servers - 列出活动的MCP服务器

MCP路由器(端口6545)

  • GET /list - 列出所有注册的MCP服务器
  • POST /n8n/build - 从N8N工作流创建MCP服务器
  • GET /n8n/credentials/status - 检查N8N凭据状态
  • /mcp/{work_flow_id}/{api_key} - MCP服务器端点

关键文件位置

  • 配置.env(根目录)
  • 主启动main.py
  • Flask应用agent_marketplace/app.py
  • MCP路由器mcp_router/mcp_router.py

🆘 支持

  • 问题GitHub问题
  • 文档:查阅此README和内联代码文档
  • 社区:加入我们的社区讨论以获取帮助和功能请求

🙏 致谢


星标历史

星标历史图表

由SUPERCHAIN团队为AI自动化社区打造