Spécification MCPlet v202603-03
Cette page est une vue d'ensemble HTML pour une lecture rapide et l'indexation par les moteurs de recherche. Le brouillon normatif reste la source Markdown brute, mais cette vue d'ensemble présente les principaux concepts, contrats et modèle de sécurité dans un format adapté aux robots d'exploration.
Objectif et portée
MCPlet définit des unités de capacité contraintes, AI-first, avec un intent métier, un contrat d'outil MCP principal, une UI MCP Apps optionnelle, des limites de sécurité modèle-versus-application explicites et une orchestration gérée par l'hôte.
L'objectif est une interaction outil-IA prévisible, révisable et sécurisée. MCPlet est un profil de convention au-dessus de MCP et MCP Apps ; il ne redéfinit pas le transport, le runtime, le sandboxing ou l'architecture backend.
Profils d'hôte
MCPlet prend actuellement en charge deux profils d'implémentation d'hôte.
- WebUI Profile : un client MCP ou un shell d'agent qui rend l'UI MCP Apps, invoque des outils et gère la visibilité et la sécurité dans un environnement orienté utilisateur.
- Agent Profile : une couche d'orchestration composée d'agents spécialisés et d'un LLM configuré en externe, sans couche UI générale requise.
Les deux profils maintiennent les MCPlets sans état par défaut. L'état, le contexte de conversation et l'application des politiques restent des responsabilités de l'hôte.
Comment MCPlet se compare à MCP et MCP Apps
MCPlet est plus facile à comprendre en le traitant comme une couche au-dessus des standards existants plutôt que comme un remplacement.
| Couche | Rôle principal | Définit | Ne définit pas |
|---|---|---|---|
| MCP | Couche protocole | Transport, découverte et contrats d'invocation des outils et ressources. | Modélisation des intents, politique de sécurité des actions ou règles de classification opinionnées. |
| MCP Apps | Couche d'intégration UI | Rendu de la vue hôte, cycle de vie des iframes et comportement du pont applicatif. | Limites d'intent métier, classification des outils ou conventions de sécurité de l'hôte. |
| MCPlet | Profil de convention | Unités à intent unique, classification read/prepare/action, règles de visibilité, exigences d'auth et limites de sécurité gérées par l'hôte. | Transport MCP, comportement générique du runtime ou framework frontend obligatoire. |
read
Sans effets de bord et idempotent. Adapté à l'invocation autonome lorsque l'hôte autorise la visibilité du modèle.
prepare
Collecte ou valide des informations avant engagement. Utile comme point de contrôle explicite dans les flux de travail multi-étapes.
action
Provoque des effets de bord irréversibles. Nécessite une confirmation et une application plus strictes, surtout lorsque visible par le modèle.
Contrat de métadonnées code-first
MCPlet v202603-03 est explicitement code-first. Les hôtes découvrent la sémantique MCPlet via des métadonnées d'enregistrement telles que _meta.mcpletType, _meta.visibility, _meta.auth, _meta.ui et l'optionnel _meta.pool.
{
"_meta": {
"mcpletType": "action",
"visibility": ["model", "app"],
"mcpletToolResultSchemaUri": "mcplet://tool-result-schema/approve_order",
"ui": {
"resourceUri": "ui://orders/approve.html",
"displayMode": "inline"
},
"auth": {
"required": "passkey",
"enforcement": "strict",
"promptMessage": "Please authenticate with Passkey to confirm"
}
}
}
mcplet.yaml peut toujours exister pour des valeurs par défaut de rétrocompatibilité, mais ce n'est pas la source de vérité unique une fois que des métadonnées code sont présentes.
Application des Passkeys et actions protégées
Les MCPlets protégés déclarent l'authentification dans _meta.auth. Pour les outils action visibles par le modèle, l'hôte intercepte l'appel, obtient une assertion Passkey via un contexte navigateur, injecte la charge de vérification en dehors des arguments métier, et le backend MCPlet vérifie cette assertion avant toute action irréversible.
Pools, agents et limites de routage
MCPlet v202603-03 introduit des Pools nommés et des listes de Pools accessibles pour les agents. Les Pools permettent aux hôtes de regrouper les MCPlets par système cible ou portée de politique, tandis que les attributions de Pools par agent appliquent un accès à moindre privilège lors du dispatch.
Le Agent Profile distingue également entre un bus de protocole local A2A interne et un endpoint de protocole A2A externe pour les agents externes. Les hôtes restent responsables de l'authentification, de la politique et de la validation du dispatch.
Lire le brouillon complet
Le fichier Markdown brut reste la source normative du brouillon. Utilisez la vue HTML pour un balayage rapide, la FAQ pour des réponses courtes et l'avis de brevet pour le contexte de licence.
Besoin du contexte de licence ? Consultez l'avis de propriété intellectuelle.