当前位置: 首页 > news >正文

MCP指南

两个互联领域的重大挑战:
第一、Agent Tools(工具)的交互
Agent 需要调用外部工具和API、访问数据库、执行代码等。MCP
第二、Agent Agent(其他智能体或用户)的交互
Agent 需要理解其他 Agent 的意图、协同完成任务、与用户进行自然的对话。A2A
MCP就是大模型连接世界的标准、桥梁!
有了DeepSeek,你就有了一个"智能助理"。但是,我们期望 LLM 能够承担更多功能,不
仅限于简单对话,还能与外部的多种数据、工具进行交互。有了MCP,成为了现实!
1. MCP能干什么?对于程序员来说
举例1:开发部署
开发者通过自然语言指令“部署新版本到测试环境”,触发 MCP 链式调用 GitLab API
(代码合并)、Jenkins API(构建镜像)、Slack API(通知团队)。
举例2SQL查询
开发者通过自然语言输入,比如“查询某集团部门上个季度销售额”,就能查询出数
据库的数据,并结合大模型进行回答,不再需要编写 SQLMCP 自动转换为精准 SQL
语句并执行。
借助 MCP,只要支持了该协议,就能轻松将各种数据源和工具连接到 LLM
2. MCP是什么?
2.1 MCP的理解
MCPModel Context Protocol,模型上下文协议) ,202411月底,由
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
其它平台:
Glamahttps://glama.ai/mcp/servers
Smitheryhttps://smithery.ai
cursorhttps://cursor.directory
MCP.sohttps://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 MCPC/S架构
5个核心概念
MCP 遵循客户端-服务器架构(client-server),其中包含以下几个核心概念:
MCP 主机(MCP Hosts)
MCP 客户端( MCP Clients )
MCP 服务器( MCP Servers )
本地资源( Local Resources )
远程资源( Remote Resources )
4.1 MCPC/S架构
MCP Host
作为运行 MCP 的主应用程序,例如 Claude DesktopCursorCline 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编程IDECursorClineContinueSourcegraphWindsurf
聊天客户端:Cherry StudioClaudeLibrechatChatwise
更多的Client参考这里:
MCP Clientshttps://www.pulsemcp.com/clients
Awesome MCP Clientshttps://github.com/punkpeye/awesome-mcp-clients/
MCP Server
每个 MCP 服务器都提供了一组特定的工具,负责从本地数据或远程服务中检索信息。
MCP 架构中的关键组件。
比如你让助手:
帮我查航班信息” 它调用航班查询 API
算一下 37% 折扣后多少钱” 它运行计算器函数
作用:让 LLM 不仅能“说”,还能“做”(执行代码、查询数据等)。
MCP Server 的本质
本质是运行在电脑上的一个nodejspython程序。可以理解为客户端用命令行调用了
电脑上的nodejspython程序。
使用 TypeScript 编写的 MCP server 可以通过 npx 命令来运行
使用 Python 编写的 MCP server 可以通过 uvx 命令来运行。
4.1 MCPC/S架构
4.2 MCP工作流程
API 主要有两个
tools/list列出 Server 支持的所有工具
tools/callClient 请求 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 StudioMCP说明
Cherry Studio 是一款集多模型对话、知识库管理、AI 绘画、翻译等功能于一体的
全能 AI 助手平台。支持 WindowsLinux Mac
同时,CherryStudio提供了一个简洁便于操作的可视化页面,通过简单的配置即可
开启MCP服务。非常适合大众用户用于构建“低代码智能流程”。
Cherry Studio的下载地址:https://cherry-ai.com/
6.2 使用案例
具体详情,见《Cherry Studio中使用MCP案例.md
6.3 准备工作:安装uvbun
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 渲染:能够处理动态网页内容,突破传统抓取工具的局限,获取更全面的数据。
批量处理:支持并行处理和队列管理,提高数据抓取效率。
智能限速:根据网络状况和任务需求智能调整抓取速度,避免对目标网站造成过大压力。
多种输出格式:支持将抓取的内容转换为 MarkdownHTML 等格式,满足不同场景的需求。
说明:去firecrawl官网注册后即可查看自己的api_key
推荐5Github
GitHub MCP 服务器是一个模型上下文协议 (MCP) 提供与 GitHub API 无缝集成的服务器,从
而实现面向开发人员的高级自动化工具和交互功能。
使用案例:
自动化 GitHub 工作流程和流程。
GitHub 存储库中提取和分析数据。
构建与 GitHub 生态系统交互的 AI 驱动的工具和应用程序。
说明:去https://github.com/settings/tokens 申请自己的token
推荐6Git
用于 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的发布
谷歌,25410日发布开源的、应用层协议 A2AAgent-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 家技术合作伙伴(例如 AtlassianBoxSalesforceSAP 等)和服务提供商建立了
合作关系。这表明了行业对这些协议的认可和采用,对于 AI 学习者来说,也意味着这些协议可能会
成为未来职业发展中的关键技能

MCP 未来应用场景和潜力:

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

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

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

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

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

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

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

http://www.dtcms.com/a/561915.html

相关文章:

  • 基于双向时序卷积网络(BiTCN)与支持向量机(SVM)混合模型的时间序列预测代码Matlab源码
  • 怎样免费做一个网站免费推广app是什么意思
  • 构建现代Web应用:使用React框架打造单页面应用
  • 仿站是什么企业vi设计欣赏
  • 招聘 负责网站开发购买了域名怎么使用
  • C++信息学奥赛 递推-动态规划 数塔与过河卒模型实战解析 图例+详解+状态转移方程
  • 具身智能实战(一):物体的抓取1(sdk)
  • 公网ip与内网ip
  • 04-深度学习的基本概念:涵盖深度学习中的关键术语和原理
  • 下海做公关的网站类似于凡科的网站
  • WSL子系统(Ubuntu)安装Docker
  • 服装网站建设策划案杭州设计公司logo
  • Linux | i.MX6ULL Mqtt 移植教程
  • 谷歌 网站做推广中国住建部
  • 临海受欢迎营销型网站建设百度一下你就知道了主页
  • SlideSCI:PPT功能增强
  • DevOps工具链对比,CodeArts和TikLab哪一款更好用?
  • 商城网站系统建设方案做网站报价出名的
  • 面向IT和OT系统一线开发者的UNS(统一命名空间)介绍
  • 重庆最便宜的网站建设公司2024年新冠第三波症状分析
  • 【2025 SWPU-NSSCTF 秋季训练赛】gift_F12
  • bevfusion在j6算力评估
  • CSS margin 折叠现象的实际代码示例
  • 企业网站推广宣传方案wordpress 文件下载插件
  • LinuxMirrors开源工具
  • 长春专业做网站做品牌网站怎么样
  • 怎么制作网站视频教程中关村电脑网官方
  • CodeForces Round 1061(div.2)A-C
  • ubuntu 安装宝塔安装ftp连接不了解决方式
  • 网站内链优化策略网页设计模板中国素材