mcpField
M
MCP Server + n8n

MCP Server + n8n

本地服务
github.com/cursesai开发工具077 周前更新

关于 MCP Server + n8n

MCP Server + n8n 将 n8n 与一个小型 Python MCP 服务组合,用于教学和实验。项目通过 Docker 运行,用户可在 n8n 中将 AI Agent 连接到 ping、echo 等工具。

主要功能

  1. 01通过 Docker Compose 部署 n8n 和 MCP
  2. 02使用 n8n 可视化配置工作流
  3. 03Python 服务提供 ping 和 echo 工具
  4. 04持久化保存 n8n 与服务端目录
  5. 05可修改 MCP 服务代码

适用场景

  1. 01在 n8n 工作流中试验 MCP 工具
  2. 02测试 AI Agent 与服务的连接
  3. 03修改 Python 服务以添加功能

MCP 相关

Python MCP 服务通过 SSE 端点提供 ping 和 echo 工具。n8n 通过 MCP Client Tool 节点连接该服务。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

MCP 服务 + n8n

MIT 许可证 n8n  MCP 服务  Docker  Python

目录

关于项目

此应用将自动化工具 n8n 与 MCP 服务协议相结合,打造一个实验环境。该解决方案使用 Docker 简化安装和配置,让你可以通过 n8n 的可视化界面轻松测试 MCP 服务的功能。

主要组件:

  • n8n:具有可视化界面的自动化平台
  • MCP 服务:为 AI Agent 提供工具的服务

此项目用于教育和实验目的。

前提条件

要使用此应用,你需要安装:

  • Docker 和 Docker Compose
    • Windows:Docker Desktop 和 Git
    • Linux:doker.io、docker-compose 和 docker-buildx

安装

在 Windows 上
  1. 下载并解压此仓库的 ZIP 文件,或使用 Git 克隆:
    git clone https://github.com/curseai/mcp-server-n8n.git
    
  2. 打开命令提示符或 PowerShell,并切换到项目文件夹:
    cd mcp-server-n8n
    
  3. 启动 Docker 容器:
    docker-compose up -d
    
  4. 若要停止 Docker 容器:
    docker-compose down
    

注意 - 如果在 Windows 上安装 Docker Desktop 时遇到困难,请使用带有 Linux 发行版的 WSL。

在 Linux 上
  1. 下载或克隆仓库:
    git clone https://github.com/curseai/mcp-server-n8n.git
    
  2. 切换到项目文件夹:
    cd mcp-server-n8n
    
  3. 启动 Docker 容器
    docker-compose up -d
    
  4. 若要停止 Docker 容器:
    docker-compose down
    

注意: 关闭应用后,容器会被移除。不过,数据会保留在持久化目录中:mcp_server,其中包含用于运行 MCP 服务的 Python 文件;以及目录 n8n_data,其中包含 n8n 应用的数据。因此,如果你想再次启动应用,容器将使用上次运行时存储的数据重新创建。

安装完成后,你会看到一条提示容器已启动的消息。 应用可通过以下地址访问:http://localhost:5678

n8n 配置

首次访问 n8n
  1. 打开浏览器并访问 http://localhost:5678

  2. 你会看到 n8n 的欢迎页面,其中包含账户创建表单。

  3. 填写注册表单:

    • Email:输入你的邮箱
    • Name:你的姓名
    • Password:设置一个安全的密码
    • Confirm password:再次输入密码
  4. 点击“Next”创建账户。

img-01
  1. 下一个表单只是一个调查问卷,点击“Get Started”即可跳过
img-02
  1. 下一个页面会提供获取许可证密钥的选项。如果不想获取,只需点击“skip”
img-03
  1. 注册后,你会被重定向到 n8n 首页

创建包含 AI Agent 的工作流

创建新工作流
  1. 在 n8n 首页,点击右上角的“Create Workflow”按钮
  2. 你会进入工作流编辑器,在这里可以看到一个带网格的空白画布
img-04
  1. 点击左上角的“My workflow”为工作流命名,例如“Teste MCP Server”。
添加 AI Agent
  1. 点击“Add first step”开始构建工作流。
  2. 在左侧面板中,你会看到搜索栏“Search nodes...”
img-05
  1. 在搜索栏中输入“AI Agent”
  2. 在搜索结果中找到“AI Agent”节点
  3. 点击并将“AI Agent”节点拖到画布中央
  4. 随后会显示“AI Agent”的配置面板。为了测试 MCP Server,可以保持参数不变。接着,点击屏幕左上角的“<- Back to canvas”即可关闭此面板。
img-06 ### 配置 LLM 模型(聊天模型)
  1. 要在 AI Agent 中添加 LLM 模型,请点击“+ Chat Model”
  2. 在侧边栏中选择模型。在搜索栏“Search nodes...”中搜索你的 LLM 模型
  3. 选择要使用的 LLM 模型(例如:“OpenAI”或“Anthropic”)
img-07
  1. 选择模型后,你会看到“Credential to connect with”字段,其中显示“Select Credential”
img-08
  1. 点击“Select Credential”,然后点击“Create new credential”以打开凭据配置窗口
  2. 在凭据窗口中,你会看到:
    • API Key:用于输入 API 密钥的字段
img-09

注意:获取 API Key 的方法:

  1. 在相应字段中输入 API Key

  2. 点击“Save”以保存凭据

  3. 返回 AI Agent 配置后,你会看到用于调整模型参数的其他字段:

    • Model:选择具体的模型(例如“gpt-4o-mini”或“claude-3.7-Sonnet”)
  4. 根据你的偏好配置这些参数

  5. 点击屏幕左上角的“<- Back to canvas”以返回工作流

配置记忆
  1. 要在 AI Agent 中添加记忆,请点击“+ Memory”
  2. 在侧边栏中点击“Simple Memory”节点
img-10
  1. 在“Context Window Length”字段中,设置上下文窗口长度(建议:20)
img-11
  1. 点击屏幕左上角的“<- Back to canvas”以返回工作流
配置 MCP 客户端
  1. 要在 AI Agent 中添加 MCP 客户端,请点击“+ Tools”
img-12
  1. 在侧边栏的“Search nodes...”搜索栏中搜索“MCP Client Tool”,并从可用工具列表中选择它
  2. 使用以下参数配置 MCP 客户端:
    • SSE Endpoint:准确输入 http://mcp_server:8000/sse
    • Authentication:由于我们处于本地隔离环境中,可以将“Authentication”字段保留为“None”。

    注意 此应用仅用于实验和学习。用于生产环境时,你必须使用某种身份验证方法。

img-13
  • Tools:点击该字段并选择“All”,以使用所有可用工具

提示:如果想检查与 MCP 服务的连接,可以选择“Selected”而非“All”。这会显示可用工具列表。如果列表出现,则表示连接正常。

img-14
  1. 配置完所有参数后,点击屏幕左上角的“<- Back to canvas”以返回工作流
  2. 返回工作流后,点击右上角的“Save”以保存对工作流所做的配置。

测试工具

配置 AI Agent 后,你可以测试 MCP 服务中的工具:

  1. 在 AI Agent 的配置面板中,滚动到页面底部
  2. 点击配置面板底部的“Open Chat”按钮
图片-15
  1. 系统会打开一个类似 AI 聊天窗口的聊天窗口
  2. 在聊天窗口底部的文本框中,尝试以下命令:
    • 输入 ping 并按 Enter 键——Agent 应该回复“pong”
    • 输入 acho eu 并按 Enter 键——Agent 应该回复“acho eu I love you!”
图片-16

这些命令会调用 MCP 服务提供的工具,证明 n8n 与 MCP 服务之间的连接正常工作。

目录结构和持久化

首次运行应用时,项目文件夹中会创建两个重要目录:

n8n_data 目录

此目录存储 n8n 的所有数据,包括:

  • 创建的工作流
  • 配置的凭据
  • 应用设置

n8n_data 目录对于保留设置和工作流至关重要,即使重启容器后也不会丢失。

mcp_server 目录

此目录包含 MCP 服务的文件,包括:

  • Python 虚拟环境(.venv 文件夹)
  • 包含 MCP 服务代码的 server.py 文件

要访问 server.py 文件,请前往项目文件夹并打开 mcp_server 目录。该文件位于此目录的根目录下:

在 Windows 上:

explorer mcp_server

在 Linux 上:

ls -la mcp_server

此文件包含定义 MCP 服务所提供工具的 Python 代码(目前为 ping 和 echo)。

修改 MCP 服务

你可以修改 server.py 文件,以测试并实现 MCP 服务的新功能。

编辑 server.py 文件
  1. 前往项目文件夹中的 mcp_server 目录
  2. 使用任意文本编辑器(如 Notepad、VSCode 等)打开 server.py 文件
  3. 该文件包含定义 MCP 服务的 Python 代码。下面的代码展示了其中供 n8n 使用的工具定义。
    from mcp.server.fastmcp import FastMCP
     
    mcp = FastMCP('ping_server')
    
    @mcp.tool(name='ping')
    def ping() -> str:
        """
        A simple ping tool that returns a message.
        """
        return 'pong'
    
    @mcp.tool(name='echo')
    def echo(message: str) -> str:
        """
        An echo tool that returns the message sent to it.
        """
        return f"{message} I love you!"
    
    if __name__ == '__main__':
        mcp.run(transport='sse')
    

除了 tools,还可以添加 resources 和 prompt。更多信息请参阅 MCP 服务官方文档

应用更改

修改 server.py 文件后,你需要重启容器,以便 n8n 中的 MCP 客户端识别这些更改:

  1. 打开终端或命令提示符

  2. 前往项目文件夹

  3. 执行命令:

    docker-compose restart
    
  4. 等待两个容器都重启

  5. 返回 n8n 并测试新工具

安全注意事项

此应用是为实验和学习而开发的,因此:

  • MCP 服务未实现身份验证机制
  • 建议仅在隔离的测试环境中使用
  • 未采取适当的安全措施前,请勿在生产环境中使用

文档

有关模型上下文协议的更多信息:

参考资料

许可证

本项目采用 MIT 许可证授权——详情请参阅 LICENSE 文件。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。