开发过LLM应用的朋友都深有体会,让大模型真正与外部世界“对话”并非易事。例如,想让模型查询天气、调用企业内部数据库的产品信息,这背后涉及模型与外部API的交互难题。这一痛点极为普遍,因此,MCP开放协议应运而生,专门为LLM应用与外部数据源、工具之间搭建标准化通信桥梁。
MCP,全称Model Context Protocol,本质上是一套统一的通信规范,旨在解决LLM应用与外部世界的连接问题。既然有了协议,自然需要好用客户端工具来开发和测试。在众多选项中,Apifox推出的MCP客户端功能,确实令人眼前一亮,成为调试MCP服务的得力助手。
什么是MCP协议
在探讨工具之前,有必要先厘清MCP协议究竟解决了什么问题。简单理解,MCP服务端就像一个能力中心,对外宣称:我能执行这些操作,我能提供这些数据。
一个标准的MCP服务端通常提供三类核心能力,而一个合格的客户端,则必须能够与这三类能力顺畅沟通和调试。
| 核心能力 | 说明 |
|---|---|
| Tools | 服务端可执行的具体操作,可视为一个个可远程调用的函数。 |
| Resources | 服务端能提供的数据资源,如产品列表或知识库文章。 |
| Prompts | 服务端预定义的提示词模板,客户端传入参数后,可动态生成最终提示词。 |
此外,客户端与服务端之间的通信也需要标准化方式。MCP支持两种主流传输协议,以适应不同开发场景:一种是STDIO,通过标准输入/输出通信,非常适合调试运行在本地的MCP服务进程;另一种是HTTP,通过可流式传输的HTTP进行通信,适用于连接远程部署的服务端。
在Apifox中快速上手MCP客户端
概念理清后,我们直接在Apifox中实战,创建一个MCP客户端,连接并调试一个MCP服务。
创建MCP客户端
操作非常简单。在一个HTTP项目里,点击“新建接口”按钮。弹出来的界面中,除了常见的HTTP、WebSocket等协议,你会看到专门的MCP选项。
选中MCP,一个MCP客户端的配置界面便呈现出来。

连接到MCP服务端
客户端创建完成后,下一步是连接到一个正在运行的MCP服务端。Apifox的连接方式十分灵活,无论是本地调试还是连接远程服务,都能轻松应对。
最直接的方式是输入服务端的地址或启动命令。
如果是本地服务,直接粘贴启动命令即可。例如,调试基于Node.js的MCP服务,可以输入:
npx -y @modelcontextprotocol/server-everything
Apifox会智能识别出这是终端命令,自动将下方协议切换为STDIO。
如果需要连接远程部署的HTTP服务,直接粘贴URL地址:
https://example-server.modelcontextprotocol.io/mcp
同样,协议会自动切换为HTTP。
对于更复杂的场景,Apifox还支持直接粘贴MCP服务端的配置文件。例如,一个包含多个服务定义的mcpServers配置:
{"mcpServers": {"Everything Server": {"command": "npx","args": ["-y", "@modelcontextprotocol/server-everything"],"env": {}}}}
将这段JSON粘贴到地址栏,Apifox会自动解析并填充服务名称、命令、参数等信息。如果配置中包含多个服务端,默认使用第一个。
填写完地址或命令后,点击“连接”。如果是STDIO连接,由于需要执行本地命令,Apifox会弹出安全确认对话框。确认后,将启动本地进程并建立连接。如果是HTTP连接,则直接向目标URL发起请求。
连接成功后,界面左侧的目录树会被自动填充,清晰展示该服务端提供的所有Tools、Resources和Prompts列表。
调试MCP服务核心功能
连接成功只是第一步,真正的价值在于调试服务提供的各项能力。
调试Tools
Tools是服务端提供的可执行函数。在左侧目录树中选中某个具体的Tool,右侧会显示参数配置界面。你可以像填写普通接口参数一样,通过表单或直接编辑JSON来设置参数。
参数配置完成后,点击“运行”,请求便发送到服务端执行。结果会清晰显示在下方的响应区域。

获取Resources
Resources是服务端提供的数据资源。调试更为简单:在目录树中选中Resource,直接点击“运行”,即可获取该数据资源的内容。验证数据源是否正确、内容格式是否符合预期,这一步非常有用。

使用Prompts
Prompts是预置的提示词模板。与Tool类似,选中Prompt后,如果包含变量,右侧会显示参数填写区域。填入参数后点击“运行”,服务端会返回根据模板和参数动态生成的完整提示词。

进阶配置选项
除基本调试功能外,Apifox还提供一系列进阶配置,满足复杂测试需求。这些主要集中在连接设置面板。
连接配置
不同的连接协议,配置项也有所不同。
| 功能 | 适用协议 | 说明 |
|---|---|---|
| 环境 (Environment) | STDIO | 配置启动本地MCP服务进程所需的环境变量,例如ACCESS_TOKEN等。 |
| 鉴权 (Auth) | HTTP | 配置HTTP连接时的身份验证,支持多种鉴权方式。 |
| 请求头 (Headers) | HTTP | 在发起HTTP连接时添加自定义请求头。 |
鉴权(Auth)详解
与远程HTTP服务端通信时,身份验证是不可或缺的环节。Apifox的MCP客户端集成了强大的Auth功能,支持API Key、Bearer Token、Basic Auth、OAuth 2.0等多种鉴权方式。
特别值得一提的是,如果目标MCP服务端支持OAuth 2.0,Apifox会尝试自动获取鉴权配置并引导完成授权流程,大大简化了配置过程。若自动获取失败,也可随时在Auth标签页中手动配置。
变量的使用
为提升调试灵活性和效率,Apifox的变量系统在MCP客户端也得到了全面支持。你可以在以下位置使用{{variable_name}}语法引用环境变量或全局变量:
- 服务端地址或启动命令
STDIO模式下的环境变量值HTTP模式下的请求头和鉴权信息Tools或Prompts的参数值
查看响应与管理
调试过程中,清晰查看每次交互的细节至关重要。
理解响应面板
Apifox将服务端的响应信息分成两个标签页:Messages和Notifications。
Messages标签页主要显示由用户操作触发的交互消息,例如连接/断开事件、运行Tool的请求与响应等。
Notifications标签页则用来显示由服务端主动推送的消息,例如服务状态变更通知、工具列表更新等。
点击任何一条消息,都可以查看完整的技术细节。如需深入分析原始的JSON-RPC报文,还可切换到“包含信封”模式查看。
保存与共享
所有配置好的MCP客户端都可以像普通接口一样,保存在Apifox项目里。这不仅方便自己反复使用,更重要的是能轻松在团队成员之间共享,确保大家使用统一的配置进行调试,提升协作效率。
需要注意的是,从服务端获取的Tools、Prompts、Resources目录树是动态的,仅存储在本地,每次重新连接时都会自动刷新,确保客户端展示的始终是最新的能力列表。
