关于 n8n-nodes-mcp-client
n8n-nodes-mcp-client 是 n8n 社区节点,允许在工作流中与 MCP 服务交互。支持 STDIO 和 SSE 两种传输方式,可执行工具、访问资源和提示词。
主要功能
- 01执行 MCP 工具
- 02列表和读取资源
- 03获取和列表提示词
- 04STDIO 和 SSE 传输支持
- 05环境变量和凭证管理
- 06AI Agent 工具集成
适用场景
- 01n8n 工作流中集成外部 MCP 服务
- 02在 AI Agent 中使用多个 MCP 工具
- 03自动化调用外部 API 和数据源
- 04多服务器生产环境部署
MCP 相关
n8n-nodes-mcp-client 作为 n8n 节点与 MCP 服务通信,支持多种操作如执行工具、列表资源和获取提示词,并可在 AI Agent 中作为工具使用。
详细介绍
n8n-nodes-mcp-client
这是一个 n8n 社区节点,让你在 n8n 工作流中与 Model Context Protocol (MCP) 服务交互。
MCP 是一个协议,使 AI 大模型能够以标准化方式与外部工具和数据源交互。此节点允许你连接到 MCP 服务,访问资源,执行工具,以及使用提示词。
安装
按照 n8n 社区节点文档中的安装指南进行操作。
凭证
MCP 客户端节点支持两种凭证类型来连接到 MCP 服务:
命令行传输 (STDIO)

- Command:启动 MCP 服务的命令
- Arguments:传递给服务命令的可选参数
- Environment Variables:传递给服务的变量,格式为 NAME=VALUE
服务器发送事件 (SSE) 传输

- SSE URL:SSE 端点的 URL(默认:http://localhost:3001/sse)
- Messages Post Endpoint:如果与 SSE URL 不同,发送消息的自定义端点(可选)
- Additional Headers:随请求发送的可选标头(格式:name:value,每行一个)
环境变量
MCP 客户端节点支持通过命令行传输以两种方式将环境变量传递给 MCP 服务:
1. 使用凭证 UI
你可以直接在凭证配置中添加环境变量:

此方法适用于个人设置和测试。值在 n8n 中作为凭证安全存储。
2. 使用 Docker 环境变量
对于 Docker 部署,你可以通过在环境变量前加 MCP_ 前缀,直接将环境变量传递给 MCP 服务:
version: '3'
services:
n8n:
image: n8nio/n8n
environment:
- MCP_BRAVE_API_KEY=your-api-key-here
- MCP_OPENAI_API_KEY=your-openai-key-here
- MCP_CUSTOM_SETTING=some-value
# other configuration...
这些环境变量在 MCP 服务执行时会自动传递给它们。
示例:使用 Brave Search MCP 服务
此示例展示如何设置和使用 Brave Search MCP 服务:
-
安装 Brave Search MCP 服务:
npm install -g @modelcontextprotocol/server-brave-search -
配置 MCP 客户端凭证:
- Command:
npx - Arguments:
-y @modelcontextprotocol/server-brave-search - Environment Variables:
BRAVE_API_KEY=your-api-key添加变量(空格、逗号或换行符分隔)
- Command:
-
创建使用 MCP 客户端节点的工作流:
- 添加 MCP 客户端节点
- 选择"List Tools"操作以查看可用的搜索工具
- 添加另一个 MCP 客户端节点
- 选择"Execute Tool"操作
- 选择"brave_search"工具
- 将 Parameters 设置为:
{"query": "latest AI news"}

该节点将执行搜索并在输出中返回结果。
示例:使用 AI Agent 进行多服务器设置
此示例演示了如何在生产环境中设置多个 MCP 服务并将其与 AI Agent 一起使用:
- 配置你的 docker-compose.yml 文件:
version: '3'
services:
n8n:
image: n8nio/n8n
environment:
# MCP server environment variables
- MCP_BRAVE_API_KEY=your-brave-api-key
- MCP_OPENAI_API_KEY=your-openai-key
- MCP_SERPER_API_KEY=your-serper-key
- MCP_WEATHER_API_KEY=your-weather-api-key
# Enable community nodes as tools
- N8N_COMMUNITY_PACKAGES_ALLOW_TOOL_USAGE=true
ports:
- "5678:5678"
volumes:
- ~/.n8n:/home/node/.n8n
-
在 n8n 中创建多个 MCP 客户端凭证:
Brave Search 凭证:
- Command:
npx - Arguments:
-y @modelcontextprotocol/server-brave-search
OpenAI Tools 凭证:
- Command:
npx - Arguments:
-y @modelcontextprotocol/server-openai
Web Search 凭证:
- Command:
npx - Arguments:
-y @modelcontextprotocol/server-serper
Weather API 凭证:
- Command:
npx - Arguments:
-y @modelcontextprotocol/server-weather
- Command:
-
创建一个 AI Agent 工作流:
- 添加一个 AI Agent 节点
- 启用 MCP 客户端作为工具
- 使用不同凭证配置不同的 MCP 客户端节点
- 创建一个使用多个数据源的提示词

AI Agent 提示词示例:
I need you to help me plan a trip. First, search for popular destinations in {destination_country}.
Then, check the current weather in the top 3 cities.
Finally, find some recent news about travel restrictions for these places.
通过此设置,AI Agent 可以跨不同服务器使用多个 MCP 工具,所有这些都使用 Docker 部署中配置的环境变量。
示例:使用本地 MCP 服务与 SSE
此示例演示了如何使用服务器发送事件(SSE)连接到本地运行的 MCP 服务:
-
启动支持 SSE 的本地 MCP 服务:
npx @modelcontextprotocol/server-example-sse或在 3001 端口上运行你自己的自定义 MCP 服务(具有 SSE 支持)。
-
配置 MCP 客户端凭证:
- 在节点设置中,选择连接类型:
Server-Sent Events (SSE) - 创建类型为 MCP Client (SSE) API 的新凭证
- 设置 SSE URL:
http://localhost:3001/sse - 如果服务器需要身份验证,请添加任何必需的标头
- 在节点设置中,选择连接类型:
-
创建一个使用 MCP 客户端节点的工作流:
- 添加一个 MCP 客户端节点
- 将连接类型设置为
Server-Sent Events (SSE) - 选择你的 SSE 凭证
- 选择"List Tools"操作以查看可用工具
- 执行工作流以查看结果

此方法特别适用于以下情况:
- 你的 MCP 服务作为独立服务运行
- 你正在连接到远程 MCP 服务
- 你的服务需要特殊的身份验证标头
- 你需要将传输通道与消息通道分开
操作
MCP 客户端节点支持以下操作:

- Execute Tool - 使用参数执行特定工具
- Get Prompt - 获取特定提示词模板
- List Prompts - 获取可用提示词列表
- List Resources - 获取来自 MCP 服务的可用资源列表
- List Tools - 获取可用工具列表
- Read Resource - 按 URI 读取特定资源
示例:List Tools 操作

List Tools 操作返回来自 MCP 服务的所有可用工具,包括它们的名称、描述和参数模式。
示例:Execute Tool 操作

Execute Tool 操作允许你使用参数执行特定工具。确保从下拉菜单中选择要执行的工具。
用作工具
此节点可在 n8n AI Agents 中用作工具。要启用社区节点作为工具,你需要将 N8N_COMMUNITY_PACKAGES_ALLOW_TOOL_USAGE 环境变量设置为 true。
设置环境变量
如果你使用 bash/zsh shell:
export N8N_COMMUNITY_PACKAGES_ALLOW_TOOL_USAGE=true
n8n start
如果你使用 Docker: 添加到你的 docker-compose.yml 文件:
environment:
- N8N_COMMUNITY_PACKAGES_ALLOW_TOOL_USAGE=true
如果你使用桌面应用:
在 n8n 目录中创建一个 .env 文件:
N8N_COMMUNITY_PACKAGES_ALLOW_TOOL_USAGE=true
如果你想在 Mac/Linux 上永久设置它:
添加到你的 ~/.zshrc 或 ~/.bash_profile:
export N8N_COMMUNITY_PACKAGES_ALLOW_TOOL_USAGE=true
AI Agent 工作流结果示例:

设置此环境变量并重启 n8n 后,你的 MCP 客户端节点将作为工具在 AI Agent 节点中可用。
兼容性
- 需要 n8n 版本 1.0.0 或更高版本
- 兼容 MCP Protocol 版本 1.0.0 或更高版本
- 支持 STDIO 和 SSE 传输来连接到 MCP 服务
- SSE 传输需要实现 MCP Server-Sent Events 规范的服务
资源
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。