Research2026年5月17日Abcas Security Research
JavaScript 5,389件、Python 2,470件: MCP実装言語の偏り
詳細プロファイル集計ではJavaScriptが5,389件、Pythonが2,470件だった。MCPレビューでは、Node/npmとPython packageの供給網・実行モデルを優先的に見る必要がある。
用語
| 用語 | 意味 |
|---|---|
| Public Registry | 公開Registryで検索可能な検査済みMCP候補 |
| 検査プロファイル根拠 | 公開候補を詳しく読むための検査プロファイル集計 |
| 確認対象 | WARN、NEED_REVIEW、RESTRICT、BLOCKのいずれかに分類され、導入前に理由を読むべき候補 |
リード
MCPの実装言語は均等ではない。JavaScriptとPythonが大きいことは、npm install、npx、pip、uvx、依存package、postinstall、仮想環境の扱いをレビュー対象にする必要があることを示す。
Key Findings
- 詳細プロファイル集計ではJavaScriptが5,389件、Pythonが2,470件だった。MCPレビューでは、Node/npmとPython packageの供給網・実行モデルを優先的に見る必要がある。
- 20,629件の公開Registryと11,627件の検査プロファイル根拠を分けて読む必要がある。
- 観測事実は導入判断の入口であり、個別環境の最終承認を代替しない。
- 数値はスナップショット根拠であり、導入判断では観測日時も確認する必要がある。
データセット
| 項目 | 値 |
|---|---|
| 記事日付 | 2026-05-17 |
| Public Registry snapshot | 20,629件、2026-06-06T01:17:38.963Z時点 |
| 詳細プロファイル根拠 | 11,627行、2026-05-20/21生成 |
| 公開できる粒度 | 集計値、分布、匿名化した観測、実務上の読み方 |
観測指標
| 指標 | 件数 | 読み方 |
|---|---|---|
| JavaScript | 5,389 | 最大の実装言語グループ |
| Python | 2,470 | 2番目に大きい実装言語グループ |
| Unknown language | 3,208 | 公開情報から実装言語が閉じない候補 |
観測事実
MCPの実装言語は均等ではない。JavaScriptとPythonが大きいことは、npm install、npx、pip、uvx、依存package、postinstall、仮想環境の扱いをレビュー対象にする必要があることを示す。 この切り口は、MCPを単なるプラグイン一覧ではなく、AIエージェントに渡す権限の集合として見るために重要である。
実務上の読み方
言語別にレビュー観点を変える。Node系はpackage sourceとinstall挙動、Python系は実行entrypoint、依存関係、ローカル権限を重点的に確認する。 レビューでは、候補名やREADMEだけでなく、実行場所、接続先、扱うデータ、未確認事項をセットで残す。
限界
- 公開可能な集計と匿名化された観測に限定し、内部判定ロジックは扱わない。
- 数値はスナップショットであり、Registry更新により変わる。
- 特定のMCPサーバーを名指しで安全または危険と断定するものではない。
まとめ
言語別にレビュー観点を変える。Node系はpackage sourceとinstall挙動、Python系は実行entrypoint、依存関係、ローカル権限を重点的に確認する。 この記録を残すことで、導入前レビューで同じ確認漏れを繰り返しにくくなる。
MCP Guard は、Public Registry と検査プロファイルをもとに、MCP導入前に確認すべき根拠を継続的に整理している。
