关于 n8n MCP Server
n8n MCP Server 将 MCP 客户端连接到 n8n 实例,用于管理工作流及相关资源。其工具涵盖工作流执行、数据表、凭据、用户、Webhook 和管理操作。
主要功能
- 01创建、更新和运行工作流
- 02管理数据表及其行
- 03查看执行记录和结果
- 04管理标签、凭据和变量
- 05管理用户与项目
- 06触发 Webhook 并执行审计
适用场景
- 01创建或启用 n8n 工作流
- 02查询或更新工作流数据表
- 03查看执行状态和结果
- 04通过 MCP 客户端管理 n8n 资源
MCP 相关
这是一个将 n8n API 操作作为工具提供给客户端的 MCP 服务。它使用基础 URL 和必需的 API 密钥连接 n8n 实例。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
43收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| limit | number | 否 | 要返回的最大条目数(默认值为 100) |
| active | boolean | 否 | 按激活状态筛选 |
详细介绍
为什么选择 mcp-n8n?
其他 n8n MCP 服务涵盖工作流和执行记录。mcp-n8n 涵盖所有功能,包括数据表;它是唯一支持数据表的 MCP。
| 功能 | mcp-n8n | leonardsellem | illuminare | czlonkowski |
|---|---|---|---|---|
| 工作流(CRUD + 执行) | 10 | 7 | 8 | 4 |
| 执行记录 | 3 | 5 | 3 | 2 |
| 数据表 | 8 | — | — | — |
| 标签 + 工作流标签 | 7 | — | 5 | — |
| 凭据 | 4 | — | 3 | — |
| 用户 | 3 | — | 4 | — |
| 变量 | 3 | — | 3 | — |
| 项目(企业版) | 4 | — | 4 | — |
| 安全审计 | 1 | — | 1 | — |
| Webhook | 1 | 1 | — | 1 |
| 健康检查 | 1 | — | — | 1 |
| 总计 | 43 | 12 | 33 | 20 |
数据表——完整的 CRUD 操作,支持筛选、搜索、更新或插入以及试运行。其他 MCP 都不具备这些功能。
🚀 快速开始
Claude Code
claude mcp add --scope user \
-e N8N_BASE_URL=http://localhost:5678 \
-e N8N_API_KEY=your-api-key \
-- n8n npx -y @nextoolsolutions/mcp-n8n
Cursor
添加到 ~/.cursor/mcp.json:
{
"mcpServers": {
"n8n": {
"command": "npx",
"args": ["-y", "mcp-n8n"],
"env": {
"N8N_BASE_URL": "http://localhost:5678",
"N8N_API_KEY": "your-api-key"
}
}
}
}
Claude Desktop
添加到 claude_desktop_config.json:
{
"mcpServers": {
"n8n": {
"command": "npx",
"args": ["-y", "mcp-n8n"],
"env": {
"N8N_BASE_URL": "http://localhost:5678",
"N8N_API_KEY": "your-api-key"
}
}
}
}
配置文件位置:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
Windsurf
添加到 Windsurf MCP 配置:
{
"mcpServers": {
"n8n": {
"command": "npx",
"args": ["-y", "mcp-n8n"],
"env": {
"N8N_BASE_URL": "http://localhost:5678",
"N8N_API_KEY": "your-api-key"
}
}
}
}
VS Code (Copilot)
添加到 VS Code 的 settings.json:
{
"mcp": {
"servers": {
"n8n": {
"command": "npx",
"args": ["-y", "mcp-n8n"],
"env": {
"N8N_BASE_URL": "http://localhost:5678",
"N8N_API_KEY": "your-api-key"
}
}
}
}
}
获取 API 密钥
- 打开你的 n8n 实例
- 前往 设置 → n8n API
- 创建新的 API 密钥
- 将其复制到
N8N_API_KEY环境变量中
🛠 工具
工作流(10)
| 工具 | 描述 |
|---|---|
n8n_list_workflows | 列出所有工作流,可选添加筛选条件 |
n8n_get_workflow | 按 ID 获取工作流(包含节点、连接和设置) |
n8n_create_workflow | 从 JSON 创建新工作流 |
n8n_update_workflow | 更新现有工作流(完整替换) |
n8n_delete_workflow | 永久删除工作流 |
n8n_activate_workflow | 激活工作流以用于生产环境 |
n8n_deactivate_workflow | 停用工作流 |
n8n_execute_workflow | 触发工作流执行,可选提供输入数据 |
n8n_get_workflow_tags | 列出与工作流关联的标签 |
n8n_update_workflow_tags | 替换工作流上的所有标签 |
执行记录(3)
| 工具 | 描述 |
|---|---|
n8n_list_executions | 列出执行记录,可按工作流、状态和游标筛选 |
n8n_get_execution | 获取执行状态、结果数据和耗时 |
n8n_delete_execution | 删除执行记录 |
数据表(8)
仅适用于 n8n v1.64+。这是唯一支持数据表的 MCP 服务。
| 工具 | 描述 |
|---|---|
n8n_list_datatables | 列出所有数据表,并支持筛选和排序 |
n8n_create_datatable | 创建包含类型化列(string、number、boolean、date、json)的表 |
n8n_get_datatable | 获取表的元数据(列、名称、ID) |
n8n_get_datatable_rows | 查询行,支持筛选、全文搜索、排序和分页 |
n8n_insert_datatable_rows | 插入一行或多行 |
n8n_update_datatable_rows | 更新符合筛选条件的行(支持 dry-run) |
n8n_upsert_datatable_row | 存在则更新,不存在则插入 |
n8n_delete_datatable_rows | 删除符合筛选条件的行(支持 dry-run) |
标签(5)
| 工具 | 描述 |
|---|---|
n8n_list_tags | 列出所有标签 |
n8n_get_tag | 根据 ID 获取标签 |
n8n_create_tag | 创建新标签 |
n8n_update_tag | 重命名标签 |
n8n_delete_tag | 删除标签 |
凭据(4)
| 工具 | 描述 |
|---|---|
n8n_list_credentials | 列出凭据(仅名称和类型——数据已脱敏) |
n8n_create_credential | 创建凭据(请先使用 get_credential_schema) |
n8n_delete_credential | 删除凭据 |
n8n_get_credential_schema | 获取凭据类型的 JSON 架构 |
用户(3)
| 工具 | 描述 |
|---|---|
n8n_list_users | 列出所有用户(需要实例所有者角色) |
n8n_get_user | 根据 ID 或电子邮件获取用户 |
n8n_delete_user | 删除用户 |
变量(3)
| 工具 | 描述 |
|---|---|
n8n_list_variables | 列出所有环境变量 |
n8n_create_variable | 创建键值变量 |
n8n_delete_variable | 删除变量 |
项目(4)— 企业版
| 工具 | 描述 |
|---|---|
n8n_list_projects | 列出所有项目 |
n8n_create_project | 创建项目 |
n8n_update_project | 重命名项目 |
n8n_delete_project | 删除项目 |
审计(1)
| 工具 | 描述 |
|---|---|
n8n_generate_audit | 生成安全审计(凭据、数据库、文件系统、节点) |
系统(1)
| 工具 | 描述 |
|---|---|
n8n_health_check | 验证 n8n API 连通性 |
Webhook(1)
| 工具 | 描述 |
|---|---|
n8n_trigger_webhook | 通过工作流的 webhook URL 触发工作流(生产或测试) |
⚙️ 配置
| 变量 | 默认值 | 描述 |
|---|---|---|
N8N_BASE_URL | http://localhost:5678 | 你的 n8n 实例 URL |
N8N_API_KEY | — | API 密钥(必需) |
N8N_MAX_RETRIES | 3 | 遇到 429 / 5xx 错误时的重试次数 |
N8N_TIMEOUT | 30000 | 请求超时时间,单位为毫秒 |
✨ 功能
- 43 个工具 — 功能最全面的 n8n MCP
- 数据表 — 完整的 CRUD 支持,唯一具备此功能的 MCP
- 自动重试 — 遇到速率限制(429)和服务器错误(5xx)时采用指数退避
- 可配置超时 — 防止请求挂起(默认 30 秒)
- 零外部依赖 — 仅使用 MCP SDK + Zod
- TypeScript 严格模式 — 类型完整、安全且易于维护
- 兼容 Node 16+ — 使用原生 fetch,并提供 http/https 回退
🔒 安全
- API 密钥绝不硬编码——仅从环境变量加载
- 列表响应中的凭据数据会脱敏(n8n API 的行为)
- 所有 ID 都使用
encodeURIComponent清理,以防止路径遍历 - 不会在错误消息中记录或暴露敏感数据
🏗 开发
git clone https://github.com/NexTools-Solutions/mcp-n8n.git
cd mcp-n8n
npm install
| 命令 | 描述 |
|---|---|
npm run dev | 使用 tsx 运行(无需构建步骤) |
npm run build | 将 TypeScript 编译到 dist/ |
npm start | 运行编译后的版本 |
项目结构
mcp-n8n/
├── src/
│ ├── index.ts # MCP server — tool registration and handlers
│ └── n8n-client.ts # HTTP client — API calls, retry, timeout
├── dist/ # Compiled output
├── package.json
├── tsconfig.json
└── README.md
🤝 贡献
欢迎贡献!请按以下步骤操作:
- Fork 此仓库
- 创建功能分支(
git checkout -b feat/my-feature) - 提交更改
- 推送并创建 Pull Request
📄 许可证
MIT — 可免费用于个人和商业用途。
由 NexTool Solutions 构建
如果这个项目对你有帮助,不妨给它点个 ⭐
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。