新書推薦:

《
布鲁克林有棵树(纽约公共图书馆20世纪重要的著作之一)
》
售價:HK$
76.8

《
影响清帝国命运的十张面孔
》
售價:HK$
85.8

《
不缩水女士:如何面对肥胖恐惧
》
售價:HK$
71.5

《
城市轨道交通车辆构造 活页式教材
》
售價:HK$
44.0

《
好风景
》
售價:HK$
47.1

《
鱼缸实验:焦虑爱好者的生存指南
》
售價:HK$
61.6

《
我能把生活过得很好
》
售價:HK$
54.8

《
何以大明:历史的局内人与旁观者(一部充满人性温度与历史洞察的大明群像史诗;十八位人物,帝王、巨富、权宦、狂士、文人、英雄……他们是历史的书写者,也是历史的旁观者;明史学者章宪法最新力作。)
》
售價:HK$
97.9
|
內容簡介: |
本书全面介绍了MCP(模型上下文协议)及其开发与应用技术。本书首先系统地介绍了MCP与智能体的基础概念,让读者了解MCP在智能体架构中的角色,然后深入剖析了MCP的工作原理、传输模式与核心设计。本书也提供了详细的开发指南,手把手教读者使用SDK从零开始搭建MCP客户端与MCP服务端,完成基本功能的开发与调试,在高级开发技巧部分,也介绍了MCP中的高级概念及高级开发技巧。最后,本书用大量篇幅指导读者基于MCP开发智能体,包含了典型场景与主流开发框架下的多个实战案例,助力读者将理论与实践相结合,构建具备可扩展性与高性能的智能体系统。
|
關於作者: |
严灿平,先后就职于联创(后与亚信科技合并)担任软件工程师与设计师,甲骨文中国(Oracle)担任中国区企业架构部首席架构师,上海慧问信息科技有限公司担任合伙人兼技术总监。现为独立IT咨询顾问,公众号“AI大模型应用实践”主理人。拥有超过20年的企业软件从业经验,专注于企业软件架构设计、互联网时代传统行业的IT转型、人工智能与大数据技术在企业应用的创新等。
|
目錄:
|
第1章 认识AI智能体与MCP1 1.1 走进AI智能体时代1 1.1.1 智能体的起源1 1.1.2 大模型时代的智能体2 1.1.3 两种类型的智能体系统4 1.1.4 智能体的挑战与趋势6 1.2 初步认识MCP7 1.2.1 智能体时代AI应用集成的挑战7 1.2.2 MCP:一种新的AI应用集成标准9 1.2.3 基于MCP的集成架构11 1.3 从第一个MCP示例开始14 1.3.1 开发环境与设置14 1.3.2 第一个MCP示例17 第2章 揭秘MCP规范与原理22 2.1 总体架构23 2.2 消息规范:互操作的基础24 2.2.1 什么是JSON-RPC 2.024 2.2.2 理解基于JSON-RPC 2.0的远程调用26 2.3 通信机制:基于HTTP的远程通信28 2.3.1 无状态HTTP Post的不足28 2.3.2 详解MCP的SSE通信机制30 2.4 通信机制:基于stdio的本地通信38 2.4.1 stdio通信的基本原理39 2.4.2 模拟实现stdio模式的服务端39 2.5 MCP架构下的会话生命周期41 2.5.1 连接与初始化41 2.5.2 交互与调用43 2.5.3 连接关闭44 2.6 服务端功能44 2.6.1 工具(Tools):可执行的复杂逻辑45 2.6.2 资源(Resources):动态的上下文信息51 2.6.3 提示(Prompts):预置的模板57 2.7 MCP客户端功能62 2.7.1 Roots:控制服务端的访问范围62 2.7.2 Sampling:控制LLM的安全使用65 2.8 MCP规范总结客户端69 第3章 基于SDK开发服务端71 3.1 认识MCP SDK71 3.1.1 关于MCP SDK及准备71 3.1.2 了解MCP SDK的层次结构72 3.2 使用FastMCP开发服务端74 3.2.1 创建FastMCP Server实例74 3.2.2 开发工具(Tools)功能75 3.2.3 开发资源(Resources)功能80 3.2.4 开发提示(Prompts)功能82 3.2.5 启动服务端85 3.3 服务端的调试、跟踪与部署89 3.3.1 调试与跟踪服务端89 3.3.2 部署MCP远程服务端99 第4章 基于SDK开发客户端106 4.1 用Python库模拟客户端106 4.1.1 模拟远程模式(HTTP)客户端107 4.1.2 模拟本地模式(stdio)客户端116 4.2 基于SDK开发客户端120 4.2.1 实战准备 - 通用的MCP测试客户端120 4.2.2 远程连接与初始化121 4.2.3 本地连接与初始化123 4.2.4 工具的发现与调用124 4.2.5 资源的发现与调用127 4.2.6 提示(Prompts)的发现与调用130 4.2.7 优化 - 缓存服务端功能列表132 4.3 MCP SDK开发小结135 第5章 MCP高级开发技巧136 5.1 基于低层SDK开发服务端136 5.1.1 创建低层Server实例137 5.1.2 开发与注册服务端功能137 5.1.3 启动低层Server实例141 5.2 使用生命周期管理器lifespan145 5.2.1 预备知识:上下文管理器145 5.2.2 生命周期管理器147 5.2.3 在Server实例中使用lifespan148 5.2.4 在Starlette实例中使用lifespan(SSE模式)153 5.3 实现应用层的ping机制155 5.3.1 预备知识:服务端的ServerSession155 5.3.2 ping请求的消息格式157 5.3.3 实现ServerSession的ping任务157 5.3.4 验证ping机制162 5.4. 服务端通知(Notification)的应用164 5.4.1 认识通知164 5.4.2 常见的通知类型165 5.4.3 实现列表变更通知166 5.4.4 实现服务端任务的“进度条”175 5.5 实现服务端的工具调用缓存181 5.5.1 实现服务端的工具缓存类182 5.5.2 用装饰器给工具增加缓存186 5.5.3 测试服务端工具缓存189 5.6 切换WebSocket的传输层191 5.6.1 服务端WebSocket传输的实现191 5.6.2 客户端WebSocket连接的实现193 5.6.3 测试WebSocket传输模式194 5.7 客户端功能(Sampling等)的应用195 5.7.1 实现客户端Roots与Sampling功能196 1.Roots回调函数196 5.7.2 服务端调用客户端Sampling功能199 5.7.3 测试客户端Sampling的调用201 5.8 服务端的安全机制203 5.8.1 基于安全Token的认证204 5.8.2 基于OAuth的安全授权205 第6章 基于MCP开发智能体系统206 6.1 发现与配置社区MCP服务206 6.1.1 发现社区共享的MCP服务207 6.1.2 如何获取、安装与运行208 6.1.3 在客户端配置与使用210 6.2 集成大模型与MCP服务213 6.2.1 准备:多MCP服务端连接管理组件214 6.2.2 集成函数调用(Function Calling)与MCP服务219 6.3 集成智能体开发框架与MCP服务226 6.3.1 集成LangGraph与MCP服务227 6.3.2 其他主流的智能体框架与MCP集成233 6.4 实战:基于MCP架构的多文档Agentic RAG系统239 6.4.1 整体架构设计239 6.4.2 实现服务端241 6.4.3 实现客户端的智能体248 6.4.4 效果测试253 6.4.5 后续优化空间258 6.5 实战:基于MCP架构的多智能体系统259 6.5.1 整体架构设计260 6.5.2 MCP服务端准备261 6.5.3 智能体准备264 6.5.4 构建多智能体工作流268 6.5.5 客户端(支持API模式)274 6.5.6 效果测试276 6.5.7 后续优化空间280 第7章 解读新版MCP规范与未来展望282 7.1 新的Streamable HTTP远程传输模式282 7.2 引入基于OAuth 2.1的授权框架286 7.3 支持JSON-RPC批处理290 7.4 增加工具注解信息292 7.5 增强其他方面的功能295 7.5.1 在进度通知中增加message描述字段295 7.5.2 新增音频数据类型支持296 7.5.3 新增自动补全能力标识297 7.6 对MCP的未来展望298
|
|