Microsoft「Wassette」発表:Wasm-MCP AIエージェント向けOSSツール
人工知能エージェントが外部ツールやデータとどのように対話するかを再定義する重要な動きとして、MicrosoftはWebAssembly(Wasm)コンポーネントと、現在登場しているモデルコンテキストプロトコル(MCP)の間のギャップを埋めるために設計された新しいオープンソースプロジェクト「Wassette」を発表しました。MicrosoftのAzure Core UptimeチームによってRustで開発されたWassetteは、GitHub Copilot in Visual Studio Codeのような環境で実行されるものを含む、ローカルAIエージェント向けに安全に展開できる、高度にカスタマイズ可能で構成可能な機能を提供するための基礎的な一歩を象徴しています。
Wassetteの核心は、比較的シンプルでありながら強力なランタイムです。確立されたWasmtimeランタイムを活用して堅牢なサンドボックス化を行い、WebAssemblyコンポーネントを効率的にロードおよび実行します。このサンドボックス機能は非常に重要であり、最新のブラウザエンジンに匹敵するセキュリティモデルを提供します。そこでは、コンポーネントは最小権限フレームワーク内で動作し、要求されたサービスに対して明示的な権限を必要とします。Wassetteは、これらのWasmコンポーネントの厳密に型付けされたインターフェースをMCP機能に変換し、MCP対応のエージェントとのシームレスな統合を可能にします。この革新的なアプローチにより、開発者は独自のカスタムコンポーネントと公開されているWebAssemblyモジュールを組み合わせることで、安全なツールのオーダーメイドライブラリを迅速に構築し、特定のプロジェクトニーズに合わせてエージェントの機能を調整できます。
MicrosoftによるWassetteのリリースは、AIエージェントのインタラクションの標準化に向けたより広範な業界トレンドと一致しています。モデルコンテキストプロトコル(MCP)は、Anthropicが2024年11月に最初に導入して以来、急速に注目を集め、OpenAIやGoogle DeepMindといった主要なAIプレーヤーが公式に採用しています。Google DeepMindのCEOであるDemis Hassabisは、MCPを「AIエージェント時代のオープンスタンダードとして急速に確立されつつある」とまで述べており、AIツールの接続性と相互運用性を簡素化する上でのその極めて重要な役割を強調しています。Microsoft自身も、複雑なタスクを自動化することを目的としたマルチエージェントAIシステムであるMagnetic-Oneプロジェクトや、Azure AI FoundryやWindows AI Foundryなどのイニシアチブを含む、クラウドおよびエッジ環境にわたる包括的な「AIアプリおよびエージェント工場」のビジョンなど、オープンソースAIへの強いコミットメントを示しています。Wassetteは、エージェントの機能を拡張するための安全で柔軟なメカニズムを提供することで、このビジョンにぴったりと合致しています。
Wassetteの利用開始は容易に設計されています。WindowsユーザーはWinGet経由でインストールでき、Linuxユーザーはcurlとインストールスクリプトのオプションに加え、HomebrewとNixのサポートも利用できます。初期設定では、Windows Defenderでの誤検知ウイルス検出や、Visual Studio CodeでのMCPサーバーの手動登録が必要になるなど、 minorな問題が発生する可能性がありますが、開発チームはこれらの問題に積極的に対処しています。一度統合されると、WassetteはGitHub Copilotのような開発環境内で追加のツールとして表示され、エージェントが新しい機能を活用できるようになります。簡単な例がその力を示しています。リモートOCIレジストリからWebAssemblyコンポーネントとしてロードされた基本的なタイムクライアントにより、GitHub Copilotは現在の時刻を取得できるようになりました。これは、基本エージェントではネイティブに利用できない機能です。
Wassetteの拡張性とセキュリティモデルは、主要な差別化要因です。開発者は、Wasmtimeがサポートする限り、Rust、Python、JavaScript、Goなど、さまざまな言語で独自のWebAssemblyコンポーネントを記述できます。この多言語機能とWebAssemblyインターフェイスタを組み合わせることで、コンポーネントは関数を厳密に型付けされたライブラリインターフェースとして公開し、正確で制御されたインタラクションを保証します。WebAssemblyの固有のセキュリティは、デフォルトで拒否する機能システムにより、コンポーネントがネットワークアクセスなどのリソースに対する権限を明示的に要求する必要があることを意味します。これにより、ユーザーはエージェントのチャットインターフェースを介してこれらの要求を直接承認またはブロックでき、不正なデータアクセスや悪意のある活動を防ぐことができます。
将来を見据えると、Wassetteはまだ初期リリース段階であり、現在、OCIレジストリとその保存されたコンポーネントの組み込み発見機能は欠如していますが、そのオープンソースの性質は、これらの制限に対処するためのコミュニティからの貢献を促しています。開発者向けエージェントを超えて、Wassetteはより広範なアプリケーションに大きな可能性を秘めています。小規模で特殊な機能を安全かつ効率的に追加できるその能力は、CRM機能を拡張するカスタマーサービスシステムから、外部リソースやプロプライエタリデータへの安全で厳密に制御されたアクセスを必要とするあらゆるシナリオまで、多様なエージェントプラットフォームで非常に貴重となるでしょう。このモジュラーでサンドボックス化されたコードの組み合わせと、それが提供する迅速な拡張性は、以前のエージェントフレームワークの願望を反映していますが、最新のセキュリティパラダイムと広範な言語サポートという明確な利点があり、開発者は比類のない柔軟性と制御で洗練されたAIエージェントを構築できます。