跳到主要内容

从零到一MCP部署与上线实战(上)

[toc]

一、MCP技术快速入门回顾

1. MCP入门介绍

​ MCP,全称是Model Context Protocol,模型上下文协议,由Claude母公司Anthropic于去年11月正式提出。

image-20250318201338022

​ MCP刚发布的时候不温不火,直到今年Agent大爆发才被广泛关注。而在今年2月,Cursor正式宣布加入MCP功能支持,一举将MCP推到了全体开发人员面前。从本质上来说,MCP是一种技术协议,一种智能体Agent开发过程中共同约定的一种规范。这就好比秦始皇的“书同文、车同轨”,在统一的规范下,大家的协作效率就能大幅提高,最终提升智能体Agent的开发效率。截止目前,已上千种MCP工具诞生,在强悍的MCP生态加持下, 人人手搓Manus的时代即将到来。

​ 总的来说**,MCP解决的最大痛点,就是Agent开发中调用外部工具的技术门槛过高的问题。**

​ 我们都知道,能调用外部工具,是大模型进化为智能体Agent的关键,如果不能使用外部工具,大模型就只能是个简单的聊天机器人,甚至连查询天气都做不到。由于底层技术限制啊,大模型本身是无法和外部工具直接通信的,因此Function calling的思路,就是创建一个外部函数(function)作为中介,一边传递大模型的请求,另一边调用外部工具,最终让大模型能够间接的调用外部工具。

image-20250318202017508

​ 例如,当我们要查询当前天气时,让大模型调用外部工具的function calling的过程就如图所示:

image-20250318202029130

​ Function calling是个非常不错的技术设计,自诞生以来,一直被业内奉为圭臬。但唯一的问题就是,编写这个外部函数的工作量太大了,一个简单的外部函数往往就得上百行代码,而且,为了让大模型“认识”这些外部函数,我们还要额外为每个外部函数编写一个JSON Schema格式的功能说明,此外,我们还需要精心设计一个提示词模版,才能提高Function calling响应的准确率。

​ 而MCP的目标,就是能在Agent开发过程中,让大模型更加便捷的调用外部工具。为此,MCP提出了两个方案,其一,“车同轨、书同文”,统一Function calling的运行规范。

​ 首先是先统一名称,MCP把大模型运行环境称作 MCP Client,也就是MCP客户端,同时,把外部函数运行环境称作MCP Server,也就是MCP服务器,

image-20250318202116026

​ 然后,统一MCP客户端和服务器的运行规范,并且要求MCP客户端和服务器之间,也统一按照某个既定的提示词模板进行通信。

​ 现在,只要你本地运行的大模型支持MCP协议,也就是只要安装了相关的库,仅需几行代码即可接入这些海量的外部工具,是不是感觉Agent开发门槛瞬间降低了呢。

​ 这种“车同轨、书同文”的规范,在技术领域就被称作协议,例如http就是网络信息交换的技术协议。各类技术协议的目标,都是希望通过提高协作效率来提升开发效率,而MCP,Model Context Protocol,就是一种旨在提高大模型Agent开发效率的技术协议。

​ 那既然是协议,必然是使用的人越多才越有用。因此,为了进一普及MCP协议,Anthropic还提供了一整套MCP客户端、服务器开发的SDK,也就是开发工具,并且支持Python、TS和Java等多种语言,借助SDK,仅需几行代码,就可以快速开发一个MCP服务器。

image-20250318202304248

​ 然后,你就可以把它接入任意一个MCP客户端来构建智能体,如果愿意,还可以把MCP服务器分享到社区,给有需求的开发者使用,甚至你还可以把你的MCP服务器放到线上运行,让用户付费使用。

​ 而MCP的客户端,不仅支持Claude模型,也支持任意本地模型或者在线大模型,或者是一些IDE。例如,现在Cursor正式接入MCP,代表着Cursor正式成为MCP客户端,在Cursor中,我们不仅能快速编写MCP服务器(外部函数),更能借助Cursor一键连接上成百上千的开源MCP服务器,让大模型快速接入海量工具,从而大幅加快Agent开发进度。

image-20250318153131024 image-20250318185821214 image-20250318185810201 115746_nnq5_2720166

2.MCP系列公开课回顾

image-20250318201253260 image-20250410193755391 1744285192384 image-20250416153021216

3.MCP服务器Server合集

4. MCP热门客户端Client

​ 除了能在命令行中创建MCP客户端外,还支持各类客户端的调用:https://modelcontextprotocol.io/clients

image-20250318195407915

4.MCP工具快速接入示例

以下是一个将高德地图导航MCP(服务器)接入Cherry Studio(客户端)的示例: