两个互联领域的重大挑战:
第一、 Agent Tools (工具)的交互
Agent 需要调用外部工具和 API、访问数据库、执行代码等。MCP
第二、 Agent Agent (其他智能体或用户)的交互
Agent 需要理解其他 Agent 的意图、协同完成任务、与用户进行自然的对话。A2A
MCP 就是大模型连接世界的标准、桥梁!
有了 DeepSeek ,你就有了一个 " 智能助理 " 。但是,我们期望 LLM 能够承担更多功能,不
仅限于简单对话,还能与外部的多种数据、工具进行交互。有了 MCP ,成为了现实!
1. MCP能干什么? 对于程序员来说
举例 1 :开发部署
开发者通过自然语言指令“部署新版本到测试环境”,触发 MCP 链式调用 GitLab API
(代码合并)、 Jenkins API (构建镜像)、 Slack API (通知团队)。
举例 2 SQL 查询
开发者通过自然语言输入,比如“查询某集团部门上个季度销售额”,就能查询出数
据库的数据,并结合大模型进行回答,不再需要编写 SQL MCP 自动转换为精准 SQL
语句并执行。
借助 MCP ,只要支持了该协议,就能轻松将各种数据源和工具连接到 LLM
2. MCP是什么?
2.1 MCP 的理解
MCP Model Context Protocol ,模型上下文协议) , 2024 11 月底 ,由
Anthropic 推出的一种开放标准。旨在为大语言模型( LLM )提供统一的、
标准化方式与外部数据源和工具之间进行通信。
传统 AI 集成的问题: 这种为每个数据源构建独立连接的方式,可以被视为一个 M*N 问题。
问题: 架构碎片化,难以扩展,限制了 AI 获取必要上下文信息的能力
MCP 解决方案: 提供统一且可靠的方式来访问所需数据,克服了以往集成方法的局限性。
MCP 作为一种标准化协议,极大地简化了大语言模型与外部世界的交互方式,使开发者能够以统一的方式为 AI 应用添加各种能力。
官方文档: https://modelcontextprotocol.io/introduction

大模型是与mcp-client进行交互的,这个交互不属于mcp协议的内容。mcp协议规定的是mcp-client与mcp-server之间的交互,而大模型与mcp-client的交互是​编辑Function Call,Function Call规定了交互的数据形式等,而具体api调用每个语言都不同,比如Java使用spring ai,其他的还有langchain,这都不属于mcp的范畴。

没有个大模型function call的实现机制不一样;你如果要适配多个大模型,一个工具就需要写n次,mcp你就只需要写一次。

2.3 哪些平台支持 MCP 查询
github 查看:
MCP 官方资源: https://github.com/modelcontextprotocol/servers
MCP 热门资源: https://github.com/punkpeye/awesome-mcp-servers
其它平台:
Glama https://glama.ai/mcp/servers
Smithery https://smithery.ai
cursor https://cursor.directory
MCP.so https://mcp.so/zh
阿里云百炼: https://bailian.console.aliyun.com/?tab=mcp#/mcp-market
这里有两点要说的:
1 ,随着越来越多的 Server 接入 MCP 协议,未来 AI 能够直接调用的工具将呈
指数级增长 ,这能从根源上打开 Agent 能力的天花板。未来 AI 生态系统将
变得更加开放和强大。
2 ,目前社区的 MCP Server 还是比较混乱 ,有很多缺少教程和文档,很多
的代码功能也有问题,大家只能凭经验和参考官方文档了。
3. 程序员如何使用MCP
3.1 MCP 应用场景
3.2 使用前的准备工作
MCP 的通信机制
根据 MCP 的规范,当前支持两种通信机制(传输方式):
stdio( 标准输入输出 ) :主要用在本地服务上,操作你本地的软件或者本地的文
件。比如 Blender 这种就只能用 Stdio 因为他没有在线服务。 MCP 默认通信方式
SSE(Server-Sent Events) :主要用在远程通信服务上,这个服务本身就有在线
API ,比如访问你的谷歌邮件,天气情况等。
MCP 的通信机制: stdio 方式
优点
这种方式适用于客户端和服务器在同一台机器上运行的场景, 简单
stdio 模式 无需外部网络依赖 ,通信速度快,适合快速响应的本地应用。
可靠性高,且易于调试
缺点
Stdio 配置比较复杂 ,我们需要做些准备工作,你需要提前安装需要的命令行工具。
stdio 模式为单进程通信, 无法并行处理多个客户端请求 ,同时由于进程资源开销较大,不适合
在本地运行大量服务。(限制了其在更复杂分布式场景中的使用)
MCP 的通信机制: SSE 方式
场景
SSE 方式适用于客户端和服务器位于不同物理位置的场景。
适用于实时数据更新、消息推送、轻量级监控和实时日志流等场景
对于分布式或远程部署的场景,基于 HTTP SSE 的传输方式则更为合适。
优点
配置方式非常简单 ,基本上就一个链接就行,直接复制他的链接填上就行
stdio 的本地环境安装
stdio 的本地环境有两种:
一种是 Python 编写的服务,
一种用 TypeScript 编写的服务。
分别对应着 uvx npx 两种指令。
stdio 的本地环境安装: uvx
两种安装方式:
1 种:若已配置 Python 环境,可使用以下命令安装:
pip install uv
2 种:在 Windows 下可以通过 PowerShell 运行命令来安装 uv
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex”
验证:重启终端并运行以下命令检查是否正常:
uv --version
uvx --help
stdio 的本地环境安装: npx
Node.js 下载的官网: https://nodejs.org/zh-cn
配置环境变量,并测试
4. MCP的工作原理
4.1 MCP C/S 架构
5 个核心概念
MCP 遵循客户端 - 服务器架构( client-server ),其中包含以下几个核心概念:
MCP 主机 (MCP Hosts)
MCP 客户端 ( MCP Clients )
MCP 服务器 ( MCP Servers )
本地资源 ( Local Resources )
远程资源 ( Remote Resources )
4.1 MCP C/S 架构
MCP Host
作为运行 MCP 的主应用程序, 例如 Claude Desktop Cursor Cline AI 工具。
为用户提供与 LLM 交互的接口,同时集成 MCP Client 以连接 MCP Server
MCP Client
MCP client 充当 LLM MCP server 之间的桥梁,嵌入在主机程序中,主要负责:
接收来自 LLM 的请求;
将请求转发到相应的 MCP server
MCP server 的结果返回给 LLM
MCP Client
有哪些常用的 Clients
MCP 官网 ( https://modelcontextprotocol.io/clients ) 列出来一些支持 MCP Clients
分为两类:
AI 编程 IDE Cursor Cline Continue Sourcegraph Windsurf
聊天客户端: Cherry Studio Claude Librechat Chatwise
更多的 Client 参考这里:
MCP Clients https://www.pulsemcp.com/clients
Awesome MCP Clients https://github.com/punkpeye/awesome-mcp-clients/
MCP Server
每个 MCP 服务器都提供了一组特定的工具,负责从本地数据或远程服务中检索信息。
MCP 架构中的关键组件。
比如你让助手:
帮我查航班信息” 它调用 航班查询 API
算一下 37% 折扣后多少钱” 它运行 计算器函数
作用:让 LLM 不仅能“说”,还能“做”(执行代码、查询数据等)。
MCP Server 的本质
本质是运行在电脑上的一个 nodejs python 程序。可以理解为客户端用命令行调用了
电脑上的 nodejs python 程序。
使用 TypeScript 编写的 MCP server 可以通过 npx 命令 来运行
使用 Python 编写的 MCP server 可以通过 uvx 命令 来运行。
4.1 MCP C/S 架构
4.2 MCP 工作流程
API 主要有两个
tools/list 列出 Server 支持的所有工具
tools/call Client 请求 Server 去执行某个工具, 并将结果返回
举例:
数据流向图:
4.3 回顾: Cursor 中使用 MCP
MCP 的概念中, Cursor 属于一个 MCP 的宿主应用( Host-app ),而 Cursor 之所以
能使用 MCP 服务,是因为它内置安装了 MCP Client
我们目前在配置 Cursor 中的 MCP 时, 本质是在配置 MCP Server ,这些 Server 是由
不同的开发者提供的,他们基于标准化的 MCP 协议,做了个小的服务,这些服
务可能在本地也可能在云端,而我们实际上也完全可以按自己的需要去制作
MCP Server
5. 手动开发MCP项目(C/S)
案例需求
本项目旨在构建一个 本地智能舆情分析系统 ,通过自然语言处理与多工具协作,
实现用户查询意图的自动理解、新闻检索、情绪分析、结构化输出与邮件推送。
具体参考《手动开发 MCP 项目 (CS 架构) .md
6. 大众用户如何使用MCP
6.1 Cherry Studio MCP 说明
Cherry Studio 是一款集多模型对话、知识库管理、 AI 绘画、翻译等功能于一体的
全能 AI 助手平台。支持 Windows Linux Mac
同时, CherryStudio 提供了一个简洁便于操作的可视化页面,通过简单的配置即可
开启 MCP 服务。非常适合大众用户用于构建“低代码智能流程”。
Cherry Studio 的下载地址: https://cherry-ai.com/
6.2 使用案例
具体详情,见《 Cherry Studio 中使用 MCP 案例 .md
6.3 准备工作:安装 uv bun
Cherry Studio 目前只使用内置的 uv( https://github.com/oven-sh/bun/releases )
bun( https://github.com/astral-sh/uv/releases ) 不会复用 系统中已经安装的 uv bun
7. 热门MCP Servers推荐
推荐 1 :文件系统 filesystem
Filesystem MCP 旨在为大型语言模型 (LLM) AI 助手提供对本地文件系统的安全、受控访问。
主要功能:
- 文件读写: 允许读取和写入文件内容,支持创建新文件或覆盖现有文件。
- 目录管理: 支持创建、列出和删除目录,以及移动文件或目录。
- 文件搜索: 能够在指定路径中搜索匹配特定模式的文件或目录。
- 元数据获取: 提供获取文件或目录的详细元数据,包括大小、创建时间、修改时间、访问时间、
类 型和权限等信息。
推荐 2 :数据库 mysqldb-mcp-server
一种模型上下文协议 ( MCP ) 实现,支持与 MySQL 数据库进行安全交互。此服务
器组件可促进 AI 应用程序(主机 / 客户端)与 MySQL 数据库之间的通信 ,提供安
全的 MySQL 数据库操作,通过受控接口使数据库探索和分析更安全、更有条理。
推荐 3 :高德地图 amap-maps
高德地图是一个支持任何 MCP 协议客户端的服务器,允许用户轻松地利用高德地图 MCP 服务
进行各种基于位置的服务
高德地图的主要特点
支持多种位置服务,包括 地理编码、天气和距离测量
提供步行、驾车、公交等多种交通方式的 API
允许根据关键字或位置详细 搜索兴趣点 POI
推荐 4 :网页数据采集 Firecrawl
Firecrawl MCP 工具是一款基于模型上下文协议( MCP )的企业级 网页数据采集 服务器。能够为
大型语言模型( LLM )提供强大的网页抓取能力。
主要功能:
JavaScript 渲染:能够处理动态网页内容,突破传统抓取工具的局限,获取更全面的数据。
批量处理:支持并行处理和队列管理,提高数据抓取效率。
智能限速:根据网络状况和任务需求智能调整抓取速度,避免对目标网站造成过大压力。
多种输出格式:支持将抓取的内容转换为 Markdown HTML 等格式,满足不同场景的需求。
说明:去 firecrawl 官网注册后即可查看自己的 api_key
推荐 5 Github
GitHub MCP 服务器是一个模型上下文协议 ( MCP ) 提供与 GitHub API 无缝集成的服务器,从
而实现面向开发人员的高级自动化工具和交互功能。
使用案例:
自动化 GitHub 工作流程和流程。
GitHub 存储库中提取和分析数据。
构建与 GitHub 生态系统交互的 AI 驱动的工具和应用程序。
说明:去 https://github.com/settings/tokens 申请自己的 token
推荐 6 Git
用于 Git 存储库交互和自动化的模型上下文协议服务器。
直接的 Git 仓库操作,包括读取、搜索和分析本地仓库
推荐 7 :记忆图谱 memory
基于知识图谱的 长期记忆系统 用于维护上下文
使用本地知识图谱的 持久内存的基本实现 。这使 Claude 可以在聊天中记住有关
用户的信息。
推荐 8 :控制台 desktop-commander
在计算机上无缝执行终端命令和管理流程。使用强大的命令执行和文件作工具简化您的开
发任务。
推荐 9 :社交软件 Slack
用于 Slack API MCP 服务器,使 LLM 能够与 Slack 工作区进行交互,用于频道
管理和消息传递。
说明:去 https://app.slack.com/intl/zh-cn 注册并获取自己的team id
8. A2A协议:开启Agent间自然协作
8.1 A2A 的发布
谷歌, 25 4 10 日发布 开源的 、应用层协议 A2A Agent-to-Agent 协议),即
Agent-to-Agent 。其设计目的是使智能体( Agent )间能够以一种自然的模态进行协
作,类似于人与人之间的互动。
Github 地址: https://github.com/google/A2A
8.2 A2A 的设计意义
基于不同底层框架和供应商平台创建的 AI Agent 之间可以实现通信、发现彼此的能力、协商任务并开展合作,企业可以通过专业的智能体团队处理复杂的工作流程。这无疑是其最为突出的贡献。
8.3 举例
举例 1 :阿里云 & 火山云
阿里云 上创建的 AI Agent ,通过 A2A 协议,可以与 火山云 上创建的 AI
Agent 进行无缝的通信与协作。
举例 2 :修理汽车
用户 (或代表用户的智能体)对 修理店智能体 说:“给我看看左前轮的照片,似
乎漏液了,这种情况多久了?”
A2A 协议使得人与智能体之间这种更自然、多轮次的对话式互动成为可能。
修理店智能体 在诊断出问题后,可能需要向 零件供应商智能体 查询某个零件的库
存和价格。
这种智能体与智能体之间的协作同样需要 A2A 协议来支持。
举例 3 :人才招聘
利用 A2A 协议,招聘流程可以如此高效:
在谷歌的 Agentspace 统一界面中, 招聘经理 可以向 自己的智能体 下达任务,
让其寻找与职位描述、工作地点和技能要求相匹配的候选人。
然后,该智能体立即 与其他专业智能体 展开互动,寻找潜在候选人。
用户会收到推荐人选,之后可以指示 自己的智能体 安排进一步的面试,面试
环节结束后,还可以 启动另一个智能体 来协助进行背景调查。
8.4 A2A 展望
谷歌已经与超过 50 家技术合作伙伴(例如 Atlassian Box Salesforce SAP 等)和服务提供商建立了
合作关系。这表明了行业对这些协议的认可和采用,对于 AI 学习者来说,也 意味着这些协议可能会
成为未来职业发展中的关键技能

MCP 未来应用场景和潜力:

企业级集成: MCP 可以被广泛应用于企业级场景,通过 AI 自动化操作云服务、数据库、安全审计等,提高生产力与安全性。

个人 AI 助手: 结合 MCP,AI 助手可以直接访问用户的本地文件系统、日历、笔记等资源,提供个性化服务。

开发者效率提升: MCP 可以帮助开发者自动化项目管理、代码分析、容器管理等工作,减少重复性任务。

数据科学与分析: AI 可以通过 MCP 访问分布式数据库、实时监控系统,实现数据的多元化分析与决策支持。

智能家居与物联网: MCP 服务器可以集成智能家居设备(如 Home Assistant),实现语音控制、场景联动等功能。

教育与研究: 教育领域的 AI 可以通过 MCP 管理学习资源,研究人员也可以使用它进行论文搜索、实验数据管理。

跨语言协作: MCP 的翻译服务和多语言支持可以应用于跨国团队协作与内容生成。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐