AI 之mcp

AI MCP

​ 第一次用AI 是2023年3月 , 那时候居家办公, 有时候摸鱼但是又怕聊天软件忙碌状态,当时用AI写了一段鼠标随机移动的bash脚本, 惭愧。 时至今天,已经完全离不开AI了,日常也在用cursor 生成代码。 但是,总感觉差点什么,大模型本质上是文本的映射,随着参数的增多,对文字的理解上很强,但是在推理逻辑场景判断上很容易出现幻觉。 而且,怎么让AI调用自己的个性化程序,实现相关功能? MCP出现了,我相信后面应该会有类似http一样的统一的协议

MCP 是什么

先从网上粘贴一份说明

1
MCP(Model Context Protocol,模型上下文协议)是由Anthropic公司于2024年11月提出的开源协议,旨在为AI模型提供标准化接口,使其能够动态连接外部数据源、工具和服务,从而扩展实际应用能力。其核心价值在于解决AI与现实世界交互的“最后一公里”问题,将AI从“对话工具”升级为“执行工具”,并推动跨模型、跨工具的协作生态

Google、OpenAI、微软等巨头已宣布支持MCP,并推动其成为AI Agent时代的开放标准

也就是目前还不是一个标准,但是大家都支持了

MCP核心功能

  1. **标准化接口 ** 定义了AI模型与外部资源交互的统一规范,使开发者无需为每个工具或数据源单独开发接口,降低了集成复杂度
  2. 动态上下文管理 通过结构化传递上下文信息(如用户身份、任务目标、历史记录等),确保AI在复杂任务中保持连贯性,避免“失忆”或“跑题”
  3. 双向交互能力 拉取和推送消息 入参和出参

MCP 架构

主机(Host):如IDE或Claude桌面应用,负责管理用户授权和上下文聚合

客户端(Client):作为主机与服务器的桥梁,处理消息路由和协议协商

服务器(Server):提供标准化接口,连接外部资源(如数据库、API)或工具(如Figma、GitHub)

1
2
3
4
5
6
7
初始化:主机启动客户端并与服务器建立连接。

功能协商:确定服务器可提供的服务(如数据访问或工具调用)。

请求处理:AI根据用户需求生成指令,通过客户端调用服务器功能。

响应返回:服务器执行操作后,将结果反馈至AI模型,最终呈现给用户

解决问题

​ 假设一个场景 ,我需要每天写日报, 我工作习惯写代办。 日报是给领导看的, 代办是为了在追踪记录自己需要干的事情。 所有我期望自动查库根据我的代办完成情况,写日报发送。

​ 当前场景存在2个API, API 查询代办,发送邮件。 大模型只是一个文本大模型,他只是输出文本,他不知道调用API。

​ 所以 需要一个中间者 ,这个中间程序负责大模型和具体API调用, 也负责和用户之间的交互。 中间程序需要收集所有API ,并且告诉大模型所有API的使用方法,文本方式。 当用户提出问题,请帮我写日报, 中间程序就会把客户问题:请帮我写日报 以及API 的使用说明发给大模型, 大模型就会根据使用说明说我需要用到的工具是什么, 参数是什么发给中间程序,中间程序再去调用API查询代办内容,把结果上报给AI ,AI在把数据整理后 再次调用大模型发送邮件

​ 中间程序 client: 类似 dify coze

API说明的规范化

针对中间程序和AI之间的API说明书格式规范化,大模型的提供方 用JSON格式明确定义了 API的说明 以及请求和响应信息

也就是Function Calling技术

此时的问题是

  1. 配置APIscheme很麻烦

  2. API暴露出去危险

解决方法: 基于mcp SDk 去封装接口,这样就不需要配置API Scheme了

server 包含api

mcp client=> mcp server 通过mcp通信

mcp host 包含 mcp host claude桌面程序/ 插件cline

使用步骤

  1. 基于MCP SDK开发对应程序
  2. 外部工具在client 上 配置好服务地址
  3. client 自动帮我们把对应的API scheme 转化为function calling所需的格式

AI 之mcp
https://blog.dayday.cyou/2025/04/26/AI-之mcp/
作者
godbutton
发布于
2025年4月26日
许可协议