Outils MCP
Des serveurs d'outils externes derrière la même écluse de conformité, avec des droits par clé refusés par défaut.
Enregistrez des serveurs d'outils MCP externes (HTTP, SSE ou stdio) dans la Console avec des tags de résidence ; les secrets d'authentification sont scellés dans le coffre à identifiants et ne sont jamais renvoyés.

Chaque appel d'outil franchit la même écluse qu'une chat completion : Inspecter (protection des données sur les arguments), Router (résidence sur le serveur), Sceller (chaîne d'audit), Mesurer (débit et budget). Les autorisations d'outils sont par clé et refusées par défaut. Sluis répond aussi à POST /v1/mcp en tant que serveur MCP lui-même, en exposant exactement les outils accordés à la clé appelante.
# list the tools this key is granted (deny-by-default) curl https://api.sluis.ai/v1/mcp \ -H "Authorization: Bearer $SLUIS_KEY" \ -d '{ "jsonrpc": "2.0", "id": 1, "method": "tools/list" }' # every tools/call clears Inspect → Route → Seal → Meter
# invoke a granted tool — the call clears Inspect → Route → Seal → Meter curl https://api.sluis.ai/v1/mcp \ -H "Authorization: Bearer $SLUIS_KEY" \ -d '{ "jsonrpc": "2.0", "id": 2, "method": "tools/call", "params": { "name": "crm.lookup", "arguments": { "email": "j.devries@acme.nl" } } }'
{
"jsonrpc": "2.0",
"id": 2,
"result": {
"content": [{ "type": "text", "text": "1 match: account 8817, status active" }]
}
}Authentification MCP : deux directions
Identifiants statiques du serveur
Utilisez headers pour des en-têtes fixes. La valeur historique oauth désigne un jeton OAuth bearer statique dans le coffre, pas une connexion par navigateur.
Mode de compte
Pour OAuth interactif : Organisation (account_mode=organization) utilise une identité partagée explicitement connectée par un administrateur via OAuth, jamais un identifiant personnel réutilisé. Chaque utilisateur (account_mode=user) utilise uniquement la connexion du membre qui agit. L’authentification est distincte : OAuth interactif utilise user_oauth ; la valeur historique oauth reste un jeton bearer statique.
Connexions personnelles en amont
En mode Chaque utilisateur, connectez-vous au service externe dans Workspace → Paramètres → Connexions. Les serveurs ajoutés par un administrateur doivent d’abord être autorisés pour Workspace. Une connexion ne contourne ni les autorisations, ni la résidence, ni la protection des données, ni les budgets. Les administrateurs peuvent consulter l’état et révoquer les connexions, mais pas utiliser l’identité d’un autre membre. Les appels sans identité utilisateur, notamment avec une clé de l’organisation, sont refusés dans ce mode. GET/PUT /chat/settings expose mcp_enabled (booléen, true par défaut pour les nouvelles organisations, les anciens paramètres et un champ absent de la réponse). Son omission dans PUT conserve la valeur actuelle, y compris false. Avec false, Workspace ne découvre aucun outil MCP et refuse leur exécution, y compris les outils déjà découverts dans les conversations existantes, les Agents et les sous-agents. Les inscriptions, approbations, autorisations et identifiants sont conservés. Les accès externes /agent/mcp, /v1/mcp et le Playground de la console ne sont pas affectés. La politique d’inscription des serveurs personnels reste indépendante et applicable à toute l’organisation. Les propriétaires et administrateurs le basculent avec Outils MCP dans les conversations Workspace, dans la configuration Workspace de la console. Lorsqu’un appel d’outil dans Workspace atteint un serveur en mode Chaque utilisateur auquel vous n’êtes pas connecté, ou que le service n’accepte plus votre connexion, l’outil renvoie connect_required et la réponse affiche une action Connecter pour ce serveur ; rien ne s’exécute sous une autre identité.
Suggestions MCP personnelles
Les suggestions MCP personnelles sont Désactivées par défaut. Exiger l’approbation d’un administrateur permet de proposer des serveurs privés réservés au demandeur. Les administrateurs examinent explicitement les outils, la résidence et l’authentification ; l’approbation ne donne jamais d’accès générique et ne rend pas automatiquement le serveur accessible à l’organisation. Les serveurs privés acceptent none (sans connexion en amont) ou OAuth interactif, pas de secrets statiques personnels. Désactivé suspend les serveurs personnels existants, sans bloquer la connexion aux serveurs ajoutés par un administrateur. La demande d’un membre ne nomme que le serveur et son endpoint ; tant qu’elle est en attente, elle ne contacte pas le serveur et n’accorde aucun outil. L’approbation fixe la configuration examinée et une liste explicite de noms d’outils, réservée au demandeur, qui se connecte ensuite dans Connexions si le serveur utilise OAuth. Supprimer une demande approuvée révoque le serveur et ses connexions.
Se connecter à Sluis depuis un client MCP
OAuth entrant sur /agent/mcp connecte le client à Sluis via le navigateur. Cette connexion est distincte de user_oauth en amont. Approuvez l’accès dans l’organisation souhaitée. Sluis crée ou réutilise automatiquement un identifiant personnel pour les outils de ce client. Les liaisons de plugins, autorisations et politiques existantes restent applicables. Aucune clé n’est collée dans cette configuration OAuth pour les outils ; la configuration des clés pour les modèles ne change pas. Le client trouve Sluis via les documents de découverte publiés, s’enregistre et ouvre votre navigateur sur la page de consentement /console/mcp-authorize, qui affiche le client, l’organisation et les outils accessibles ; approuvez ou refusez-y l’accès. L’organisation doit avoir activé Agent Harness. Les jetons d’accès durent une heure et les jetons d’actualisation changent à chaque utilisation. Révoquez un client dans Agent Harness › Clients connectés, ce qui coupe ses jetons et sa clé d’agent personnelle.
claude mcp add --transport http sluis https://<gateway>/agent/mcp
codex mcp add sluis --url https://<gateway>/agent/mcp codex mcp login sluis
Exemples de configuration, pas une matrice d’interopérabilité vérifiée. Ces exemples ne prouvent pas l’interopérabilité avec Claude, Codex ou les fournisseurs externes.