n8n AI工作流服务器
一种模型上下文协议服务器,它通过自然语言支持AI助手与n8n工作流进行交互,支持列出、创建、更新、执行和监控工作流等操作。
服务介绍
n8n MCP 服务器
一个模型上下文协议 (MCP) 服务器,允许 AI 助手通过自然语言与 n8n 工作流进行交互。
概览
该 MCP 服务器为 AI 助手提供了管理和执行 n8n 工作流的工具和资源。它允许助手:
- 列出、创建、更新和删除工作流
- 激活和停用工作流
- 执行工作流并监控其状态
- 访问工作流信息和执行统计
安装
前提条件
- Node.js 18 或更高版本
- 启用了 API 访问的 n8n 实例
从 npm 安装
npm install -g n8n-mcp-server
从源代码安装
# Clone the repository
git clone https://github.com/leonardsellem/n8n-mcp-server.git
cd n8n-mcp-server
# Install dependencies
npm install
# Build the project
npm run build
# Optional: Install globally
npm install -g .
配置
在你将要运行服务器的目录中创建一个 .env 文件,并使用 .env.example 作为模板:
cp .env.example .env
配置以下环境变量:
| 变量 | 描述 | 示例 |
|---|---|---|
N8N_API_URL |
包括 /api/v1 的 n8n API 的完整 URL |
http://localhost:5678/api/v1 |
N8N_API_KEY |
用于验证 n8n 的 API 密钥 | n8n_api_... |
N8N_WEBHOOK_USERNAME |
Webhook 身份验证的用户名(如果使用 webhooks) | username |
N8N_WEBHOOK_PASSWORD |
Webhook 身份验证的密码 | password |
DEBUG |
启用调试日志(可选) | true 或 false |
生成 n8n API 密钥
- 在浏览器中打开你的 n8n 实例
- 转到设置 > API > API 密钥
- 创建具有适当权限的新 API 密钥
- 将密钥复制到你的
.env文件中
使用
运行服务器
从安装目录运行:
n8n-mcp-server
或者如果是全局安装:
n8n-mcp-server
与 AI 助手集成
构建服务器后 (npm run build),你需要配置你的 AI 助手(如带有 Claude 扩展的 VS Code 或 Claude Desktop 应用程序)来运行它。这通常涉及编辑一个 JSON 配置文件。
示例配置(例如,在 VS Code 的 settings.json 或 Claude Desktop 的 claude_desktop_config.json 中):
{
"mcpServers": {
// Give your server a unique name
"n8n-local": {
// Use 'node' to execute the built JavaScript file
"command": "node",
// Provide the *absolute path* to the built index.js file
"args": [
"/path/to/your/cloned/n8n-mcp-server/build/index.js"
// On Windows, use double backslashes:
// "C:\\path\\to\\your\\cloned\\n8n-mcp-server\\build\\index.js"
],
// Environment variables needed by the server
"env": {
"N8N_API_URL": "http://your-n8n-instance:5678/api/v1", // Replace with your n8n URL
"N8N_API_KEY": "YOUR_N8N_API_KEY", // Replace with your key
// Add webhook credentials only if you plan to use webhook tools
// "N8N_WEBHOOK_USERNAME": "your_webhook_user",
// "N8N_WEBHOOK_PASSWORD": "your_webhook_password"
},
// Ensure the server is enabled
"disabled": false,
// Default autoApprove settings
"autoApprove": []
}
// ... other servers might be configured here
}
}
关键点:
- 将
/path/to/your/cloned/n8n-mcp-server/替换为你实际克隆并构建存储库的绝对路径。 - 根据你的操作系统使用正确的路径分隔符(macOS/Linux 使用正斜杠
/,Windows 使用双反斜杠\\)。 - 确保提供正确的
N8N_API_URL(包括/api/v1)和N8N_API_KEY。 - 在助手能够运行
build/index.js文件之前,需要先构建服务器 (npm run build)。
可用工具
服务器提供了以下工具:
使用 Webhooks
此 MCP 服务器支持通过 n8n webhooks 执行工作流。要使用此功能:
- 在 n8n 中创建一个由 webhook 触发的工作流。
- 在你的 webhook 节点上设置基本身份验证。
- 使用
run_webhook工具触发工作流,只需传递工作流名称即可。
示例:
const result = await useRunWebhook({
workflowName: "hello-world", // Will call <n8n-url>/webhook/hello-world
data: {
prompt: "Hello from AI assistant!"
}
});
Webhook 身份验证会自动处理,使用 N8N_WEBHOOK_USERNAME 和 N8N_WEBHOOK_PASSWORD 环境变量。
工作流管理
workflow_list: 列出所有工作流workflow_get: 获取特定工作流的详细信息workflow_create: 创建新工作流workflow_update: 更新现有工作流workflow_delete: 删除工作流workflow_activate: 激活工作流workflow_deactivate: 停用工作流
执行管理
execution_run: 通过 API 执行工作流run_webhook: 通过 webhook 执行工作流execution_get: 获取特定执行的详细信息execution_list: 列出某个工作流的执行记录execution_stop: 停止正在运行的执行
资源
服务器提供以下资源:
n8n://workflows/list: 所有工作流的列表n8n://workflow/{id}: 特定工作流的详细信息n8n://executions/{workflowId}: 某个工作流的执行记录列表n8n://execution/{id}: 特定执行的详细信息
开发
构建
npm run build
以开发模式运行
npm run dev
测试
npm test
代码检查
npm run lint
许可证
MIT