私たちの計測方法と、計測しないと決めていること
公開されている MCP サーバーを、許可を求めずに探索しています。それは私たちに義務を課します。自らに課しているルールと、その理由。
私たちが計測できるように、誰かが何かをインストールしてくれるわけではありません。公開された MCP エンドポイントに、どのクライアントとも同じように外部から接続します。エコシステム全体を対象にできるのはそのためであり、慎重でなければならない理由も同じです。対象を痛める計測は、計測ではありません。
実際に行っていること
数時間おきにプロトコルのハンドシェイクを行い、ツール一覧を要求し、返ってきたものを記録します。どの版で合意したか、どれだけ時間がかかったか、何が失敗したか。結果はすべて追記であり、編集しません。上書きしないので、私たちが間違っていたときでも履歴は正直なままです。
ツールは呼びます。ただし一部だけ
サーバーが応答するだけなのか、実際に動くのかを知るには、何かを呼ぶ必要があります。そこで一度だけスモーク呼び出しを行い、対象となるツールについては厳格です。読み取り専用で、必須パラメータがなく、名前が曖昧さのない語で始まること — list、get、search、status、info、ping、health、read、describe。
作成、削除、送信、支払い、変更の可能性があるものには決して触れません。該当するツールがなければ、推測せずに「テストを省略した」と記録します。計測のために対象のシステムを変えるつもりはありません。
意図的に速度を落としています
探索はアルファベット順ではなくホスト単位に分散させ、特定の事業者に負荷が集中しないようにしています。ホストあたり同時リクエストは最大二件、その間隔は最低でも 0.5 秒。何千ものサーバーがごく少数のプラットフォームの背後にあり、素朴なスキャンは攻撃とよく似て見えます。
決して収集しないもの
- ツールの結果。呼び出しが成功したことと所要時間は記録しますが、何が返ってきたかは記録しません。
- 認証の壁の向こうにあるもの。サーバーが資格情報を求めるなら、そのまま未読にします。鍵を探し回ることはしません。
- プロキシ経由のもの。ツール一覧がコネクタ経由でしか得られない場合は、一覧を読んでそこで止めます。ツールを呼べば他人のクォータを消費することになるからです。
そして私たちが間違っていたとき
最近、壊れていると記録していたサーバーが 387 台見つかりました。サーバーは正常で、誤ったトランスポートを話していたのは私たちでした。公開の場で計測することの正直な側面は、自分の誤りもまたデータの一部になるということです。そしてそれを公に訂正することだけが、残りのすべてを信頼に足るものにします。
データを自分で確かめる