怎么测的
测什么、怎么测、结果怎么分、列表怎么排,以及我们收集什么数据。
一次测试做什么
- 每天从官方 MCP 目录取一次全部登记(每个服务的最新版本)。
- 对每一个能远程连接的地址:按 MCP 协议发起握手(initialize),成功后列出工具(tools/list,最多五页),然后结束会话。旧式的 SSE 传输也支持。
- 不调用任何工具,不尝试登录,不发送任何密钥。
- 只连公网地址:解析到本机、内网、链路本地等地址的一律不连,带参数的地址(比如要填自己子域名的)也不连。
- 每个回答等 10 秒,一个地址总共最多 25 秒;同时最多测 48 个,同一主机最多 2 个、间隔四分之一秒。请求里写明我们是谁:HorizontalProbe,附联系邮箱。
- 只能装到本机运行的服务(npm、PyPI、Docker 等安装包)不测:我们不在自己的机器上运行陌生代码。
六种结果
- 实测可用
- 连上了,按 MCP 协议握手成功,列出了它的工具。有的服务真正调用工具时还要登录,这一层要看“实测过的用法”。
- 需要登录
- 服务在线,但要先登录或填密钥才能用,没有登录我们看不到它有哪些工具。
- 有回应,用不了
- 地址有回应,但不是一个能用的 MCP 服务:找不到页面、服务器出错,或者回的不是 MCP 协议。
- 连不上
- 域名解析不了、连接被拒、证书出错,或者等了 10 秒没有回应。
- 没法测
- 地址要先填参数(比如自己的子域名),或者指向内网地址,我们不去连。
- 要装到本机
- 只能下载到自己电脑上运行(npm、PyPI、Docker 等包)。我们不在自己的机器上运行陌生代码,所以没有测。
要注意的地方
- 说明里有给智能体的指令
- 工具说明里有要智能体先做某件事、跳转到某个链接或瞒着用户的话。这可能是广告,也可能是提示注入;用之前先看看原文。
- 说明里有看不见的字符
- 工具说明里有零宽字符或改变文字方向的控制符,人看不见,智能体能读到。
- 说明要智能体优先用它
- 工具说明要求智能体先用它,或者在别的工具、网页搜索之前用它。有的是正常的使用顺序(比如先取项目编号),有的是在抢别的服务的生意;看原文再判断。
- 同一主机登记了很多个
- 同一个主机在官方目录里登记了 50 个以上的服务。有的是正规平台把每个接口分开登记,有的是批量灌进去的。
- 有会改数据的工具
- 服务方自己把这些工具标成了会删除或改写数据(destructiveHint),让智能体调用前先问你。
- 已被标为弃用
- 登记的人在官方目录里把它标成了弃用。
这些提示是程序按规则找出来的,附上找到的原文,请自己判断。说明里有给智能体的指令的服务,不进搜索结果,那条说明也不转载。
怎么排序
- 先按测试结果排:实测可用在前,需要登录其次,坏了和连不上最后。
- 同一档里看分数:工具数(最多算 30 个)、有没有标题、网站和代码仓库、说明写得全不全、握手快不快(1 秒以内加分最多)、90 天内更新过没有。
- 扣分:同一主机登记了 50 个以上(批量登记的可能)、说明里有给智能体的指令或看不见的字符(扣得最多,而且不进搜索结果)、已被标为弃用。
- 列表里同一主机最多出现两个,免得一家批量登记的占满。
- 分数不能买。付费买的是监控、报告和登记服务,不改变任何服务的测试结果和排序。
用法的三种来源
- 实测过的用法:我们让智能体真的用这个服务做了一件事,只调用只读的工具,记下了输入、输出和日期。
- 服务方提供:服务方认领后自己提交的,标明出处,我们看过但没有重跑。
- 按工具说明整理:只根据工具列表推断,没有实际跑过,一定会标出来。
- 用法和案例库一样:先作为草稿,人看过才发布。
数据
服务的名称和说明来自官方 MCP 目录,是登记的人写的,我们原样展示。网站上的搜索只按天计数,不记下访客的网络地址。搜索 MCP 只按天、按工具记调用次数,客户端只记它自己报的名字。认领和意向登记会保存你填的邮箱,只用来回信,不公开、不给别人;想删掉,写信到 [email protected]。
不想被测,或者结果不对
不想被测:写信到 [email protected],告诉我们地址,我们会停止测试,并从页面和搜索里拿掉。发现结果不对,也请写信。