tools/call à travers votre
politique firewall avant qu’il n’atteigne le vrai
serveur.
Cette page couvre cette unique tâche — connecter et configurer un
enregistrement de serveur. Pour le comportement d’exécution de la passerelle et
les verdicts par appel, voir la
référence MCP ; pour la vue d’ensemble, commencez
à l’aperçu de la sécurité MCP.
L’enregistrement est une action console (les routes
/api/workspace/firewall/* s’authentifient avec votre token de session /
d’accès, pas une clé relais sk-orca-…). Les écritures requièrent le rôle
Developer+ ; tout membre peut lister les serveurs.1. Comment connecter un serveur MCP
Ouvrez Firewall → MCP Servers dans la console et ajoutez un serveur, ou appelez directement l’API d’espace de travail. Un enregistrement porte quatre choses qui comptent :name
Unique par espace de travail. Il devient le préfixe de namespace
<server>.<tool>, donc un nom dupliqué dans le même espace de travail est
rejeté avec HTTP 409.endpoint
L’URL de votre serveur MCP distant. Laissez-le vide pour enregistrer le
serveur in-process intégré afin qu’il soit visible et gouvernable.
auth_mode
Comment la passerelle s’authentifie auprès de votre serveur :
none,
bearer, oauth, ou basic.credentials
Le secret spécifique au mode. Stocké chiffré au repos et masqué en
lecture — il n’atteint jamais le modèle ni le client.
enabled et est entièrement retiré de la passerelle dès que
vous le désactivez — c’est l’interrupteur d’arrêt, et les credentials d’un
serveur désactivé ne sont jamais déchiffrés.
2. Un exemple concret
Enregistrez un serveur MCP GitHub distant avec un bearer token. Ceci est un appel REST équivalent à la console ; les noms de champs sont exactement ce que le formulaire écrit.auth_mode :
bearer
bearer
{"token":"…"} — envoyé comme bearer token à votre serveur.oauth
oauth
{"access_token":"…"} — un access token statique que la passerelle envoie
comme en-tête bearer. L’échange automatique de client-credentials n’est pas
encore pris en charge ; sans access_token stocké, un sondage en mode
oauth échoue plutôt que de se connecter non authentifié.basic
basic
{"username":"…","password":"…"}.none
none
Une chaîne vide. Aucun credential n’est attaché.
3. Sonder sa santé
Avant de pouvoir rédiger des règles firewall contre les outils d’un serveur, vous devez savoir qu’ils sont joignables et comment ils s’appellent. Sondez le serveur — la passerelle exécute un handshake MCPinitialize +
tools/list en utilisant les credentials déchiffrés, enregistre la
joignabilité et renvoie les outils annoncés :
status atterrit dans l’enregistrement du serveur et pilote l’indicateur de
santé :
| status | Signification |
|---|---|
ok | Joignable ; les outils sont servis par la passerelle. |
degraded | Joignable, mais le handshake était partiel. |
down | Injoignable au dernier sondage ; le serveur est ignoré. |
down est laissé de côté lorsque la passerelle construit son
ensemble d’outils, de sorte qu’une panne transitoire se dégrade
gracieusement au lieu de casser le dispatch. Un sondage renvoie son résultat
quel que soit le résultat — un sondage échoué revient en 200 avec
status: down et une raison nettoyée, pas une erreur de transport.
Chaque changement d’enregistrement invalide immédiatement le cache d’outils par
espace de travail de la passerelle, de sorte qu’un serveur nouvellement
connecté, désactivé ou re-sondé prend effet à la prochaine connexion plutôt
qu’après une fenêtre de cache.
4. Une fois connecté
Une fois un serveur enregistré et sondantok, ses outils sont gouvernés :
- Chaque appel est évalué. Chaque
tools/callpasse par votre politique firewall sur la surfacemcpavant d’atteindre votre serveur. Cadrez les règles avectool_name_glob: github.*maintenant que vous connaissez les noms d’outils. - Verrouillez la surface. Refusez par défaut les outils que vous n’avez pas explicitement autorisés — voir lister les outils MCP autorisés.
- Gouvernez où il atteint. Rédigez une règle d’egress pour qu’un outil ne puisse pas récupérer des hôtes arbitraires.
- Surveillez les changements. Un serveur en qui vous aviez confiance peut changer ses définitions d’outils après coup ; la défense contre le rug pull signale cette dérive.
5. Référence API
Toutes les routes console sont à portée d’espace de travail et s’authentifient avec votre token de session / d’accès. Les lectures de listes sont ouvertes à tout Member (secrets masqués) ; chaque écriture requiert Developer+.| Méthode & chemin | Rôle | Objectif |
|---|---|---|
GET /api/workspace/firewall/mcp_servers | Member | Lister les serveurs (secrets + endpoint masqués). |
GET /api/workspace/firewall/mcp_servers/:id | Member | Un seul serveur, masqué. |
POST /api/workspace/firewall/mcp_servers | Developer+ | Enregistrer un serveur (409 sur nom dupliqué). |
PUT /api/workspace/firewall/mcp_servers | Developer+ | Mettre à jour un serveur (id dans le corps). |
DELETE /api/workspace/firewall/mcp_servers/:id | Developer+ | Suppression douce ; libère le nom. |
POST /api/workspace/firewall/mcp_servers/:id/probe | Developer+ | Sonder la joignabilité + découvrir les outils. |
GET /api/v1/firewall/mcp_servers (serveurs activés uniquement).
Pour savoir comment authentifier ce côté, voir
authentifier la passerelle MCP.
Pourquoi se connecter à travers OrcaRouter ? Pour qu’un seul endroit voie
chaque appel d’outil — une connexion, une politique, un journal audité, et des
credentials injectés au dispatch au lieu d’être éparpillés dans les configs
d’agents. Lisez
sécuriser les agents IA et la
menace d’empoisonnement d’outils MCP
pour la motivation.
Connexe
Aperçu de la sécurité MCP
Le modèle complet de gouvernance MCP, de bout en bout.
Firewall : serveurs MCP
Le comportement d’exécution de la passerelle et les verdicts par appel.
Authentifier la passerelle
Émettre et cadrer le token avec lequel votre agent se connecte.
Checklist de confiance
Tout à vérifier avant de faire confiance à un nouveau serveur.
