Ajouter un nouveau MCP
MCPs dans le menu en haut à droite du panneau Cascade, ou depuis
la section Windsurf Settings > Cascade > MCP Servers.
Si vous ne trouvez pas le MCP souhaité, vous pouvez l’ajouter manuellement en modifiant directement le fichier brut mcp_config.json.
Les MCP officiels apparaissent avec une coche bleue, indiquant qu’ils sont fournis par le service d’origine.
Quand vous cliquez sur un MCP, il suffit de cliquer sur Install pour rendre le serveur et ses outils accessibles à Cascade.
Windsurf prend en charge trois types de transport pour les serveurs MCP : stdio, Streamable HTTP et SSE.
Windsurf prend également en charge OAuth pour chaque type de transport.
Pour les serveurs http, l’URL doit correspondre à celle de l’endpoint et être de la forme https://<your-server-url>/mcp.

Configuration des outils MCP
MCPs dans le menu en haut à droite du panneau Cascade, puis sélectionnez le MCP souhaité.

mcp_config.json
~/.codeium/windsurf/mcp_config.json est un fichier JSON qui répertorie les serveurs auxquels Cascade peut se connecter.
Voici un exemple de configuration, qui définit un seul serveur pour GitHub :
Exemples de serveurs MCP populaires
mcp_config.json.
GitHub
Gestion de dépôts, opérations sur les fichiers et intégration à l’API GitHub.
GitHub
Gestion de dépôts, opérations sur les fichiers et intégration à l’API GitHub.
Slack
Gestion de canaux et messagerie pour les workspaces Slack.
Slack
Gestion de canaux et messagerie pour les workspaces Slack.
- Créez une Slack App sur api.slack.com/apps
- Ajoutez les scopes OAuth nécessaires (par exemple :
channels:read,chat:write,users:read) - Installez l’app sur votre workspace et copiez le Bot User OAuth Token
PostgreSQL
Accès en lecture seule à la base de données avec inspection du schéma.
PostgreSQL
Accès en lecture seule à la base de données avec inspection du schéma.
Filesystem
Opérations sur les fichiers sécurisées avec contrôles d’accès configurables.
Filesystem
Opérations sur les fichiers sécurisées avec contrôles d’accès configurables.
Brave Search
Recherche web et locale via l’API Brave Search.
Brave Search
Recherche web et locale via l’API Brave Search.
Memory
Système de mémoire persistante basé sur un graphe de connaissances.
Memory
Système de mémoire persistante basé sur un graphe de connaissances.
MCP HTTP distants
serverUrl ou url.
Voici un exemple de configuration pour un serveur HTTP :
Interpolation de la configuration
~/.codeium/windsurf/mcp_config.json gère l’interpolation des
variables d’environnement dans les champs suivants : command, args, env, serverUrl, url et
headers.
Voici un exemple de configuration qui utilise une variable d’environnement AUTH_TOKEN
dans headers.
Contrôles d’administration (Teams & Enterprises)
Paramètres MCP de l'équipe
mcp_config.json de l’utilisateur.Fonctionnement de la correspondance de serveurs
- Correspondance sur la chaîne complète : Tous les motifs sont automatiquement ancrés (encapsulés avec
^(?:pattern)$) pour éviter les correspondances partielles - Champ Command : Doit correspondre exactement ou selon votre motif regex
- Tableau d’arguments : Chaque argument est comparé individuellement à son motif correspondant
- Longueur du tableau : Le nombre d’arguments doit correspondre exactement entre la liste d’autorisation et la configuration utilisateur
- Caractères spéciaux : Des caractères comme
$,.,[,],(,)ont une signification particulière en regex et doivent être échappés avec\si vous souhaitez une correspondance littérale
Options de configuration
Option 1 : Plugin Store par défaut (recommandé)
Laissez le champ Server Config (JSON) vide pour utiliser la configuration par défaut fournie par le Windsurf MCP Plugin Store.
Option 1 : Plugin Store par défaut (recommandé)
Laissez le champ Server Config (JSON) vide pour utiliser la configuration par défaut fournie par le Windsurf MCP Plugin Store.
- Server ID:
github-mcp-server - Server Config (JSON): (laisser vide)
mcp_config.json) :Option 2 : Correspondance exacte de la configuration
Fournissez la configuration exacte que les utilisateurs doivent appliquer. Les utilisateurs doivent s’y conformer strictement.
Option 2 : Correspondance exacte de la configuration
Fournissez la configuration exacte que les utilisateurs doivent appliquer. Les utilisateurs doivent s’y conformer strictement.
- Server ID:
github-mcp-server - Server Config (JSON):
mcp_config.json) :command ou args sera bloquée. La section env peut contenir des valeurs différentes.Option 3 : Modèles d’expressions régulières flexibles
Utilisez des expressions régulières pour autoriser des variations dans les configurations utilisateur tout en conservant des contrôles de sécurité.
Option 3 : Modèles d’expressions régulières flexibles
Utilisez des expressions régulières pour autoriser des variations dans les configurations utilisateur tout en conservant des contrôles de sécurité.
- Server ID:
python-mcp-server - Server Config (JSON):
mcp_config.json) :- La regex
/.*\\.pycorrespond à n’importe quel chemin vers un fichier Python, comme/home/user/my_server.py - La regex
[0-9]+correspond à n’importe quel port numérique, comme8080ou3000 - Les utilisateurs peuvent personnaliser les chemins de fichiers et les ports, tandis que les administrateurs s’assurent que seuls des scripts Python sont exécutés
Motifs regex courants
| Motif | Correspond à | Exemple |
|---|---|---|
.* | N’importe quelle chaîne | /home/user/script.py |
[0-9]+ | N’importe quel nombre | 8080, 3000 |
[a-zA-Z0-9_]+ | Alphanumérique + underscore | api_key_123 |
\\$HOME | Littéral $HOME | $HOME (non développé) |
\\.py | Littéral .py | script.py |
\\[cli\\] | Littéral [cli] | mcp[cli] |
Remarques
Directives de configuration administrateur
- Variables d’environnement : La section
envn’est pas soumise à une correspondance par regex et peut être configurée librement par les utilisateurs - Outils désactivés : Le tableau
disabledToolsest géré séparément et ne fait pas partie de la correspondance par liste d’autorisation - Sensibilité à la casse : Toutes les correspondances sont sensibles à la casse
- Gestion des erreurs : Les expressions régulières invalides seront consignées et entraîneront un refus d’accès
- Tests : Testez soigneusement vos expressions régulières — des motifs trop restrictifs peuvent bloquer des cas d’usage légitimes
Dépannage
- Vérifier la correspondance exacte : Assurez-vous que le motif de la liste d’autorisation correspond exactement à la configuration de l’utilisateur
- Vérifier l’échappement des expressions régulières : Certains caractères spéciaux doivent être échappés (p. ex.,
\.pour un point littéral) - Consulter les logs : Les motifs d’expressions régulières invalides sont consignés avec des avertissements
- Tester les motifs : Utilisez un testeur d’expressions régulières pour vérifier que vos motifs fonctionnent comme prévu