智能行程规划——零编码使用MCP

随着生成式人工智能技术的迅速发展,尤其是类似 ChatGPT 这类对话式应用的普及,普通用户如今也能轻松利用 AI 进行文本生成、润色、翻译等各类文本处理任务。随着这些应用逐步集成网络搜索能力,它们正逐渐取代传统搜索引擎,成为用户体验更佳、使用频率更高的主流工具。

MCP(Model Context Protocol)的出现,则进一步降低了非专业用户使用人工智能的技术门槛。在《生成式AI实战》一书中,作者通过大量代码实现了一个具备“智能行程规划”能力的智能体(详见第6.2节和第6.4节)。本文将在简要介绍 API 服务、函数调用机制与 MCP 协议的基础上,展示如何在“零编码”的条件下,再次实现一个具备同样功能的智能行程规划智能体。

1.API 服务、函数调用与 MCP

(1)API 服务

API(Application Programming Interface,应用程序编程接口)是一套规则和规范,用于实现不同软件系统之间的交互与通信。它提供了一种标准化的方式,使开发者无需了解底层实现细节,就可以调用特定的功能或访问某项服务。

API 服务通常用于实现数据交换或功能调用。例如,信息服务商可能会通过开放 API 的方式提供其服务:调用搜索引擎的 API,传入关键词,即可获取相关搜索结果;调用天气查询 API,传入城市名称或行政区划代码,即可返回该城市的天气信息。

由于每个 API 的名称、参数格式和返回结果各不相同,当前尚不存在可以通用调用任意 API 的工具。因此,使用 API 通常需要具备一定的编码能力,开发者必须通过编写程序来实现参数传入、请求发送和结果处理等完整的调用流程。

(2)函数调用

函数调用(Function Calling)是一项使大型语言模型(LLM)能够结构化调用函数或 API 的关键能力。通过这一机制,模型不仅能理解用户的意图,还能自动生成调用外部函数所需的参数,从而完成更加复杂、动态的任务。

被调用的函数既可以是本地自定义的工具函数,也可以是第三方服务提供的 API。比如,当用户询问“明天北京的天气如何?”时,模型可以识别出这是一次天气查询请求,并构造参数调用相应的天气查询接口来获取答案。

为了使用函数调用功能,开发者需要在向模型提交提示词(prompt)的同时,提供可调用函数的详细描述信息。对于原生支持函数调用的模型(如 OpenAI GPT 的 Function Calling 接口),这些描述需严格遵循其接口规范,包括函数名称、功能说明、参数格式、返回值结构等。而对于不原生支持函数调用的模型,则需将函数信息嵌入提示词中进行引导。无论哪种方式,这往往是开发者面临的“灾难现场”:不同人对同一个函数可能会有风格迥异的描述,导致模型理解效果参差不齐。而且在收到模型的反馈后,开发者需要解析模型的响应,提取出模型建议调用的函数及其参数。这意味着,想要正确使用函数调用能力,不仅需要具备编码能力,还必须理解大型语言模型的行为机制,具备一定的生成式 AI 应用开发经验。

(3) MCP

MCP(Model Context Protocol,模型上下文协议)是由  Anthropic 于 2024 年 11 月发布并开源的一项新协议,旨在为大型语言模型(LLM)连接外部数据源提供统一标准。这些数据源包括内容存储库、业务工具、开发环境等。可以将 MCP 理解为一种“通用插头”,让 AI 能够与各种系统高效对接,无需为每个系统单独定制。

MCP 的核心思想是将可调用的函数或资源封装成结构化、可理解的描述信息,并配套标准化的调用逻辑,从而避免了传统函数调用中“提示词千人千面”带来的模型行为不一致问题。具体而言,MCP 将函数描述与调用能力统一托管在 MCP 服务器上,客户端连接后可获取这些能力信息,再由大模型进行推理判断:是否需要调用函数、调用哪个函数、传入哪些参数等。

值得补充说明的是,MCP 定义的能力远不止于函数调用,但本文将聚焦于其在函数调用方面的应用。

当 MCP 的标准化机制与大模型的语义理解与推理能力结合后,就使得“通用的 MCP 应用程序”成为可能:尽管不同的 MCP 服务器暴露的能力不同,但客户端可以动态连接多个服务器、识别其能力并自主完成调用逻辑,实现功能闭环。这是传统 API 或函数调用机制难以实现的灵活性与通用性。

不过目前市场上尚未出现真正意义上的“通用 MCP 客户端”,MCP 功能多嵌入在特定支持 AI 功能的应用中,如 VS Code 或其他开发者 IDE 插件中。

本文将介绍如何使用普通用户也能上手的 Cherry Studio 工具,无需编写任何代码,即可调用公开的 MCP 服务器,实现“智能行程规划”助手,体验基于 MCP 的智能体能力。

2. (在 MCP 主机)配置 MCP

Cherry Studio 是一个集成多家 AI 服务平台能力的一站式应用工具。用户只需拥有相应模型服务商的 API Key,即可在 Cherry Studio 中快速接入并调用各类大模型的智能能力,无需进行复杂配置。

其配置方法非常简单:进入应用的「设置」页面,点击「模型服务」选项,选择你想使用的大型语言模型服务商(如DeepSeek、智谱AI 等),然后在右侧的「API 密钥」输入框中,填入从对应平台申请到的 API Key,完成保存即可开始使用。

配置大型语言模型

图 1 配置大型语言模型

接下来,在 Cherry Studio 的「设置」页面中切换到「MCP 服务器」选项,完成 MCP 服务器的配置。本示例中将添加两个 MCP 服务节点:一个来自高德开放平台,主要用于获取路线规划与天气信息;另一个是百度搜索服务,主要用于获取景点、住宿与美食信息。

每个 MCP 服务器的配置项中,“名称”“类型”和“URL”为必填字段:

  • 名称:可自定义,用于识别该服务;
  • 类型:请选择“服务器发送事件(SSE)”;
  • URL:填写对应 MCP 服务器提供的接入地址。

这两个 MCP 服务都需要使用各自平台提供的 API Key。你可以在对应平台上申请后,将其与服务器 URL 一并填写(如下图中马赛克部分即为 API Key 区域)。

以下是高德开放平台和百度搜索 MCP 服务器的配置示例,供参考和使用。

图 2 配置高德MCP服务器

图 3 配置百度搜索MCP服务器

请注意:完成上述配置后,别忘了将右上角的开关切换为“开启”状态,只有在开启后,配置才会生效,MCP 服务才能正常接入和使用。

3. 实现智能行程规划——应用 MCP 场景示例

配置完成后,返回 Cherry Studio 的主界面,在右下角可以看到一个交互窗口。在该窗口中,点击中间的 MCP 服务图标(下图绿色图标),弹出可选列表后,选择刚才配置的 MCP 服务器,即可开始使用对应的智能服务能力。

选定交互中准备使用的MCP服务器

图 4 选定交互中准备使用的 MCP 服务器

接着,在输入框中输入以下提示词,向大模型明确传达我们的意图。

根据以下信息和要求为我规划一个旅行行程:

1. 从沈阳自驾去济南,主要旅行目的地为山东;

2. 旅行时长7天,从7月22日从沈阳出发,7月27日回到沈阳;

3. 旅行中途可以停留过夜,也可以在适当的地点参观或品尝美食;

4. 三人同行,但只有一人会开车,其连续驾驶时长不应长于6小时;

5. 行程规划要考虑天气状态,美食与景点需要检索网上评价综合评估后决定是否加入行程 ;

6. 最终给出的行程规划需要包含旅行期间每一天的以下安排:

(1)自驾路线说明(2)住宿酒店建议(3)景点建议(4)美食建议(5)其他必要信息;

7. 以整理后美观的HTML格式展示生成的行程规划。

此时你将看到大型语言模型开始“思考”,并在推理过程中自动调用已配置的 MCP 服务,逐步完成任务。在下图中可以看到模型分析出要调用5次工具以获取相应信息以及这5次工具调用的状态。

图 5 行程规划运行结果

当模型生成最终结果后,点击「预览」或「在外部浏览器中打开」,即可查看如图所示的行程规划效果。

图 6 行程规划结果1

图 7 行程规划结果2

图 7 行程规划结果2

4.总结

本文首先通过 API 接入、函数调用、MCP 能力封装等关键概念的简要介绍,可以看到 MCP 为大模型接入外部世界提供了更标准化、结构化的路径,大大降低了 AI 应用开发的门槛。然后本文展示了如何通过 Cherry Studio 无需编码即可接入 MCP 服务器,并调用高德与百度搜索等公开 MCP 服务,配合大型语言模型完成“智能行程规划”任务。

MCP 的出现不仅优化了提示词依赖的开发方式,更让“通用智能体”成为可能。借助 Cherry Studio 这类工具,即使是非开发者,也能亲身体验 AI 与多源 MCP 服务联动所带来的智能体验。未来,随着 MCP 生态的不断成熟,我们将看到越来越多的低门槛、高可用的智能应用场景快速落地。