立即将N8N工作流转换为MCP服务器
一个综合平台,将N8N工作流转换为模型上下文协议(MCP)服务器,实现与Claude、Cursor和其他MCP兼容平台等AI助手的无缝集成。使用N8N的可视化工作流编辑器构建强大的自动化工具,并将其部署为可调用的AI功能。 Demo
✨ 如何使用
- 从任何工作流复制N8N模板链接/JSON
- 通过我们直观的界面映射您的凭据
- 一键部署!
部署N8N工作流并创建本地托管的MCP服务器。只需将服务器URL粘贴到Claude、Cursor、Super Chain或任何兼容MCP的平台即可!
🎯 主要特点
🤖 MCP服务器创建
将N8N工作流转换为MCP服务器,AI助手可以将其用作自定义工具
🔄 双重架构
- 代理商市场:基于Web的工作流管理和部署平台
- MCP路由器:高性能MCP服务器创建和路由系统
🛠️ 全面的工作流管理
- 浏览和部署预构建的工作流模板
- 上传和管理您的自定义N8N工作流
- 实时凭证配置和测试
- 一键部署到N8N实例
🏗️ 建筑
graph TB
subgraph "AI Assistant Layer"
A[Claude/Cursor/Super Chain]
end
subgraph "N8N 2 MCP"
B[Agent Marketplace
Flask Web App]
C[MCP Router
FastAPI Service]
D[Workflow Parser
Analysis Engine]
end
subgraph "Infrastructure"
E[Supabase Database]
F[N8N Instance]
G[Credential Manager]
end
A -->|MCP Protocol| C
C -->|Dynamic MCP| F
B -->|Workflow Management| E
B -->|Deploy & Configure| F
C -->|User Config| E
B -->|Parse & Analyze| D
D -->|Extract Requirements| G
G -->|Secure Handling| F📦 安装
先决条件
- Python 3.11+
- N8N实例 (cloud.n8n.io或自托管)
- 辅助数据库账户 (用于数据存储)
- 剧作家 (N8N身份验证所需)
- 码头工人 (可选,用于容器化部署)
⚠️ 重要:剧作家装置是 必需的 用于N8N工作流执行。如果Playwright安装不正确,系统将使用虚拟凭据,从而限制功能。
快速开始
选项1:Docker Compose(推荐)
- 克隆存储库
git clone https://github.com/Super-Chain/N8N2MCP.git
cd N8N2MCP- 配置环境
cp env.example .env
# Edit .env with your actual configuration values- 从Docker Compose开始
docker-compose up -d这将开始:
- Flask应用程序(代理市场):http://localhost:5000 - MCP路由器位于:http://localhost:6545
- 查看日志
docker-compose logs -f选项2:手动安装
- 克隆存储库
git clone https://github.com/Super-Chain/N8N2MCP.git
cd N8N2MCP- 安装依赖项
pip install -r requirements.txt- 安装Playwright浏览器 (必填)
playwright install
# This downloads the necessary browser binaries for N8N authentication- 配置环境
# Copy and edit the .env file (see Environment Configuration section)
cp .env.example .env # Supabase Configuration
SUPABASE_URL=https://your-project-id.supabase.co
SUPABASE_KEY=your_supabase_anon_key
SUPABASE_SERVICE_KEY=your_supabase_service_role_key
# N8N Configuration
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 Router Configuration
N8N_BUILDER_URL=http://localhost:6545
# Server Configuration
FLASK_HOST=0.0.0.0
FLASK_PORT=5000
MCP_HOST=0.0.0.0
MCP_PORT=6545
# Optional: Authentication credentials (auto-populated)
N8N_AUTH=
N8N_BROWSER_ID= - 启动两台服务器
python main.py这将开始:
- Flask应用程序(代理市场):http://localhost:5000 - MCP路由器位于:http://localhost:6545
- 访问UI
前端:http://localhost:5000
配置说明:
- 后缀URL:您的Supabase项目URL
- SUPABASE_KEY:客户端操作的匿名密钥
- suabase_SERVICE_KEY:管理员操作的服务角色键
- N8N_BASE_URL:您的N8N实例URL(必须包含https://)
- N8N_BUILDER_URL:必须包含http://协议
🔧 用法
从N8N工作流创建MCP服务器
方法1:导入N8N模板
- 浏览模板:访问 N8N模板
- 导入模板:从N8N.io输入N8N模板URL
- 配置凭据:填写所需的API密钥和服务凭据
- 部署工作流:单击部署在N8N实例中创建工作流
- MCP服务器已创建:自动生成MCP服务器端点
方法2:上传自定义工作流
- 上传JSON:上传N8N工作流JSON文件/复制并粘贴JSON工作流
- 评审分析:检查检测到的节点和所需的凭据
- 配置和部署:填写凭据并部署到N8N
- 访问MCP服务器:在AI工具中使用生成的MCP端点
使用MCP服务器
# Example MCP server URL format:
http://localhost:6545/mcp/{workflow_id}/{api_key}
# Test MCP server:
curl http://localhost:6545/list # List all registered MCP servers🎨 用例
🔍 数据处理与分析
- 使用N8N的数据操作节点转换CSV/Excel文件
- 连接到数据库和API进行实时数据分析
- 从AI对话中生成报告和可视化
🌐 API集成中心
- 将人工智能助手连接到外部服务(Slack、谷歌等)
- 为专有系统创建自定义API端点
- 为多个SaaS平台构建统一的界面
📧 沟通与通知
- 发送电子邮件、Slack消息或Discord通知
- 创建自动化报告系统
- 构建由人工智能交互触发的警报系统
🔄 工作流程自动化
- 从人工智能对话中触发复杂的业务流程
- 创建审批工作流和任务管理系统
- 构建与企业系统的自定义集成
🛠️ 发展
项目结构
N8N2MCP/
├── main.py # Unified server startup script
├── requirements.txt # Consolidated Python dependencies
├── .env # Environment configuration (shared)
│
├── agent_marketplace/ # Flask web application
│ ├── app.py # Main Flask app with API endpoints
│ ├── database.py # Supabase integration & data models
│ ├── n8n_workflow_parser.py # Workflow analysis engine
│ ├── setup_supabase.py # Database setup utilities
│ ├── templates/ # HTML templates
│ │ ├── workflows.html # Main marketplace interface
│ │ └── static/ # CSS, JS assets
│ └── __init__.py # Python package marker
│
├── mcp_router/ # FastAPI MCP service
│ ├── mcp_router.py # Main FastAPI application
│ ├── n8n_credential_extractor.py # N8N authentication
│ ├── credential_helper.py # Credential management utilities
│ └── __init__.py # Python package marker
│
└── README.md # This documentation数据库设置
系统使用 2张主桌 在Supabase:
设置
- 创建Supabase项目:在以下位置设置新项目 网站 supabase.com
- 在Supabase SQL编辑器中运行SQL:
-- Main workflow storage table
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 server configurations
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)
);
-- Enable Row Level Security (recommended)
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.pyMCP路由器(端口6545)
cd mcp_router
python mcp_router.py验证
# Test Agent Marketplace
curl http://localhost:5000/api/health
# Test MCP Router
curl http://localhost:6545/list
# View all endpoints
curl http://localhost:5000/api/health | grep endpoints🔧 故障排除
常见问题
端口已在使用中
# Kill processes on ports 5000 and 6545
fuser -k 5000/tcp 6545/tcp
# Or restart with main.py which handles this automatically
python main.py数据库连接问题
# Verify Supabase configuration
python -c "from agent_marketplace.database import db_manager; print('✅ Database OK' if db_manager.supabase else '❌ Database connection failed')"
# Reset database tables
python agent_marketplace/setup_supabase.pyMCP路由器没有响应
# Check if MCP Router is running
curl http://localhost:6545/list
# View MCP Router logs
# Logs appear in terminal where main.py was startedN8N工作流创建失败
- 验证
N8N_BASE_URL包含https:// - 检查
X_N8N_API_KEY有效且具有工作流创建权限 - 确保N8N实例可从服务器访问
缺少的依赖
# Install missing packages
pip install playwright
playwright install # For N8N authentication (required)
# Or install all dependencies
pip install -r requirements.txt剧作家浏览器问题
# If playwright browsers fail to download
playwright install --force
# For headless environments (servers)
playwright install chromium
# Check if playwright is working
python -c "from playwright.async_api import async_playwright; print('✅ Playwright OK')"开发技巧
# Enable debug mode for Flask
export FLASK_DEBUG=1
# View detailed MCP Router logs
cd mcp_router && python mcp_router.py --log-level debug
# Test individual components
python -m agent_marketplace.n8n_workflow_parser # Test parser
python -m mcp_router.mcp_router # Test MCP Router🔐 安全最佳实践
- 凭据管理:从不在服务器端存储用户凭据
- API键旋转:定期旋转N8N API键和Subabase键
- 网络安全:在生产环境中使用HTTPS,并使用适当的SSL证书
- 访问控制:实施适当的身份验证和授权
- 数据隔离:通过RLS策略确保适当的用户数据隔离
🤝 贡献
- 分叉存储库
- 创建要素分支:
git checkout -b feature/amazing-feature - 提交您的更改:
git commit -m 'Add amazing feature' - 推到分支:
git push origin feature/amazing-feature - 打开拉取请求
📄 许可证
此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。
📋 快速参考
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/{workflow_id}/{api_key}-MCP服务器端点
关键文件位置
- 配置:
.env(根目录) - 主启动:
main.py - Flask应用程序:
agent_marketplace/app.py - MCP路由器:
mcp_router/mcp_router.py
🆘 支持
- 问题:
- 文档:查看此README和内联代码文档
- 社区:加入我们的社区讨论,获取帮助和功能请求
🙏 致谢
______________________________________________________________________
明星历史

内置于❤️ 由SUPERCHAIN团队为AI自动化社区提供
