【技术文档摘要】
<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)服务器,实现与Claude、Cursor和其他兼容MCP平台的AI助手无缝集成。使用N8N的可视化工作流编辑器构建强大的自动化工具,并将其部署为可调用的AI函数。

从任何工作流中复制N8N模板链接/JSON
通过我们直观的界面映射您的凭据
一键部署!
您的N8N工作流被部署并创建了一个本地托管的MCP服务器。只需将服务器URL粘贴到Claude、Cursor、Super Chain或任何兼容MCP的平台上!
将您的N8N工作流转换为AI助手可用的自定义工具
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
⚠️ 重要:Playwright安装是必需的,用于N8N工作流执行。如果Playwright未正确安装,系统将使用虚拟凭据,限制功能。
克隆仓库
git clone https://github.com/Super-Chain/N8N2MCP.git
cd N8N2MCP
配置环境
cp env.example .env
# 编辑.env文件以包含实际配置值
使用Docker Compose启动
docker-compose up -d
这将启动:
查看日志
docker-compose logs -f
克隆仓库
git clone https://github.com/Super-Chain/N8N2MCP.git
cd N8N2MCP
安装依赖项
pip install -r requirements.txt
安装Playwright浏览器(必需)
playwright install
# 这会下载N8N认证所需的必要浏览器二进制文件
配置环境
# 复制并编辑.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=
启动两个服务器
python main.py
这将启动:
访问UI 前端:http://localhost:5000
配置说明:
# 示例MCP服务器URL格式:
http://localhost:6545/mcp/{work_flow_id}/{api_key}
# 测试MCP服务器:
curl http://localhost:6545/list # 列出所有注册的MCP服务器
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个主要表:
-- 主工作流存储表
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
这将自动启动两个服务:
cd agent_marketplace
python app.py
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路由器是否正在运行
curl http://localhost:6545/list
# 查看MCP路由器日志
# 日志出现在启动main.py的终端中
N8N_BASE_URL包括https://X_N8N_API_KEY有效且具有工作流创建权限# 安装缺少的包
pip install playwright
playwright install # 用于N8N认证(必需)
# 或安装所有依赖项
pip install -r requirements.txt
# 如果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路由器
git checkout -b feature/amazing-featuregit commit -m '添加惊人的功能'git push origin feature/amazing-feature此项目采用MIT许可证 - 详情请参阅LICENSE文件。
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服务器GET /list - 列出所有注册的MCP服务器POST /n8n/build - 从N8N工作流创建MCP服务器GET /n8n/credentials/status - 检查N8N凭据状态/mcp/{work_flow_id}/{api_key} - MCP服务器端点.env(根目录)main.pyagent_marketplace/app.pymcp_router/mcp_router.py由SUPERCHAIN团队为AI自动化社区打造