文章

MCP协议简介

MCP协议简介

MCP协议简介

MCP协议让AI不再只是回答者,而是任务的执行者。参考:

  • https://www.claudemcp.com/
  • https://github.com/cnych/claude-mcp/ – claudemcp.com的镜像站

mcp概念

what-is-mcp
mcp introduction
协议规范
mcp开发
MCP(Model Context Protocol,模型上下文协议)是由 Anthropic 公司于2024年11月开源的一种通信协议,旨在解决大型语言模型(LLM)与外部数据源及工具之间的无缝集成需求。通过标准化 AI 系统与数据源的交互方式,MCP帮助模型获取更丰富的上下文信息,生成更准确、更相关的响应。

在MCP出现之前,即使是最先进的 AI 模型也面临与数据隔离的限制。每一个新的数据来源都需要专属的定制实现,这不仅增加了开发成本,还造成了效率低下和系统难以扩展的问题。

简单来说,MCP 就像给AI装上了一个”万能接口”,让 AI 能够与各种外部系统和数据源实现标准化的双向通信。正如 USB-C 提供了连接各种设备的标准化方式,MCP 也为连接 AI 模型和不同数据源提供了统一的方法。

常用mcp推荐覆盖了设计、办公、自动化、内容、支付等多个领域,极大拓展了AI的实际应用边界。

mcp和A2A区别

a2a-mcp
a2aprotocol zh
git google-a2a
A2A协议是由 Google与50多家行业合作伙伴共同开发的开放协议,旨在实现不同供应商的AI智能体之间的互操作性。无论这些代理是谁构建的、在哪里托管或使用什么框架,A2A协议都能使它们无缝协作。

两种协议的功能定位

A2A协议与MCP协议解决了AI智能体生态系统中不同层面的挑战:

  • A2A协议:解决代理之间如何互相交互(水平集成)
  • MCP协议:解决代理如何与工具或外部上下文交互(垂直集成)

功能互补性分析

这两种协议相互补充,共同解决构建多代理、多LLM和多源上下文系统的核心挑战:

  • A2A协议专注于代理之间的标准化通信(代理到代理)
  • MCP协议专注于代理与外部工具和系统的交互(代理到工具)

mcp常用资源站点

mcp使用

示例-快速接入高德地图MCP Server

参考https://lbs.amap.com/api/mcp-server/gettingstarted

  • Cursor 平台 Streamable HTTP 方式接入 MCP 服务
  • Cursor 平台 SSE 方式接入 MCP 服务
  • Cursor 平台 Node.js I/O 模式接入 MCP 服务

mcp服务端开发

sdk分为客户端和服务端,大部分场景是开发服务端,暴露工具提供给客户端调用。 sdk合集https://github.com/modelcontextprotocol/servers

使用java sdk开发mcp服务

使用springframework.ai依赖,jdk17及以上。使用Tool注解注册工具。

  • 参考文档https://modelcontextprotocol.io/docs/develop/build-server
  • 示例代码https://github.com/spring-projects/spring-ai-examples/tree/main/model-context-protocol/weather/starter-webmvc-server
本文由作者按照 CC BY 4.0 进行授权