MCP 现在真的火起来了。现在已经有成千上万个 MCP “服务器”,而且虽然是 Anthropic 发明的,就在几天前 OpenAI 也采纳了它。服务器就像 AI 的 “应用”,但关键在于它们可以更灵活地协同使用。我们正看到 AI 生态系统的雏形,就像十年前我们看到移动生态一样。

详情:MCP(Model Context Protocol,模型上下文协议)是 Anthropic 在 2024 年 11 月作为一个开放标准发布的。虽然最初反响平平,但过去几个月里它真的火了。三月底,就连 OpenAI —— Anthropic 的死对头 —— 也采纳了它。

但它到底是啥?为啥它这么重要?

它是什么

MCP 的核心,是一个扩展 AI 功能的方式,就像一个应用扩展了手机的功能。

理解 MCP 有两个关键概念:MCP 定义了宿主应用(比如 Claude Desktop)如何与这些被称为 MCP 服务器的扩展交互。(其实还有第三个概念,叫 MCP 客户端,但在这篇文章中,宿主和客户端差不多是同一个意思)MCP 最棒的一点是它是一个开放标准,这就意味着不同的宿主应用可以使用相同的 MCP 服务器。现在已经有几十个宿主应用了(这儿有个列表:https://github.com/punkpeye/awesome-mcp-clients)。不仅包括 Claude Desktop 和 Claude Code,还有像 Cursor 这样的工具,和像 oterm 这样的终端。

虽然 MCP 宿主有几十个,现在已经有成千上万个 MCP 服务器了,甚至有专门的网站来整理它们(比如:https://mcp.so/)。这些服务器用途广泛,很多已经成了让 AI 接入数字世界的标准方式。一个生态系统从发布到几个月内拥有 5000 个应用,简直不可思议。

为了具体看看 MCP 服务器可以做什么,我们来看一下 Anthropic 发布的一组参考服务器:

Google Maps:本地搜索、地点信息等。

Slack:收发消息。

Memory:跨会话记住事情。

Time:时间和时区转换。

Puppeteer:与无头浏览器交互并返回 HTML 和图片。

EverArt:图像生成器。注意 MCP 完全不限于文字。

为什么它重要

你现在看到的是 AI 生态系统的崛起。MCP 是 AI 生态里的第一个“应用”对应物。但它与现有的应用生态系统有一些关键差别。这些差别来自于一个事实:AI 比那些已有的 “刚性” 结构(比如 API)更灵活。输入输出都是文本。

基于开放标准的可扩展性

希望我们这次能避免 Android vs iOS 那种局面,因为 OpenAI 和 Anthropic 都采纳了这个标准。也许这就是它被开发者广泛采用的原因:他们只需实现一次,突然之间,他们的工具就能被几十个宿主应用使用。我写一次,Claude、Cline、Gemini 或其他用户就都能使用我做的东西。

集成和链式能力的强大威力

安装传统应用时,大多是孤立体验 —— 一次只能和一个应用互动。如果你想让两个应用互通,还得自己写代码,或者用像 Zapier 那样笨重的“胶水”。

而用 MCP,宿主可以把一个 MCP 服务器的结果传给另一个 MCP 服务器;它可以把多个 MCP 服务器的结果整合起来。下面这个例子就像是超能力:

我可以监听 Slack 上有人说 “找个地方吃晚饭”

我可以从 Google Maps 和 Yelp 的 MCP 服务器获取结果并整合,给出更全面的建议

我可以用 Memory MCP 服务器存取大家在 Slack 上说的饮食偏好。我不需要数据库,Memory 用的是知识图谱表示,这种方式对大模型特别友好,还非常灵活

我可以用 OpenTable 的 MCP 服务器进行预订

我可以在 Slack 上发:“嘿,我看了你们的饮食偏好和附近的餐厅,我帮你们在 X 地订了位。”

你可以想象很多类似的场景,但关键是:为了完成一个目标,MCP 宿主可以同时使用多个 MCP 服务器。

向智能体网络迈进的一步

一个东西(我们称它为代理)可以既是宿主又是服务器。比如,Claude Code 是宿主(它可以使用 GitHub 等 MCP 服务器检查代码),但它也可以是服务器(例如,Claude Desktop 可以请求 Claude Code 来帮忙解决一个编码问题)。你很容易看出这个趋势:你现在有个东西,既能请求其他代理,也能接收其他代理的请求。

这不就是工具吗?

我一开始了解 MCP 时卡住的一点就是:“这不就是开发者一直在用的工具吗?”

某种程度上,是的。实际上,MCP 定义了三种类型的东西:工具、资源(文件、URL 等)和提示。

但有两个根本区别:

工具是给开发者用的,在非常受限的场景下。MCP 是面向用户的。

MCP 更加动态:每个用户都可以添加或删除自己的工具集。

一个具体例子

我想举个具体的例子,看看我是怎么用一个非常简单的 MCP 服务器构建了一个日常新闻简报系统。这不是最花哨的例子,但让我惊讶的是它有多简单。我只用了 Memory MCP 服务器,它维护了一个知识图谱:实体(比如我,或 Mountain View)和关系(实体 “Waleed” 和 “Mountain View” 被 “住在” 这个关系连接)。Claude Desktop 是我选的 MCP 宿主。我开始告诉 Claude Desktop 存我感兴趣的事。它把这些都存进了 memory 系统。然后我让它帮我拉一些最新新闻(通过网页搜索)。效果出奇地好,但我不想第二天重复昨天的内容,所以我也让它记住它昨天告诉我的内容,这样就不会重复。

这只是个开始。接下来我会加一个 Google Tasks 的 MCP 服务器,这样我可以读完后加个代办事项,或者我可以让 Claude Desktop 把某条新闻通过邮件发给朋友。或者我会加一个我的日历应用的 MCP 服务器,把当天的事件也加进简报。

如果没有 MCP,我们怎么搞这事?我得写个跑在 URL 上的应用,想办法获取用户偏好,然后再接上网页搜索。

但有了 MCP,我可以在一个面板里(Claude Desktop)用自然语言完成这一切。

这对我有什么影响?

希望这些能让你愿意至少在你喜欢的宿主上试试 MCP —— 你可能已经在用了。但更重要的是,如果你在做基于 AI 的系统,你也许该考虑一下怎么参与这个生态系统。你应该问问自己:

我要不要把我系统的能力暴露成一个 MCP 服务器?

它能不能让我的用户以一种新的方式访问 AI 系统的能力?

我还需要用户界面吗?MCP 宿主本身能不能成为我的新界面?

我想不想把我的应用变成 MCP 宿主,以扩展它的能力?

我自己已经在考虑把我做的开源伊斯兰 AI 助手项目(包括服务器和宿主两部分)加上 MCP 支持。

接下来呢?

MCP 还处于早期阶段,还有很多路要走,很多东西要修。

安装和设置

现在要把一个 MCP 服务器加进你的宿主,还得手动改 JSON 文件,要么跑 Docker,要么本地跑 Node。挺麻烦的。

安全、认证等等

认证现在还是挺难搞的。比如,要用 Google Drive 的集成,你得申请开发者 API key,然后跳过一堆步骤才能用。安全、提示注入这些还很基础。现在的宿主还得不停向你请求权限才能做事。

动态发现

下一步是要标准化一种方式,让 LLM 自己发现有哪些 MCP 服务器,并能自己找需要用的 MCP 服务器。

总结

MCP 看上去有点理论性,也挺复杂,但它实际上是一个巨大的前进步伐:它是开放 AI 生态的开始。特别是你只需添加一个 MCP 服务器,就能给宿主添加功能,而且是以一种让 AI 能集成并串联多个能力完成目标的方式,这对新应用和工具的灵活性来说是个巨大机会。你应该问问自己,MCP 被迅速采纳这件事,对你正在做的事情意味着什么。

什么是 MCP,以及你为什么该关注它的更多相关文章

  1. 三星DRAM+NAND FLASH 合成MCP芯片介绍及应用攻略

    转自:http://blog.csdn.net/gao5528/article/details/6256119 三星DRAM+NAND FLASH 合成MCP芯片介绍及应用攻略(K5系列产品篇) 一年 ...

  2. Nacos 1.1.4 发布,业界率先支持 Istio MCP 协议

    Nacos是阿里巴巴开源的服务发现与配置管理项目,本次发布的1.1.4版本,主要带来的是与Istio的对接功能,使用的是Istio最新的MCP协议.本文将介绍包括这个功能在内的新版本发布的功能. 升级 ...

  3. 【开源毕设】一款精美的家校互动APP分享——爱吖校推 [你关注的,我们才推](持续开源更新3)附高效动态压缩Bitmap

    一.写在前面 爱吖校推如同它的名字一样,是一款校园类信息推送交流平台,这么多的家校互动类软件,你选择了我,这是我的幸运.从第一次在博客园上写博客到现在,我一次一次地提高博文的质量和代码的可读性,都是为 ...

  4. C#开发微信门户及应用(4)--关注用户列表及详细信息管理

    在上个月的对C#开发微信门户及应用做了介绍,写过了几篇的随笔进行分享,由于时间关系,间隔了一段时间没有继续写这个系列的博客了,并不是对这个方面停止了研究,而是继续深入探索这方面的技术,为了更好的应用起 ...

  5. .NET开发人员值得关注的七个开源项目 .

    NET开发人员值得关注的七个开源项目 软近几年在.NET社区开源项目方面投入了相当多的时间和资源,不禁让原本对峙的开源社区阵营大吃一惊,从微软.NET社区中的反应来看,微软.NET开发阵营对开源工具的 ...

  6. [从产品角度学EXCEL 00]-为什么要关注EXCEL的本质

    前言 Hello 大家好,我是尾巴,从今天开始,在这里连载<从产品角度学EXCEL>的系列文章.本文不接受无授权转载,如需转载,请先联系我,非常感谢. 与世面上的大部分EXCEL教程不同的 ...

  7. C# asp.net 搭建微信公众平台(可实现关注消息与消息自动回复)的代码以及我所遇到的问题

    [引言] 利用asp.net搭建微信公众平台的案例并不多,微信官方给的案例是用PHP的,网上能找到的代码很多也是存在着这样那样的问题或者缺少部分方法,无法使用,下面是我依照官方文档写的基于.net 搭 ...

  8. [已招满,谢谢关注]Sogou招聘C#开发人员,有意者请进

    职位名称:c#开发工程师 工作地点:搜狐网络大厦 职责:搜狗商业平台桌面产品 职位要求: 1. 计算机或者相关专业本科或以上学历 2. 精通c#,两年以上实际项目开发经验 3. 熟悉C/S开发架构和设 ...

  9. Worktile协同特色之一:无处不在的关注

    团队沟通中常见问题 在回答这个问题之前,我们不妨先来思考一下,团队成员之间互相配合沟通的几个问题:1. 任务的执行者在完成这个任务时,如何通知到此任务相关联的其他成员,比如该任务的后续任务执行者?2. ...

  10. fir.im Weekly - 除了新 MacBook Pro,近期值得关注的移动开发好资源

    最近,最引人瞩目的莫过于 Apple 产品发布会,MacBook Pro 的更新可能是四年来变化最大的一版.除了更轻.更薄.性能更好.电力更足之外,最大的变化是加入了Touch Bar,被定义为 Ma ...

随机推荐

  1. nginx平台初探-1

    初探nginx架构(100%) 众所周知,nginx性能高,而nginx的高性能与其架构是分不开的.那么nginx究竟是怎么样的呢?这一节我们先来初识一下nginx框架吧. nginx在启动后,在un ...

  2. legged-robot关于locomotion、Navigation任务主要文章速览

    0. 前言 目前legged robot包括locomotion(怎么走).navigation(往哪走).人形机器人的whole body control以及基于机械臂的manipulation的任 ...

  3. ASP.NET Core 快速轻量级的浏览器检测和设备检测库

    在 .NET Framework 4.7 中那样,通过 HttpContext.Request 的 Browser 属性轻松获取发起 HTTP 请求的浏览器信息,ASP.NET Core 并未直接提供 ...

  4. cxGrid列的OnValidate事件处理程序

    procedure TForm1.cxGrid1DBTableView1AColumnPropertiesValidate(Sender: TObject; var DisplayValue: Var ...

  5. RocketMQ实战—7.生产集群部署和生产参数

    大纲 1.RocketMQ生产集群部署和生产参数分析 2.RocketMQ生产集群10wTPS压测 3.RocketMQ生产级故障案例 1.RocketMQ生产集群部署和生产参数分析 (1)服务器数量 ...

  6. 《刚刚问世》系列初窥篇-Java+Playwright自动化测试-15- iframe操作--番外篇 (详细教程)

    1.简介 通过前边三篇的学习,想必大家已经对iframe有了一定的认识和了解,今天这一篇主要是对iframe的一些特殊情况的介绍和讲解,主要从iframe的定位.监听事件和执行js脚本三个方面进行展开 ...

  7. 硅基流动最新邀请码:9MqV8tO4

    硅基流动最新邀请码:9MqV8tO4 硅基流动最新邀请码:9MqV8tO4

  8. error setting certificate verify locations: CAfile: C:/Program Files/Git/mingw64/ssl/certs/ca-bundle.crt CApath: none

    这个问题是因为git配置里crt证书的路径不正确导致的. 这个路径配置是在C:\Program Files\Git\etc\gitconfig中,应该所有人的配置都在这里 [diff "as ...

  9. JS经纬度坐标转换

    var GPS = { PI : 3.14159265358979324, x_pi : 3.14159265358979324 * 3000.0 / 180.0, delta : function ...

  10. Refit 原理解析:从初识到实践

    在现代的分布式系统和微服务架构中,HTTP API 调用是不可或缺的一部分.为了简化 HTTP 请求的构建和解析,我们可以使用 Refit 这个强大的库.Refit 通过将 HTTP API 抽象为接 ...