はじめに

MCPlet ホストとツール開発者のための初めの一歩

このガイドは MCPlet v202603-03 の実装手順を凝縮しています。適切なホストプロファイルの選択、ツールの正しい分類、コードファーストのメタデータの公開、そして副作用を伴うアクションへの強力な強制適用について説明します。

バージョン v202603-03
メンテナー MCPlet Working Group
規範的ソース Markdown 原文ドラフト
更新日 2026-04-01

実装の手順

  1. ホストが WebUI Profile か Agent Profile かを選択します。これにより、MCP Apps のレンダリングがランタイムに含まれるか、確認フローの実装方法が決まります。
  2. 各ツールを read、prepare、action のいずれかに分類します。これはドキュメント上の区別ではなく、安全モデルの一部です。
  3. _meta にコードファーストのメタデータを登録します。mcpletTypevisibility、および任意の uiauthpool フィールドを含めます。
  4. ホストが構造化された結果を検証し、下流のコンシューマーが出力を安全に解釈できるよう、ツール結果スキーマ URI を公開します。
  5. モデルに見えるアクションが不可逆的な副作用を引き起こす可能性がある場合は、厳格なパスキー強制を要求します。
一つだけ覚えるなら: MCPlet を MCP の代替として扱わないこと。MCP はプロトコル層で、MCPlet はツールの動作をより安全でレビュー可能な単位に絞り込む規約層です。

1. ホストプロファイルを選択する

MCP Apps UI をレンダリングする場合は WebUI Profile を使用します。ホストが外部設定の LLM を持つ専門エージェントのオーケストレーション層である場合は Agent Profile を使用します。

2. ツールを分類する

安全な取得には read、段階的な検証には prepare、厳格な制御が必要な不可逆的副作用には action を選択します。

4. モデルに見えるアクションを保護する

アクションがモデルから見える場合は、明示的なインターセプトと強力な確認を要求します。厳格なパスキー強制が推奨されます。

MCP、MCP Apps、MCPlet の早見表

レイヤー 主な役割 提供するもの 提供しないもの
MCP プロトコル ツールとリソースのトランスポート、ディスカバリー、呼び出しのセマンティクス。 インテントモデリング、アクション安全ポリシー、またはツール分類の方針。
MCP Apps UI 統合 ホストビューのレンダリング、iframe ライフサイクル、アプリブリッジの動作。 ビジネスインテントの境界、メタデータの安全ルール、または認証規約。
MCPlet 規約プロファイル 単一インテントユニット、read/prepare/action 分類、可視性制約、認証要件、ホスト管理の安全境界。 MCP トランスポート、汎用ランタイム動作、または必須フロントエンドフレームワーク。

最小限のコードファーストメタデータの例

この例は、ツールを MCPlet にマッピングする際にほとんどの実装で最初に考慮すべきフィールドを示しています。

{
  "_meta": {
    "mcpletType": "prepare",
    "visibility": ["model", "app"],
    "mcpletToolResultSchemaUri": "mcplet://tool-result-schema/check_order",
    "ui": {
      "resourceUri": "ui://orders/check.html",
      "displayMode": "inline"
    }
  }
}

不可逆的な操作の場合は、分類を action に変更し、より厳格な強制を伴う _meta.auth を追加します。

MCPlet を使う場合と使わない場合

MCPlet を使う場合

  1. ツールごとにレビュー可能な一つのビジネスインテントが必要な場合。
  2. ホストがモデルとアプリの明確な境界を強制する必要がある場合。
  3. MCP の上にコードファーストのメタデータ契約が必要な場合。

MCPlet を使わない場合

  1. ツールの対象範囲が意図的に広く多目的な場合。
  2. 規約プロファイルではなく代替プロトコルを探している場合。
  3. ホストが状態、インターセプト、または安全ポリシーを管理できない場合。