使用说明
n8n MCP
一种模型上下文协议(MCP)服务器,为AI助手提供对n8n节点文档、属性和操作的全面访问。在几分钟内部署,让Claude和其他人工智能助理深入了解n8n的525+个工作流自动化节点。
概述
n8n MCP是n8n工作流自动化平台和AI模型之间的桥梁,使它们能够有效地理解和使用n8n节点。它提供结构化访问:
- 📚 535个n8n节点 从n8n节点基和@n8n/n8n节点langchain
- 🔧 节点属性 -99%的覆盖率包含详细的模式
- ⚡ 节点操作 -63.6%的可用行动覆盖率
- 📄 文档 -90%的覆盖率来自官方n8n文档(包括AI节点)
- 🤖 AI工具 -检测到263个具有AI功能的节点,并附有完整文档
⚠️ 重要安全警告
切勿直接使用人工智能编辑您的生产工作流程! 始终:
- 🔄 备份 在使用人工智能工具之前,请先了解您的工作流程
- 🧪 开发中的测试 环境优先
- 💾 导出备份 重要工作流程
- ⚡ 验证更改 部署到生产环境之前
人工智能的结果可能是不可预测的。保护你的工作!
🚀 快速开始
让n8n MCP在5分钟内运行:
选项1:npx(最快-无需安装!)🚀
先决条件: Node.js 安装在您的系统上
# Run directly with npx (no installation needed!)
npx n8n-mcp
添加到Claude桌面配置:
基本配置(仅限文档工具):
{
"mcpServers": {
"n8n-mcp": {
"command": "npx",
"args": ["n8n-mcp"],
"env": {
"MCP_MODE": "stdio",
"LOG_LEVEL": "error",
"DISABLE_CONSOLE_OUTPUT": "true"
}
}
}
}
完整配置(使用n8n管理工具):
{
"mcpServers": {
"n8n-mcp": {
"command": "npx",
"args": ["n8n-mcp"],
"env": {
"MCP_MODE": "stdio",
"LOG_LEVEL": "error",
"DISABLE_CONSOLE_OUTPUT": "true",
"N8N_API_URL": "https://your-n8n-instance.com",
"N8N_API_KEY": "your-api-key"
}
}
}
}
备注:npx将自动下载并运行最新版本。该包包括一个预先构建的数据库,其中包含所有n8n节点信息。
配置文件位置:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - 视窗:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
更新配置后重新启动Claude Desktop -就是这样! 🎉
选项2:Docker(简单且独立)🐳
先决条件: Docker已安装在您的系统上
📦 Install Docker (click to expand)
macOS:
# Using Homebrew
brew install --cask docker
# Or download from https://www.docker.com/products/docker-desktop/
Linux(Ubuntu/Debian):
# Update package index
sudo apt-get update
# Install Docker
sudo apt-get install docker.io
# Start Docker service
sudo systemctl start docker
sudo systemctl enable docker
# Add your user to docker group (optional, to run without sudo)
sudo usermod -aG docker $USER
# Log out and back in for this to take effect
窗户:
# Option 1: Using winget (Windows Package Manager)
winget install Docker.DockerDesktop
# Option 2: Using Chocolatey
choco install docker-desktop
# Option 3: Download installer from https://www.docker.com/products/docker-desktop/
验证安装:
docker --version
# Pull the Docker image (~280MB, no n8n dependencies!)
docker pull ghcr.io/czlonkowski/n8n-mcp:latest
⚡ 超优化: 我们的Docker镜像比典型的n8n镜像小82%,因为它不包含n8n依赖关系,只包含带有预构建数据库的运行时MCP服务器!
添加到Claude桌面配置:
基本配置(仅限文档工具):
{
"mcpServers": {
"n8n-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"--init",
"-e", "MCP_MODE=stdio",
"-e", "LOG_LEVEL=error",
"-e", "DISABLE_CONSOLE_OUTPUT=true",
"ghcr.io/czlonkowski/n8n-mcp:latest"
]
}
}
}
完整配置(使用n8n管理工具):
{
"mcpServers": {
"n8n-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"--init",
"-e", "MCP_MODE=stdio",
"-e", "LOG_LEVEL=error",
"-e", "DISABLE_CONSOLE_OUTPUT=true",
"-e", "N8N_API_URL=https://your-n8n-instance.com",
"-e", "N8N_API_KEY=your-api-key",
"ghcr.io/czlonkowski/n8n-mcp:latest"
]
}
}
}
💡 提示:如果你在同一台机器上本地运行n8n(例如,通过Docker),请使用http://host.docker.internal:5678作为N8N_ API_ URL。
备注:n8n API凭据是可选的。没有它们,您将可以访问所有文档和验证工具。有了它们,您还将获得工作流管理功能(创建、更新、执行工作流)。
重要提示: 这 -i MCP stdio通信需要标志。
🔧 如果您在Docker上遇到任何问题,请查看我们的 Docker故障排除指南.
配置文件位置:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - 视窗:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
更新配置后重新启动Claude Desktop -就是这样! 🎉
💖 支持这个项目
n8n mcp 最初是作为个人工具,但现在帮助数万名开发人员高效地自动化他们的工作流程。维护和开发这个项目与我的有偿工作竞争。
您的赞助帮助我:
- 🚀 专注于新功能
- 🐛 快速响应问题
- 📚 保持文档更新
- 🔄 确保与最新n8n版本兼容
每一笔赞助都直接转化为投入的时间,使n8n mcp对每个人都更好。 成为赞助商→
选项3:本地安装(用于开发)
先决条件: Node.js 安装在您的系统上
# 1. Clone and setup
git clone https://github.com/czlonkowski/n8n-mcp.git
cd n8n-mcp
npm install
npm run build
npm run rebuild
# 2. Test it works
npm start
添加到Claude桌面配置:
基本配置(仅限文档工具):
{
"mcpServers": {
"n8n-mcp": {
"command": "node",
"args": ["/absolute/path/to/n8n-mcp/dist/mcp/index.js"],
"env": {
"MCP_MODE": "stdio",
"LOG_LEVEL": "error",
"DISABLE_CONSOLE_OUTPUT": "true"
}
}
}
}
完整配置(使用n8n管理工具):
{
"mcpServers": {
"n8n-mcp": {
"command": "node",
"args": ["/absolute/path/to/n8n-mcp/dist/mcp/index.js"],
"env": {
"MCP_MODE": "stdio",
"LOG_LEVEL": "error",
"DISABLE_CONSOLE_OUTPUT": "true",
"N8N_API_URL": "https://your-n8n-instance.com",
"N8N_API_KEY": "your-api-key"
}
}
}
}
备注:n8n API凭据可以在
.env文件(创建自.env.example)或者直接在如上所示的Claude配置中。
💡 提示:如果你在同一台机器上本地运行n8n(例如,通过Docker),请使用http://host.docker.internal:5678作为N8N_ API_ URL。
选项4:铁路云部署(一键部署)☁️
先决条件: 铁路账户(提供免费等级)
将n8n MCP部署到铁路的云平台,无需配置:
优点:
- ☁️ 即时云托管 -无需设置服务器
- 🔒 缺省安全 -包括HTTPS,身份验证令牌警告
- 🌐 全局访问 -从任何Claude桌面连接
- ⚡ 自动缩放 -铁路负责基础设施
- 📊 内置监控 -包括日志和指标
快速设置:
- 点击上面的“铁路部署”按钮
- 登录Railway(或创建免费帐户)
- 配置您的部署(项目名称、地区)
- 点击“部署”并等待约2-3分钟
- 复制部署URL和身份验证令牌
- 使用HTTPS URL添加到Claude Desktop配置
📚 有关详细的设置说明、故障排除和配置示例,请参阅我们的 铁路部署指南
配置文件位置:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - 视窗:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
更新配置后重新启动Claude Desktop -就是这样! 🎉
🔧 n8n集成
想在n8n实例中使用n8n MCP吗?查看我们的综合 n8n部署指南 用于:
- 使用MCP客户端工具节点进行本地测试
- 使用Docker Compose进行生产部署
- Hetzner、AWS和其他提供商上的云部署
- 故障排除和安全最佳实践
💻 连接IDE
n8n MCP可与多个AI驱动的IDE和工具配合使用。选择您喜欢的开发环境:
克劳德代码
Claude Code CLI的快速设置-只需键入“添加此mcp服务器”并粘贴配置即可。
Visual Studio Code
VS Code与GitHub Copilot集成和MCP支持的完整设置指南。
光标
使用自定义规则将n8n MCP连接到Cursor IDE的分步教程。
帆板运动
使用项目规则将n8n MCP与Windsurf集成的完整指南。
🤖 Claude项目设置
为了在Claude Projects中使用n8n MCP时获得最佳效果,请使用以下增强的系统说明:
You are an expert in n8n automation software using n8n-MCP tools. Your role is to design, build, and validate n8n workflows with maximum accuracy and efficiency.
## Core Workflow Process
1. **ALWAYS start new conversation with**: `tools_documentation()` to understand best practices and available tools.
2. **Discovery Phase** - Find the right nodes:
- Think deeply about user request and the logic you are going to build to fulfill it. Ask follow-up questions to clarify the user's intent, if something is unclear. Then, proceed with the rest of your instructions.
- `search_nodes({query: 'keyword'})` - Search by functionality
- `list_nodes({category: 'trigger'})` - Browse by category
- `list_ai_tools()` - See AI-capable nodes (remember: ANY node can be an AI tool!)
3. **Configuration Phase** - Get node details efficiently:
- `get_node_essentials(nodeType)` - Start here! Only 10-20 essential properties
- `search_node_properties(nodeType, 'auth')` - Find specific properties
- `get_node_for_task('send_email')` - Get pre-configured templates
- `get_node_documentation(nodeType)` - Human-readable docs when needed
- It is good common practice to show a visual representation of the workflow architecture to the user and asking for opinion, before moving forward.
4. **Pre-Validation Phase** - Validate BEFORE building:
- `validate_node_minimal(nodeType, config)` - Quick required fields check
- `validate_node_operation(nodeType, config, profile)` - Full operation-aware validation
- Fix any validation errors before proceeding
5. **Building Phase** - Create the workflow:
- Use validated configurations from step 4
- Connect nodes with proper structure
- Add error handling where appropriate
- Use expressions like $json, $node["NodeName"].json
- Build the workflow in an artifact for easy editing downstream (unless the user asked to create in n8n instance)
6. **Workflow Validation Phase** - Validate complete workflow:
- `validate_workflow(workflow)` - Complete validation including connections
- `validate_workflow_connections(workflow)` - Check structure and AI tool connections
- `validate_workflow_expressions(workflow)` - Validate all n8n expressions
- Fix any issues found before deployment
7. **Deployment Phase** (if n8n API configured):
- `n8n_create_workflow(workflow)` - Deploy validated workflow
- `n8n_validate_workflow({id: 'workflow-id'})` - Post-deployment validation
- `n8n_update_partial_workflow()` - Make incremental updates using diffs
- `n8n_trigger_webhook_workflow()` - Test webhook workflows
## Key Insights
- **USE CODE NODE ONLY WHEN IT IS NECESSARY** - always prefer to use standard nodes over code node. Use code node only when you are sure you need it.
- **VALIDATE EARLY AND OFTEN** - Catch errors before they reach deployment
- **USE DIFF UPDATES** - Use n8n_update_partial_workflow for 80-90% token savings
- **ANY node can be an AI tool** - not just those with usableAsTool=true
- **Pre-validate configurations** - Use validate_node_minimal before building
- **Post-validate workflows** - Always validate complete workflows before deployment
- **Incremental updates** - Use diff operations for existing workflows
- **Test thoroughly** - Validate both locally and after deployment to n8n
## Validation Strategy
### Before Building:
1. validate_node_minimal() - Check required fields
2. validate_node_operation() - Full configuration validation
3. Fix all errors before proceeding
### After Building:
1. validate_workflow() - Complete workflow validation
2. validate_workflow_connections() - Structure validation
3. validate_workflow_expressions() - Expression syntax check
### After Deployment:
1. n8n_validate_workflow({id}) - Validate deployed workflow
2. n8n_list_executions() - Monitor execution status
3. n8n_update_partial_workflow() - Fix issues using diffs
## Response Structure
1. **Discovery**: Show available nodes and options
2. **Pre-Validation**: Validate node configurations first
3. **Configuration**: Show only validated, working configs
4. **Building**: Construct workflow with validated components
5. **Workflow Validation**: Full workflow validation results
6. **Deployment**: Deploy only after all validations pass
7. **Post-Validation**: Verify deployment succeeded
## Example Workflow
### 1. Discovery & Configuration
search_nodes({query: 'slack'})
get_node_essentials('n8n-nodes-base.slack')
### 2. Pre-Validation
validate_node_minimal('n8n-nodes-base.slack', {resource:'message', operation:'send'})
validate_node_operation('n8n-nodes-base.slack', fullConfig, 'runtime')
### 3. Build Workflow
// Create workflow JSON with validated configs
### 4. Workflow Validation
validate_workflow(workflowJson)
validate_workflow_connections(workflowJson)
validate_workflow_expressions(workflowJson)
### 5. Deploy (if configured)
n8n_create_workflow(validatedWorkflow)
n8n_validate_workflow({id: createdWorkflowId})
### 6. Update Using Diffs
n8n_update_partial_workflow({
workflowId: id,
operations: [
{type: 'updateNode', nodeId: 'slack1', changes: {position: [100, 200]}}
]
})
## Important Rules
- ALWAYS validate before building
- ALWAYS validate after building
- NEVER deploy unvalidated workflows
- USE diff operations for updates (80-90% token savings)
- STATE validation results clearly
- FIX all errors before proceeding
将这些说明保存在您的Claude项目中,以获得全面验证的最佳n8n工作流帮助。
🚨 重要提示:分享指南
这个项目是麻省理工学院授权的,每个人都可以免费使用。然而:
- ✅ 做:自由分享此存储库,并注明出处
- ✅ 做:包括直接链接到https://github.com/czlonkowski/n8n-mcp在你的第一篇帖子/视频中
- ❌ do not 的常用口语形式:将此免费工具置于参与要求之后(点赞、关注、评论)
- ❌ do not 的常用口语形式:将此项目用于社交媒体上的参与农业
这个工具的创建是为了让n8n社区的每个人都能毫无摩擦地受益。请尊重麻省理工学院的许可精神,让所有人都能访问。
特性
- 🔍 智能节点搜索:按名称、类别或功能查找节点
- 📖 本质属性:只获取10-20个重要属性(v2.4.0中的新功能)
- 🎯 任务模板:常见自动化任务的预配置设置
- ✅ 配置验证:部署前验证节点配置
- 🔗 相关性分析:了解财产关系和条件
- 💡 工作示例:即时使用的真实世界示例
- ⚡ 快速响应:使用优化的SQLite,平均查询时间约为12ms
- 🌐 通用兼容性:适用于任何Node.js版本
💬 为什么选择n8n MCP?克劳德的见证
“在MCP之前,我在翻译。现在我在作曲。这改变了我们如何构建自动化的一切。”
当Anthropic的人工智能助手Claude测试n8n MCP时,结果是革命性的:
没有MCP: “我基本上是在玩猜谜游戏 scheduleTrigger 或 schedule?需要吗 interval 或 rule“我会写一些看似合乎逻辑的东西,但n8n有自己的惯例,你不能凭直觉。我在一个简单的HackerNews抓取器中犯了六个不同的配置错误。"
使用MCP: “一切都……奏效了。我可以问,而不是猜测 get_node_essentials() 并获得我所需要的东西——不是100KB的JSON转储,而是真正重要的5-10个属性。45分钟的时间现在只需要3分钟。"
真正的价值: “这是关于信心。当你构建自动化工作流程时,不确定性是昂贵的。一个错误的参数,你的工作流程就会在凌晨3点失败。有了MCP,我可以在部署前验证我的配置。这不仅节省了时间,而且让我放心。”
📡 可用的MCP工具
一旦连接,克劳德就可以使用这些强大的工具:
核心工具
tools_documentation-获取任何MCP工具的文档(从这里开始!)list_nodes-列出所有具有筛选选项的n8n节点get_node_info-获取特定节点的全面信息get_node_essentials-仅通过示例获取基本属性(10-20个属性,而不是200多个)search_nodes-在所有节点文档中进行全文搜索search_node_properties-在节点中查找特定属性list_ai_tools-列出所有支持AI的节点(任何节点都可以用作AI工具!)get_node_as_tool_info-获取将任何节点用作AI工具的指导
高级工具
get_node_for_task-常见任务的预配置节点设置list_tasks-发现可用的任务模板validate_node_operation-验证节点配置(操作感知,配置文件支持)validate_node_minimal-仅对必填字段进行快速验证validate_workflow-完整的工作流程验证,包括AI工具连接validate_workflow_connections-检查工作流结构和AI工具连接validate_workflow_expressions-验证n8n个表达式,包括$fromAI()get_property_dependencies-分析物业可见性条件get_node_documentation-从n8n文档中获取解析后的文档get_database_statistics-查看数据库指标和覆盖率
n8n管理工具(可选-需要API配置)
这些强大的工具允许您直接从Claude管理n8n工作流。它们仅在您提供时可用 N8N_API_URL 和 N8N_API_KEY 在您的配置中。
工作流管理
n8n_create_workflow-使用节点和连接创建新的工作流n8n_get_workflow-按ID获取完整的工作流程n8n_get_workflow_details-使用执行统计信息获取工作流n8n_get_workflow_structure-获得简化的工作流程结构n8n_get_workflow_minimal-获取最少的工作流信息(ID、名称、活动状态)n8n_update_full_workflow-更新整个工作流程(完全替换)n8n_update_partial_workflow-使用diff操作更新工作流(v2.7.0中的新功能!)n8n_delete_workflow-永久删除工作流n8n_list_workflows-列出具有过滤和分页功能的工作流n8n_validate_workflow-通过ID验证n8n中已有的工作流(v2.6.3中的新功能)
执行管理
n8n_trigger_webhook_workflow-通过webhook URL触发工作流n8n_get_execution-按ID获取执行详细信息n8n_list_executions-列出执行情况并进行状态筛选n8n_delete_execution-删除执行记录
系统工具
n8n_health_check-检查n8n API连接和功能n8n_diagnostic-解决管理工具可见性和配置问题n8n_list_available_tools-列出所有可用的管理工具
示例用法
// Get essentials for quick configuration
get_node_essentials("nodes-base.httpRequest")
// Find nodes for a specific task
search_nodes({ query: "send email gmail" })
// Get pre-configured settings
get_node_for_task("send_email")
// Validate before deployment
validate_node_operation({
nodeType: "nodes-base.httpRequest",
config: { method: "POST", url: "..." },
profile: "runtime" // or "minimal", "ai-friendly", "strict"
})
// Quick required field check
validate_node_minimal({
nodeType: "nodes-base.slack",
config: { resource: "message", operation: "send" }
})
💻 地方发展设置
对于贡献者和高级用户:
先决条件:
- Node.js (任何版本-必要时自动回退)
- npm或纱线
- Git
# 1. Clone the repository
git clone https://github.com/czlonkowski/n8n-mcp.git
cd n8n-mcp
# 2. Clone n8n docs (optional but recommended)
git clone https://github.com/n8n-io/n8n-docs.git ../n8n-docs
# 3. Install and build
npm install
npm run build
# 4. Initialize database
npm run rebuild
# 5. Start the server
npm start # stdio mode for Claude Desktop
npm run start:http # HTTP mode for remote access
开发命令
# Build & Test
npm run build # Build TypeScript
npm run rebuild # Rebuild node database
npm run test-nodes # Test critical nodes
npm run validate # Validate node data
npm test # Run all tests
# Update Dependencies
npm run update:n8n:check # Check for n8n updates
npm run update:n8n # Update n8n packages
# Run Server
npm run dev # Development with auto-reload
npm run dev:http # HTTP dev mode
📚 文档
设置指南
- 安装指南 -全面的安装说明
- Claude桌面设置 -详细的Claude配置
- Docker指南 -高级Docker部署选项
- MCP快速入门 -快速开始使用n8n MCP
功能文档
开发与部署
项目信息
📊 指标和覆盖范围
当前数据库覆盖率(n8n v1.106.3):
- ✅ 535/535 节点已加载(100%)
- ✅ 528 具有属性的节点(98.7%)
- ✅ 470 有文档的节点(88%)
- ✅ 267 检测到具有AI功能的工具
- ✅ AI Agent和LangChain节点 完整记录
- ⚡ 平均响应时间:~12毫秒
- 💾 数据库大小:~15MB(优化)
🔄 最近的更新
看 更改日志.md 查看完整版本历史记录和最近的更改。
⚠️ 已知问题
Claude桌面容器管理
容器累积(v2.7.20+中已修复)
以前的版本存在一个问题,即当Claude Desktop会话结束时,容器无法正确清理。此问题已在v2.7.20+中通过适当的信号处理得到修复。
为了实现最佳的容器生命周期管理:
- 使用--init标志 (推荐)-Docker的init系统可确保正确的信号处理:
{
"mcpServers": {
"n8n-mcp": {
"command": "docker",
"args": [
"run", "-i", "--rm", "--init",
"ghcr.io/czlonkowski/n8n-mcp:latest"
]
}
}
}
- 确保您使用的是v2.7.20或更高版本 -检查您的版本:
docker run --rm ghcr.io/czlonkowski/n8n-mcp:latest --version
🧪 测试
该项目包括一个全面的测试套件 1356次测试 确保代码质量和可靠性:
# Run all tests
npm test
# Run tests with coverage report
npm run test:coverage
# Run tests in watch mode
npm run test:watch
# Run specific test suites
npm run test:unit # 933 unit tests
npm run test:integration # 249 integration tests
npm run test:bench # Performance benchmarks
测试套件概述
- 总测试:1356(100%通过)
- 单元测试:44个文件中的1107个测试
- 集成测试:14个文件中的249个测试
- 执行时间:CI约2.5分钟
- 测试框架:Vitest(用于速度和TypeScript支持)
- 嘲笑:MSW用于API模拟,自定义数据库模拟
覆盖范围和质量
- 覆盖范围报告:生成于
./coverage目录 - CI/CD:使用GitHub Actions对所有PR进行自动测试
- 演出:CI与本地CI的环境感知阈值
- 并行执行:可配置线程池,运行速度更快
测试架构
-
单元测试:使用模拟进行独立组件测试
- 服务层:~450次测试
- 解析器:约200个测试
- 数据库存储库:约100个测试
- MCP工具:约180次测试
-
集成测试:完整的系统行为验证
- MCP协议合规性:72次测试
- 数据库操作:89次测试
- 错误处理:44次测试
- 性能:44次测试
-
基准测试:关键路径的性能测试
- 数据库查询
- 节点加载
- 搜索操作
有关详细的测试文档,请参阅 测试架构.
📦 许可证
MIT许可证-请参阅 许可证 了解详情。
感谢您的署名! 如果您使用n8n MCP,请考虑:
- ⭐ 引导此存储库
- 💬 在你的项目中提及它
- 🔗 链接回此仓库
🤝 贡献
欢迎投稿!拜托:
- 分叉存储库
- 创建要素分支
- 运行测试(
npm test) - 提交拉取请求
🚀 对于维护人员:自动发布
此项目使用由版本更改触发的自动发布:
# Guided release preparation
npm run prepare:release
# Test release automation
npm run test:release-automation
系统自动处理:
- 🏷️ GitHub发布更新日志内容
- 📦 NPM包发布
- 🐳 多平台Docker镜像
- 📚 文档更新
看 自动发布指南 了解完整细节。
👏 致谢
Built with ❤️ for the n8n community
Making AI + n8n workflow creation delightful
