1.前言

MCP Server(模型上下文协议服务器)是一种基于模型上下文协议(Model Context Protocol,简称MCP)构建的轻量级服务程序,旨在实现大型语言模型(LLM)与外部资源之间的高效、安全连接。MCP协议由Anthropic公司于2024年11月开源,其核心目标是解决AI应用中数据分散、接口不统一等问题,为开发者提供标准化的接口,使AI模型能够灵活访问本地资源和远程服务,从而提升AI助手的响应质量和工作效率。

MCP Server 的架构与工作原理

MCP Server 采用客户端-服务器(Client-Server)架构,其中客户端(MCP Client)负责与服务器建立连接,发起请求,而服务器端则处理请求并返回响应。这种架构确保了数据交互的高效性与安全性。例如,客户端可以向服务器发送请求,如“查询数据库中的某个记录”或“调用某个API”,而服务器则根据请求类型,调用相应的资源或工具,完成任务并返回结果。

MCP Server 支持动态发现和实时更新机制。例如,当新的资源或工具被添加到服务器时,客户端可以自动感知并使用这些新功能,从而提高系统的灵活性和扩展性

MCP Server 的主要功能

  1. 资源暴露与工具提供
    MCP Server 可以将本地文件、数据库、API等资源作为数据实体暴露给AI模型,同时提供工具功能,帮助AI完成复杂任务,如数据检索、内容生成、实时更新等。例如,它支持对MySQL、PostgreSQL等数据库的查询和操作,也支持对本地文件系统的读写和目录管理。
  2. 会话管理与动态通知
    MCP Server 能够管理客户端与服务器的连接,确保会话的时效性和稳定性,同时通过实时推送机制,将最新的资源信息及时传递给AI模型,以保证数据的准确性和实时性。
  3. 安全性与隐私保护
    MCP Server 采用加密认证和访问控制机制,确保数据传输的安全性,避免敏感信息泄露。例如,它支持本地运行,避免将敏感数据上传至第三方平台,从而保护用户隐私。
  4. 标准化与模块化
    MCP Server 提供了标准化的通信协议,支持两种传输协议(STDIO和SSE),并允许开发者通过插件扩展功能,使其具备灵活性和扩展性。例如,它支持通过HTTP标准POST请求与客户端进行交互,同时支持WebSocket实现实时数据推送。
  5. 多场景应用
    MCP Server 可以应用于多种场景,包括但不限于:
    • 本地资源集成:如文件操作、数据库管理、API调用等。
    • 云服务交互:如与GitHub、Slack、Google Drive等云服务的集成。
    • AI助手扩展:如为ChatGPT等AI助手提供上下文支持和工具调用能力

目前mcp-server发展速度非常快。在短短1个多月的时间目前mcp-server已经发展超过5000个mcp-server

image-20250401224117436

上期给大家介绍过 mcp-server案例分享-即梦AI文生视频 通过fastapi_mcp 实现了一个mcp-server当时在 cherry-studio上通过SSE方式实现的。目前来说我们很多mcp-client 工具都支持 sse 和 stdio 方式

image-20250407171940088

其中stdio 更多是客户端的部署方式。 今天给大家介绍dify的 mcp 方案,所以避免不了就需要sse 的实现方案。我个人觉的为了SEE方案应该会有更多人去选择。话不多说下面给大家介绍一下如何在 dify 实现一个mcp-server

2.插件和工具介绍

为了使用dify mcp-server 我们需要将dify 升级到1.0+版本,最新的dify 版本是1.1.3 大家升级到这个版本

image-20250407172336086

MCP SSE 插件下载及安装

接下来我们需要安装一个插件叫做MCP SSE . 可以在 插件市场搜索 MCP 检索到这个插件

image-20250407172621475

我们看将这个插件打开查看详情

image-20250407172655216

我们打开这个插件后可以看到目前dify 官方版本是0.0.6 版本。这里建议大家不要在官方下载这个版本。(0.0.6 版本有BUG)

大家可以通过github 链接下载最新版本0.0.8 版本

https://github.com/junjiem/dify-plugin-tools-mcp_sse/releases/tag/0.0.8

image-20250407172838471

将下载的mcp_sse.difypkg 通过 本地插件上传方式安装

image-20250407173022431

上传完成后点击安装。如果按照中比较慢,大家可以把dify env 配置文件修改一下。详细可以参考我之前的文章

Dify 实战:纯内网1.0+版本,攻克模型工具插件离线安装难题

安装完成后我们就可以看到mcp sse这个插件了。

image-20250407173452076

Zapier MCP 配置

上面我们提到dify 安装MCP sse其实是一个MCP client 目前MCP client 也有不少,主流的是cursor 、cline 等。大家如果想知道有多少

MCP client 可以去这个网站 https://mcp.so/ 去查找。

image-20250407173808799

接下来我们需要配置一个带有sse 的mcp server

前几天我们知道Zapier 也实现了mcp server ,这下好了 通过Zapier 一个就可以实现上百个mcp server了,我们也就不需要一个一个

mcp server 配置了(一个一个配置费劲)。

什么是Zapier 简单介绍一下。

Zapier 是一种基于云的自动化工具,旨在通过连接不同的应用程序和服务来简化工作流程,提高生产力。用户无需编程知识即可创建自动化任务,这些任务被称为“Zaps”。每个 Zap 包含两个核心部分:触发器(Trigger)和动作(Action)。触发器是启动自动化流程的事件,例如在某个应用中接收到新消息;动作则是在触发器发生后执行的操作,例如将数据同步到另一个应用。

Zapier 支持超过 7000 个应用程序的集成,包括电子邮件、社交媒体、文件管理、营销和数据分析等领域的应用。用户可以通过直观的界面轻松设置自动化工作流,例如将 Google 表单中的数据自动保存到 Dropbox 或通过 Slack 发送提醒此外,Zapier 还提供高级功能,如条件逻辑、数据格式化和多步骤路径,使用户能够构建复杂的工作流。

下面我们和大家说一下Zapier的配置。

登录

首先我们需要登录https://zapier.com/app/login ,如果没有账号的小伙伴可以去注册一个。

image-20250407174346870

可以用google 、facebook、微软等账号实现授权登录,也可以用邮箱注册登录。(QQ 邮箱也是可以的)

登录后我们在zapier 管理平台 创建一个MCP Server URL

https://actions.zapier.com/settings/mcp/

image-20250407174606220

开通zapier MCP Server

zapier 会给我们生成一个带有公网地址的 MCP Server URL

https://actions.zapier.com/mcp/sk-xxxxxxxx/sse

上面的地址记得保存一下,后面会用到。

我们点击“edit mcp actions”

image-20250407174825416

开通 增加MCP actions

点击 “Add a new action” 第一次进来 是没有 MCP actions (我这里已经配置了2个)

image-20250407174930074

image-20250407175027833

在上面action 输入我们需要安装的 action 我这里就举google gmail 例子

image-20250407175117948

选择 send email

弹出授权对话框

image-20250407175201027

我们需要输入google 账号和密码 授权给zapier。说白了就是把我们账号和密码托管给zapier。这样它就能实现自动给我们发邮件了。

我们在给大家看一下Tavily 的配置

image-20250407175416612

这个配置和上面的类似,因为我也配置过了,这里就不给大家演示了。每个组件大致都是差不多的都是需要授权。

以上步骤我们就完成了zapier 的配置,当然大家也可以根据需要添加其他action

3.mcp see 配置

我们回到 dify工作流,选择mcp see工具

image-20250407180553489

点击授权按钮,这个工具组件默认给我们返回 http://127.0.0.1:8000/sse 地址

{  "server_name": {    "url": "http://127.0.0.1:8000/sse",    "headers": {}, "timeout": 60,    "sse_read_timeout": 300  }}

我们需要把之前的zapier MCP Server URL 替换

{ "zapier-mcp": { "url": "https://actions.zapier.com/mcp/sk-ak-xxxxxx/sse", "headers": {}, "timeout": 60, "sse_read_timeout": 300 } }

把上述地址复制 点击 保存完成设置

image-20250407180816355

image-20250407180840165

以上步骤我就完成了dify MCP-sse设置了。

4 .验证及测试

我们这里在dify 工作台中创建一个 ai agent

image-20250407181057490

进入 dify-mcp-sse ai agent 在左下角工具添加 MCP SSE工具

image-20250407181235642

image-20250407181307492

接下来我们设置一下模型,我们这里选择火山引擎提供的 deepseek-v3模型。 这个模型需要注意支持tools 调用的模型,有的模型是不支持的(推荐大家使用火山引擎提供的deepseek-v3模型 ,效果不错)

image-20250407181641699

image-20250407181538549

验证测试

我的问题

请告诉我2025年4月7日最新科技新闻

image-20250407181820259

我们通过上图可以看到 模型通过意图识别触发了MCP server调用,首先调用了 mcp_sse_list_tools 查看一下目前zapier MCP Server 提供了哪些工具,这里可以从Cherry Studio 提供的MCP server 配置上看到

image-20250407182113623

模型搜索到 tavily_search 可以调用,然后再调用mcp_sse_call_tools 实现搜索和调用。

接下来我们在让它把这些新闻信息邮件形式发给我QQ 邮箱

把以上的内容通过 发给75271002@qq.com 这个邮件

image-20250407182404398

同样的操作它也知道我们要发邮件需求,所以调用了之前配置好的google邮箱 给我QQ邮件发送了信息。

image-20250407182841227

通过以上方式我们就实现2个Zapier 配置的2个 MCP server实现新闻搜索和邮件发送联动功能。当然大家也可以根据自己的需求来组合其他MCP,通过这样的方式我们就可以实现打打字,动动嘴利用MCP 模型上下文的能力通过模型和工具整合实现万物互联了。

5.总结

今天主要带大家实现了在 Dify 中搭建 MCP Server 以实现万物互联的工作流,详细介绍了整个工作流的实现步骤。本次工作流涉及到 Dify 平台的升级、插件的安装与配置,以及 Zapier 自动化工具的使用等知识。虽然步骤较多,但只要按照文章的指引逐步操作,相信大家都能够掌握。感兴趣的小伙伴可以关注支持,今天的分享就到这里结束了,我们下个文章见。

Logo

欢迎加入 MCP 技术社区!与志同道合者携手前行,一同解锁 MCP 技术的无限可能!

更多推荐