MCP (Model Context Protocol) 是一个开放协议,它可以在 AI 应用程序与本地或远程资源之间实现安全、受控的交互。MCP的主要价值在于它提供了一种通用的接口,简化了不同工具和数据源的集成。因此MCP被称为 AI 应用的“USB-C”端口。
为什么要用MCP?
程序本身怎么调用工具都没有问题,但目前AI调用工具形成了几种范式,典型有以下几种:Function Calling、Computer Use、用AI-Agent的Executer、以及MCP,以下是对这几种调用方式的比较:
MCP核心架构是什么样的?
MCP 的核心是一个 client-server 架构,host 应用程序可以连接到多个服务器,也就是说host通过客户端与服务端通信,协议用MCP协议,服务端负责与资源或工具交互:
官方给了一个快速入门。
https://modelcontextprotocol.io/quickstart/server
是一个天气MCP服务,实现了两个功能:获取天气预警、获取天气预报。那么它的调用顺序应该是下面这样的。
这似乎并没啥厉害的,不如Function Calling来得直接。
官方文档似乎并没有体现,MCP作为通用协议,对大模型和资源/工具的调用进行了解耦,并提供了安全性保障的能力。直接往下看:
MCP示例
官方提供了很多服务端参考:
来自:
https://modelcontextprotocol.io/examples
以及很多支持MCP客户端的应用:
来自:
https://modelcontextprotocol.io/clients
注意,在你决心开发自己的Server之前,一定要先看看下面这些网站,很多工具的MCP服务都是拿来即用的。
所以,如果你的目的是快速开发,应该尽可能使用支持MCP客户端的IDE(比如Cursor),并优先寻找并配置合适的MCP服务(而不是重复造轮子)。
然后你就可以体验以下骚操作,比如:
直接在聊天框操作数据库,让AI自己生成修改意见并自己修改数据库。
直接在AI聊天框里获取浏览器报错,并让AI自己查看并解决问题。
直接在浏览器选中元素,在聊天框让AI针对选中的元素作出修改。
……
https://mcp.composio.dev/
https://glama.ai/
https://cursor.directory/
下一篇,实战一下,如何在Cursor中通过配置MCP服务来调用工具。