Desktop Extensions(.mcpb): MCPサーバーをワンクリックインストール可能にしたAnthropicの革新
MCPの課題:設定が複雑すぎた
Anthropicが2024年末にModel Context Protocol(MCP)をリリースして以来、デベロッパーたちは驚くべきツールを生み出してきた。ファイルシステム、データベース、開発ツールまで、Claudeをローカル環境のあらゆるリソースに接続するMCPサーバーが次々と登場した。
しかし、ユーザーからは一貫して同じ声が届いていた——「インストールが難しすぎる」。
具体的には以下のような壁があった:
- 開発者ツールが必要: Node.jsやPythonのランタイムをインストールしなければならない
- 手動設定ファイルの編集: JSONファイルを直接書き換える必要がある
- 依存関係の地獄: パッケージの競合やバージョンの不一致に悩まされる
- 発見手段の欠如: 有用なMCPサーバーを探すにはGitHubを漁るしかない
- 更新の複雑さ: バージョンアップのたびに手動で再インストール
結果として、MCPサーバーは強力でありながら、技術者以外にはほぼ手が届かない存在になってしまっていた。
Desktop Extensionsとは:.mcpbファイルの登場
Anthropicは2025年6月、この問題を根本から解決する仕組みとしてDesktop Extensionsを発表した。当初は.dxtという拡張子だったが、2025年9月に.mcpb(MCP Bundle)へと改名された。既存の.dxtファイルも引き続き動作するが、新しい拡張子の使用が推奨されている。
Desktop Extensionsの核心はシンプルだ。MCPサーバーを丸ごと1つのファイルにパッケージ化する。依存関係も、設定テンプレートも、アイコンも、すべてひとまとめにする。ユーザーがやるべきことは:
.mcpbファイルをダウンロードする- ダブルクリックしてClaude Desktopで開く
- 「Install」ボタンをクリックする
これだけだ。ターミナルも設定ファイルの編集も不要。ブラウザの拡張機能をインストールする感覚で、MCPサーバーを導入できる。
Before / After:圧倒的な違い
従来の手順と新しい手順を比較してみよう。
従来(Before)
# まずNode.jsをインストール
brew install node
# MCPサーバーをグローバルインストール
npm install -g @example/mcp-server
# 設定ファイルを手動編集
vim ~/.claude/claude_desktop_config.json
# → JSON構文エラーに注意
# Claude Desktopを再起動
# → 動くことを祈る
新方式(After)
.mcpbファイルをダウンロード- ダブルクリック
- 「Install」をクリック
文字通り3ステップ。ターミナルを開く必要すらない。
技術構造:.mcpbファイルの中身
.mcpbファイルの実体はZIPアーカイブだ。中身は以下のような構造になっている:
extension.mcpb (ZIP archive)
├── manifest.json # 拡張機能のメタデータと設定
├── server/ # MCPサーバーの実装
│ └── index.js # エントリーポイント
├── node_modules/ # バンドルされた依存パッケージ
├── package.json # NPMパッケージ定義(任意)
└── icon.png # アイコン(任意)
必須なのはmanifest.jsonだけ。あとは拡張機能の規模に応じて必要なものを含めればよい。
サポートされているサーバータイプは3種類:
- Node.js — Claude Desktopに内蔵のランタイムで動作(外部インストール不要)
- Python — 必要なパッケージを
lib/にバンドルして同梱 - Binary — コンパイル済みの実行ファイルをそのままパッケージ化
特にNode.jsについては、Claude Desktop自体にランタイムが内蔵されているため、ユーザー側でNode.jsをインストールする必要がない。これが「ワンクリック」を実現する大きな要素だ。
manifest.jsonの設計:宣言的設定の妙味
Desktop Extensionsの肝はmanifest.jsonにある。特に優秀なのが、ユーザー設定の宣言的定義だ。
例えば、APIキーを必要とする拡張機能を考えてみよう。開発者はmanifest.jsonにこう書く:
{
"user_config": {
"api_key": {
"type": "string",
"title": "API Key",
"description": "Your API key for authentication",
"sensitive": true,
"required": true
}
},
"server": {
"type": "node",
"entry_point": "server/index.js",
"mcp_config": {
"command": "node",
"args": ["${__dirname}/server/index.js"],
"env": {
"API_KEY": "${user_config.api_key}"
}
}
}
}
重要なポイント:
${user_config.api_key}— テンプレートリテラルを使い、ユーザーが入力したAPIキーを自動的に環境変数に注入${__dirname}— 拡張機能の展開先ディレクトリパスに自動置換sensitive: true— この値はOSのキーチェーン(macOSならKeychain、WindowsならCredential Manager)に安全に保存される
ユーザーはClaude Desktop上で入力フォームに値を入力するだけ。JSONファイルを編集する必要はない。また、required: trueが設定された項目は、ユーザーが値を入力するまで拡張機能が有効化されない——設定漏れによるエラーを未然に防ぐ仕組みだ。
オープンなエコシステムの構築
AnthropicはDesktop Extensionsの仕様をオープンソースとして公開した。これは重要な意味を持つ:
- Claude Desktop以外のアプリでも使える: MCPB形式はどのAIデスクトップアプリでも実装可能
- 開発者は一度パッケージ化すればどこでも動く: 「Package once, run anywhere」
- アプリ開発者はゼロから構築不要: 仕様と参照実装が公開されている
さらに、Claude Desktop内には拡張機能ディレクトリが統合されている。ユーザーはGitHubを検索することなく、公式ディレクトリからワンクリックで拡張機能を閲覧・検索・インストールできる。拡張機能の提出はGoogle Formから受け付けており、Anthropicチームが品質とセキュリティを審査する。
仕様はバージョン0.1としてスタートしており、コミュニティのフィードバックを取り入れながら進化させていく方針だ。
エンタープライズ対応:企業でも安心
拡張機能の導入はセキュリティ上の懸念も生む。特に企業環境では深刻な問題になり得る。Anthropicはこれを念頭に置いて設計している:
ユーザー向けの保護
- 機密データ(APIキー等)はOSのキーチェーンに保存——平文ファイルには書き込まれない
- 拡張機能の自動更新
- インストール済み拡張機能の監査機能
エンタープライズ向けの管理機能
- Group Policy(Windows) / MDM(macOS)による一元管理
- 承認済み拡張機能の事前インストール
- 特定の拡張機能やパブリッシャーのブロックリスト
- 拡張機能ディレクトリ自体の無効化
企業のIT管理者は、ポリシー1つで社内のClaude Desktop環境をコントロールできる。これにより、セキュリティチームの承認を得た上で、従業員にMCP拡張機能を安全に利用させることが可能になる。
まとめ:MCPの民主化が始まった
Desktop Extensions(.mcpb)がもたらした変化を一言で表すなら、「MCPの民主化」だ。
これまでMCPサーバーは、ターミナルを使いこなせるデベロッパーだけの特権だった。Node.jsのバージョン管理、JSONの手動編集、依存関係の解決——技術的なハードルが高すぎて、本来の恩恵を受けたい非技術ユーザーほど使えなかった。
Desktop Extensionsはその壁を取り払った。.mcpbファイルをダブルクリックして「Install」を押すだけ。ブラウザの拡張機能と同じ感覚で、AIに新しい能力を与えられる。
そして仕様はオープン。Claude Desktopだけでなく、あらゆるAIデスクトップアプリがこの形式をサポートできる。「Package once, run anywhere」の世界が、MCPサーバーの世界にもやってきた。
開発者でなくても、ターミナルを開かなくても、AIの力を拡張できる時代が始まっている。