mcpField
T
Tester Client for Model Context Protocol (MCP)

Tester Client for Model Context Protocol (MCP)

github.com/apify框架与 SDK8047 周前更新

关于 Tester Client for Model Context Protocol (MCP)

Tester Client for MCP 是一个用于测试 MCP 服务的客户端,通过 HTTP streamable 连接服务器并以聊天界面展示工具调用与结果。它以 Apify Actor 形式运行,主要用于测试远程 MCP 服务,尤其是 Apify MCP Server。

主要功能

  1. 01通过 HTTP streamable 连接 MCP 服务
  2. 02聊天界面展示工具调用和返回结果
  3. 03支持 Authorization 请求头与 API 密钥
  4. 04可在 Apify 上以 Actor 形式运行
  5. 05源代码开源,可自行修改

适用场景

  1. 01测试远程 MCP 服务的工具调用
  2. 02体验 Apify MCP Server 提供的 Actor 工具
  3. 03在本地运行客户端调试 MCP 服务

MCP 相关

作为 MCP 客户端,它通过 HTTP streamable 连接指定的 MCP 服务,并在界面中展示模型输出与工具调用。

详细介绍

Model Context Protocol(MCP)测试客户端

Actors MCP Client

这是一个 Model Context Protocol(MCP)客户端的实现,通过 HTTP 流式传输(推荐)连接到 MCP 服务,并在类似聊天的 UI 中显示对话。 它是一个独立的 Actor 服务,专为通过 HTTP 流式传输测试 MCP 服务而设计。 它采用 按事件付费 定价模式。

更多信息,请参阅 Model Context Protocol 网站或博客文章 什么是 MCP,它为何重要?。

运行 Actor 后,请检查输出或日志,找到聊天 UI 界面的链接,以便与 MCP 服务交互。 URL 格式如下,每次运行都会有所不同:

Navigate to https://...apify.net to interact with chat-ui interface.

🚀 主要功能

  • 🔌 通过 HTTP 流式传输 连接到 MCP 服务
  • 💬 提供类似聊天的 UI,用于显示工具调用和结果
  • 🇦 连接到 Apify MCP 服务,以便与一个或多个 Apify Actors 交互
  • 💥 根据上下文和用户查询动态使用工具(如果服务支持)
  • 🔓 使用授权标头和 API 密钥建立安全连接
  • 🪟 开源,你可以查看、提出改进建议或修改它

🎯 Tester MCP Client 有什么作用?

连接到 Apify MCP 服务 后,Tester MCP Client 会提供交互式聊天界面,你可以在其中询问:

  • “社交媒体抓取最热门的 Actors 是哪些?”
  • “向我展示使用 Instagram Scraper 的最佳方式。”
  • “我应该使用哪个 Actor 来提取 LinkedIn 数据?”
  • “你能帮我了解如何抓取 Google 搜索结果吗?”

Tester-MCP-client-screenshot

📖 工作原理

Apify MCP Client 通过 HTTP 流式传输 连接到正在运行的 MCP 服务,并执行以下操作:

  • 向 MCP 服务发起流式 HTTP 连接。
  • 向 MCP 服务发送用户查询。
  • 接收实时流式响应,其中可能包括 LLM 输出和 工具使用 区块
  • 根据 LLM 响应编排工具调用并显示对话
  • 显示对话

⚙️ 用法

  • 测试任意远程 MCP 服务
  • 测试 Apify MCP 服务 以及动态选择数千种工具的能力

观看视频 Apify MCP 服务教程:将 5,000 多个 Apify Actors 和 Agents 集成到 Claude 中,了解其主要功能和能力

Apify MCP 服务教程:将 5,000 多个 Apify Actors 和 Agents 集成到 Claude 中

普通模式(在 Apify 上)

你可以在 Apify 上运行 Tester MCP Client,并将其连接到任何支持 HTTP 流式传输的 MCP 服务。 你可以通过 Apify UI 或 API 配置参数,例如 MCP 服务 URL、系统提示词和 API 密钥。

运行 Actor 后,请检查日志,找到 Tester MCP Client UI 的链接,以便与 MCP 服务交互: URL 格式如下,每次运行都会有所不同:

INFO  Navigate to https://......runs.apify.net in your browser to interact with an MCP server.

💰 定价

Apify MCP 客户端采用一种现代而灵活的 AI Agent 变现和定价方式,称为按事件付费。 你只需要拥有 Apify 账户即可使用;不要求提供大模型提供商的 API 密钥,但如果你想使用自己的大模型提供商,也可以提供该密钥。

支持的模型

当前模型:

  • Claude Sonnet 4.5 (claude-sonnet-4-5-20250929) - Sonnet 的默认模型
  • Claude Haiku 4.5 (claude-haiku-4-5-20251001) - 默认模型,速度更快且更具成本效益

已弃用的模型(仍受支持,会自动迁移):

  • Claude Sonnet 4.0 (claude-sonnet-4-0) → 迁移至 Sonnet 4.5
  • Claude Sonnet 3.7 (claude-3-7-sonnet-latest) → 迁移至 Sonnet 4.5
  • Claude Haiku 3.5 (claude-3-5-haiku-latest) → 迁移至 Haiku 4.5
计费事件
  • Actor 启动(根据使用的内存计费,每 128 MB 为一个单位)
  • 运行时间(每 5 分钟计费一次,每 128 MB 为一个单位)
  • 回答查询(取决于使用的模型;如果提供自己的大模型服务商 API 密钥,则不收费)
Token 定价
  • Claude Sonnet:每 100 万个输入 token 收费 $3,每 100 万个输出 token 收费 $15
  • Claude Haiku:每 100 万个输入 token 收费 $1,每 100 万个输出 token 收费 $5(默认模型)

使用自己的大模型服务商 API 密钥时,以 128 MB 内存运行 MCP 客户端 1 小时,费用约为 $0.06。 使用 Apify 免费套餐(无需信用卡 💳),每月可运行 MCP 客户端 80 小时。 足够用来测试你的 MCP 服务!

📖 工作原理

Browser ← (SSE) → Tester MCP Client  ← (HTTP streamable) → MCP Server

我们创建此链路,以便将所有自定义桥接逻辑保留在 Tester MCP 客户端中,同时不改动主 MCP 服务。 浏览器使用 SSE 与 Tester MCP 客户端通信,而 Tester MCP 客户端通过可流式传输的 HTTP 与 MCP 服务通信。 这样可以将额外的客户端逻辑与核心服务分离,让维护和调试更轻松。

  1. 访问 https://tester-mcp-client.apify.actor?token=YOUR-API-TOKEN(如果在本地运行,也可以访问 http://localhost:3000)。
  2. 从 public/ 目录提供文件 index.html 和 client.js。
  3. 浏览器通过 GET /sse 打开 SSE 流。
  4. 用户的查询通过 POST /message 发送。
  5. 查询处理:
    • 调用大语言模型。
    • 如有需要,可选择调用工具
  6. 对于每个结果块,执行 sseEmit(role, content)
本地开发

Tester MCP Client Actor 是开源的,可在 GitHub 上获取,你可以根据需要对其进行修改和开发。

下载源代码:

git clone https://github.com/apify/tester-mcp-client.git
cd tester-mcp-client

安装依赖:

npm install

创建一个 .env 文件,内容如下(可参考 .env.example 文件):

APIFY_TOKEN=YOUR_APIFY_TOKEN
LLM_PROVIDER_API_KEY=YOUR_API_KEY

const.ts 文件中定义了 mcpUrl、systemPrompt 等设置的默认值。你可以根据开发需要进行调整。

在本地运行客户端

npm start

在浏览器中访问 http://localhost:3000,即可与 MCP 服务交互。

祝你使用 Apify Actors 聊得愉快!

ⓘ 限制和反馈

客户端不支持所有 MCP 功能,例如 Prompts 和 Resource。

参考资料

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。