尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
Dify MCP 集成实验(01):环境地基与首个 MCP Server——MCP 新版 SDK 如何从零跑通?
Dify MCP 集成实验01环境地基与首个 MCP Server——MCP 新版 SDK 如何从零跑通Dify 实验系列 · MCP 集成 01/6 | 实验编号DIFY-107-01基于 Dify 1.16.1 实测2026-081. 业务场景先讲一个我们实际遇到的场景。一家做客服工单 SaaS 的公司交付一个「企业级 AI 智能体系统集成」项目外部系统数据要通过 MCP 进 Dify。交付工程师开工后的第一件事不是写业务逻辑而是把开发环境搭起来、跑通第一个 server——就像盖楼先打地基。第一个工具选什么一个「当前时间」工具记录工单创建时间戳、排障时取基准时间、看板定时任务的调度基准。它无外部依赖、参数少、结果确定是最简单的真实工具适合当第一个 server 练手。我们第一次接这类需求时第一反应是「装个 SDK 写个 server 能有多难」。真正动手才发现——第一个坑不在业务在地基SDK 2.0 把旧 API 整个换掉、Python 3.14 装不上 wheel、Dify 只消费远程 HTTP 端点根本不走 stdio——环境没搭对后面 02-06 的实验全部白搭。这个实验就是先把地基打牢。这不是个例。任何「外部系统数据要进 Dify」的集成都是这个模式Dify 只消费远程 HTTP/SSE 端点源码确认无 stdio——server 必须能部署成可访问的 HTTP 端点后续 02-06 实验的「Dify 连接」假设才成立。2. 场景痛点这个流程的痛点在起步阶段体现得最直接SDK 版本坑mcp 2.0.0 是 2026 新版API 大改——mcp.server.fastmcp模块不存在旧教程里的 FastMCP 写法全部过时照网上教程装直接报错。Python 版本不兼容3.14 装 mcp 有 wheel 兼容风险——环境没搭对后面所有实验全白搭。部署形态不清不知道 Dify 只消费远程 HTTP 端点在 stdio 模式下折腾半天永远接不进 Dify。端点路径不明streamable-http 默认端点/mcp配置错路径全链路 404——跑通了也连不上。本质上环境地基决定了后面 02-06 全部实验能不能跑——地基没打牢上层全悬空。3. 方案为什么是 MCP 官方 SDK Streamable HTTP打通 MCP Server 开发环境地基最直接的路就是官方 SDK 2.0 Streamable HTTP 部署。选它的理由官方 SDK 2.0 一套代码三传输MCPServer类 server.tool()装饰器 run(transport...)——stdio开发验证/ streamable-http部署形态/ sse 一条代码切换Streamable HTTP 是 Dify 接入形态Dify 只消费远程 HTTP/SSE 端点server 必须部署成可访问的 HTTP 端点——本实验就是把这个形态跑通与 106-01 插件同一业务需求time_tool 插件的需求用 MCP 再实现一遍天然构成「插件 vs MCP 同需求双实现」的对照起点。这篇文章我们就用它搭第一个 MCP Server——「当前时间」工具走完 SDK 安装 → server 结构 → 工具定义 → stdio 本地验证 → Streamable HTTP 部署的全生命周期。4. 整体架构HTTP本地开发机Python 3.11 venv mcp 2.0.0uv 管理dify107_01_time_serverstdio 模式本地客户端验证Streamable HTTP 端点uvicorn :8901/mcpDify 服务器Docker ComposeapiFastAPIweb控制台工具页 MCP tab107-03 实测经 SSRF 代理接入链路很清晰本地开发机Python venv server→ Streamable HTTP 端点 → Dify 服务器api/web。关键设计是 stdio 模式先本地验证工具逻辑再以 streamable-http 部署成 Dify 可访问的端点——先证明工具对再证明能连。5. 模块设计5.1 环境三件套本实验核心# 1. 建 venv一次Python 3.113.14 装 mcp 有 wheel 兼容风险106 教训延续cddify-107/tmpuv venv--python3.11venv311# 2. 装 SDK官方 mcp 2.0.0自动带 uvicorn/starlette/anyiouv pipinstall--pythonvenv311 mcp# 3. 启动 Streamable HTTP 部署Dify 接入形态venv311/Scripts/python server.py http# → http://0.0.0.0:8901/mcp5.2 Server 骨架与工具定义SDK 2.0 新 APIfrommcp.server.mcpserverimportMCPServer serverMCPServer(namedify107_01_time_server,version1.0.0,description客服工单 SaaS 时间基准工具,)server.tool()defget_current_time(timezone:strlocal)-dict:返回当前时间、时区与 UTC 偏移可选参数 timezone...# 三传输stdio开发验证/ streamable-http部署形态/ sseif__name____main__:server.run(transportstdioifsys.argv[1:][stdio]elsestreamable-http,host0.0.0.0,port8901)注意mcp 2.0.0是 2026 新版API 大改——mcp.server.fastmcp模块不存在旧教程里的 FastMCP 写法全部过时新 API 在mcp.server.mcpserverMCPServer 类 server.tool()装饰器 run(transport...)。6. 运行验证输入预期结果stdio 调用UTC82026-08-05 20:43:53offset8h通过stdio 调用UTC-52026-08-05 07:43:53offset-5h时差正确通过stdio 调用UTC12次日00:43:53通过HTTP 端点 tools/list返回get_current_time工具通过HTTP 调用local 默认本地时区 8h 正确通过错误路径无效参数isErrorTrue 中文错误信息透传通过7. 实战坑坑现象修复mcp 2.0.0 API 大改mcp.server.fastmcp模块不存在旧教程 FastMCP 写法全报错新 APIMCPServerserver.tool()run(transport...)实测Python 3.14 不兼容3.14 装 mcp 有 wheel 风险106 教训延续uv venv --python 3.11uv pip install mcp实测list_tools 返回结构返回的不是 list 也不是元组是ListToolsResult对象访问listing.tools分页字段驼峰nextCursor实测pydantic 字段别名协议 JSON 字段驼峰isError写res.isError报 AttributeErrorPython 属性访问用 snake_caseres.is_error实测工具错误返回server 内 raise ValueError客户端收到isErrorTrue “Error executing tool xxx: 信息”错误信息透传实测默认端点路径run(transportstreamable-http)默认端点/mcp用streamable_http_path参数可改实测Windows 路径MSYS/d/路径在 Windows 程序里报错一律D:\格式106 教训延续8. 实验文档及源码获取实验文档完整操作步骤DIFY-107-01环境地基与首个MCP Server.mdServer 源码server.py | dify107_01_time_server 目录交付验证记录环境搭建 双模式验证 对照表初稿验证记录-01-环境地基与首个MCP Server.md全部目录dify-107/experiments | dify-107/dsl | dify-107/servers | dify-107/delivery文章聚焦核心配置与采坑点实验的完整分步操作节点搭建/参数表/调试指引见实验文档原文。下一篇Dify MCP 集成实验02工具进阶与协议原语——MCP 三原语如何落地 你在这个实验的场景里踩过什么坑欢迎评论区分享你的实战经验。
RELATED

相关推荐

地产宣传片:从“产品说明书”到“生活方式提案

地产宣传片:从“产品说明书”到“生活方式提案

2026年,地产宣传片正在经历一场深刻的转向——从“卖房子”到“卖生活”。杭州开发商兴耀房产用一部17集短剧《请不要爱我,程序会出错》替代传统广告片,总投资不足20万元,却撬动了千万级的流量。上海徐汇滨江的嘉佰道徐汇项目直接…

📅 2026/11/7 2:49:00
沉浸式空间

沉浸式空间

沉浸式空间正从“可选展项”升级为“必选项”,成为提升品牌体验和观众停留时间的核心手段。它通过投影、LED或XR等技术,构建出包裹式的虚拟环境,让参观者从“旁观”变为“参与”。北京流光溢彩数字文化传媒有限公司深耕数字展示领域近二十年&…

📅 2026/10/22 10:11:45
无主体的经济行为者:当法律找不到被告-龍德明宇

无主体的经济行为者:当法律找不到被告-龍德明宇

无主体的经济行为者:当法律找不到被告 作者:龍德明宇 本文讨论的三种情况,第一种已有现实萌芽,第二种在技术逻辑上可行,第三种是存在论推演的极限。但法律的准备,必须从极限倒推。 核心论断 传统的法律和经…

📅 2026/9/17 16:09:49
MORE NEWS

更多资讯

📰

井冈山电工证报名中心内部消息:学历不高也能拿证,收入翻倍不是梦

井冈山电工证报名中心内部消息:学历不高也能拿证,收入翻倍不是梦 你是不是也担心自己学历不高,根本就报不上电工证?别急, 井冈山电工证报名中心 最近放出的 内部消息 明确指出, 学历不再是报名门槛…

📰

山东建筑特种工证查询怎么报名才能避免过期

山东建筑特种工证查询怎么报名才能避免过期 证书过期了不知道怎么复审延期,这事儿在特种作业圈里真不罕见。很多人以为拿到证就万事大吉了,结果一两年后突然发现证书已经失效,想补救却不知道从哪儿下手。特别是山东建筑特种工证查询这个流程,不少从业者因…

📰

成都建筑电工证咋考?学历不高怕报不上名?看懂含金量再决定

成都建筑电工证咋考?学历不高怕报不上名?看懂含金量再决定 你是不是也觉得,自己学历不高,考个电工证都没戏?其实不然,像你这样的情况,在成都建筑电工证考试里还真不占劣势,关键是你得搞清楚怎么报、怎么考、怎么用。今天就来聊聊成都建筑电工证咋考,…

📰

证书过期了不知道怎么复审延期?佛山高压电工证报名费值不值得考

证书过期了不知道怎么复审延期?佛山高压电工证报名费值不值得考 证书过期了不知道怎么复审延期?很多人在工作中突然发现自己的高压电工证已经失效,却不知道该如何操作,更不知道这证到底值不值得考。别急,下面我就从头到尾给你讲明白佛山高压电工证的报名…

📰

特种工信号工培训多少钱?学历不高也能报上名!

特种工信号工培训多少钱?学历不高也能报上名! 你是不是总以为学历不高就考不了特种作业证?别急,今天就带你搞懂【特种工信号工培训】到底多少钱,报名门槛是不是真那么高。别再被那些“学历不够就白搭”的话唬住,咱们一步步讲明白。…

📰

工地太忙根本没时间复习考试?电工证考试科目3技巧+上岗必备全攻略

工地太忙根本没时间复习考试?电工证考试科目3技巧+上岗必备全攻略 工地太忙根本没时间复习考试,这是很多一线电工的真实写照。特别是在工程类毕业生刚入行的阶段,手头活多、时间紧,想抽空准备电工证考试都成了奢望。但别忘了, 电工证是上岗必备…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬