Agent 与工具调用7920 字

Day1: MCP核心架构与快速实战

·全库 188 / 611

《Day1: MCP核心架构与快速实战》共 0.8 万字,通篇围绕 MCP、工具调用、上下文、架构 展开,归在「Agent 与工具调用」这一层。

覆盖MCP工具调用上下文架构数据库Agent

适合要让 AI 真的去干活、不只是陪人聊天的人

目录骨架(8 节)
  1. 示例代码
  2. 课程大纲
  3. MCP模型上下文协议基础概念
  4. MCP传输模式与核心架构深度剖析
  5. 基于MCP SDK快速上手MCP服务开发
  6. 基于STDIO传输协议开发MCP应用
  7. 基于SSE传输协议开发MCP应用
  8. FastMCP开发框架介绍与快速入门
目录 · 3 节

示例代码

📎 附件:mcp-quick.zip(zip, 57KB)

原文链接:https://www.yuque.com/attachments/yuque/0/2025/zip/2424104/1756654389728-f3d12ed6-1a91-4ffd-9137-b5f702ea6fc6.zip

课程大纲

  1. MCP模型上下文协议基础概念
  2. MCP传输模式与核心架构深度剖析
  3. 基于MCP SDK快速上手MCP服务开发
  4. 基于STDIO传输协议开发MCP应用
  5. 基于SSE传输协议开发MCP应用
  6. FastMCP开发框架介绍与快速入门
  7. 基于FastMCP开发智能问答应用
  8. AI时代如何快速抓住时代红利实现逆袭

MCP模型上下文协议基础概念

MCP(Model Context Protocol 模型上下文协议) 2024 年 11 月底,由 Anthropic 推出的一种开放标准,旨在统一大型语言模型(LLM)与外部数据源和工具之间的通信协议。MCP 的主要目的在于解决当前 AI 模型因数据孤岛限制而无法充分发挥潜力的难题,MCP 使得 AI 应用能够安全地访问和操作本地及远程数据,为 AI 应用提供了连接万物的接口。

Function Calling 是 AI 模型调用函数的机制,MCP 是一个标准协议,使 AI 模型与 API 无缝交互,而 AI Agent 是一个自主运行的智能系统,利用 Function Calling 和 MCP 来分析和执行任务,实现特定目标。

MCP 官方简介:https://www.anthropic.com/news/model-context-protocol

MCP 文档手册:https://modelcontextprotocol.io/introduction

MCP 中文文档:https://mcp-docs.cn/introduction

MCP 客户端:https://modelcontextprotocol.io/clients

MCP 官方服务器列表:https://github.com/modelcontextprotocol/servers

PythonSDK 的 github 地址:https://github.com/modelcontextprotocol/python-sdk

​

为什么出现 MCP

若开发一个不论是 ChatBot 还是复杂的 Agent 的 AI 应用,都不会再局限于简单的聊天对话,而是需要与外部世界连接,以访问数据源或使用工具。如访问本地文件、访问数据库结构、调用第三方 API 服务等,那么就需要连接不同的对象,使用不同的接口协议,需要熟悉 SQL、第三方开放 API 接口调用等,这都需要做大量的适配工作。

MCP(Model Context Protocol 模型上下文协议),Anthropic 开源,就是用来帮助简化 LLM 应用与这些外部资源间的集成。它允许 LLM 应用使用统一的协议来连接到这些外部资源,而不必逐个适配。

MCP 的做法是增加了一个中间层:LLM 应用通过统一的 MCP 协议连接中间层(称为 MCP Server),而这个中间层会处理与外部资源的对接。

MCP 有哪些好处

  • LLM 应用的简化:不用适配各种私有协议,只需要知道怎么连接 MCP server
  • LLM 应用的快速扩展:随时 “插拔” 新的 MCP Server 即可,一个不够就再来一个
  • 快速适应变化:若一个外部资源的接口发生变化,只需要对它的 MCP Server 做修改,所有的 LLM 应用就可以无缝适应
  • 新的 AI 能力共享生态:通过 MCP Server 的共享,新的 LLM 应用可以快速获得各种工具,形成了一种新的合作体系,提高整体效用

基于 MCP 的集成架构

  1. MCP 主机(MCP Hosts):发起请求的 LLM 应用程序(例如 Claude Desktop、IDE 或 AI 工具)。
  2. MCP 客户端(MCP Clients):在主机程序内部,与 MCP server 保持 1:1 的连接,MCP Client 是由 LLM 应用程序使用 MCP SDK 创建并维护的一个 Server 会话,就像在程序中维护一个数据库的 Connection 一样,借助 MCP SDK 可以与 MCP Server 通信,如查看 Server 的 Tools。在本地模式下,Client 与 Server 是一对一的关系。如果需要连接多个 MCP Server,需要自行维护多个 Session。
  3. MCP 服务器(MCP Servers):为 MCP client 提供上下文、工具和 prompt 信息。
  4. 本地资源(Local Resources):本地计算机中可供 MCP server 安全访问的资源(例如文件、数据库)。
  5. 远程资源(Remote Resources):MCP server 可以连接到的远程资源(例如通过 API)。

资料里没有你的场景?

把你手上的数据和想解决的那个环节发上来,我们按具体情况回,不复述方法论。

发布需求