Référence de configuration MCP
Ce document décrit toutes les options de configuration pour le client MCP (Model Context Protocol) dans mini-me.
Aperçu
La configuration MCP fait partie du fichier de configuration principal (généralement agent.yaml). Le bloc MCP configure le client et ses serveurs.
Structure de configuration
mcp:
enabled: true # Activer/désactiver la prise en charge MCP
permissions: ask # Mode de permission par défaut
discoveryTimeout: 10s # Délai d'attente pour la découverte des outils
servers: # Liste des serveurs MCP
- name: nom-du-serveur
transport: http # Type de transport (http ou stdio)
url: https://example.com/mcp # URL pour le transport HTTP
timeout: 30s # Délai d'attente des requêtes
auth: # Authentification
type: bearer # Type d'auth : none, bearer, api_key
tokenEnv: VAR_TOKEN # Variable d'environnement pour le token bearer
apiKeyEnv: VAR_CLE_API # Variable d'environnement pour la clé API
apiKeyHeader: X-API-Key # Nom de l'en-tête pour la clé API
headers: # En-têtes HTTP personnalisés
Accept: "application/json, text/event-stream"
permissions: ask # Remplacer les permissions globales pour ce serveur
tools: # Optionnel : Filtrer les outils à exposer
- nom_outil_1
- nom_outil_2
Options de niveau supérieur
enabled
- Type :
boolean - Valeur par défaut :
false - Description : Active ou désactive entièrement la prise en charge du client MCP.
- Exemple :
enabled: true
permissions
- Type :
string - Valeur par défaut :
ask - Valeurs valides :
ask,auto - Description : Mode de permission par défaut pour les outils MCP.
ask: Demande à l'utilisateur avant d'exécuter chaque outil MCPauto: Exécute les outils MCP automatiquement sans demande
- Exemple :
permissions: ask
discoveryTimeout
- Type :
duration - Valeur par défaut :
5s - Description : Délai d'attente pour la découverte des outils depuis tous les serveurs MCP au démarrage. Si la découverte prend plus de temps, le serveur sera ignoré avec un avertissement.
- Exemple :
discoveryTimeout: 10s
Configuration du serveur
Chaque serveur dans la liste servers peut avoir les options suivantes :
name (Obligatoire)
- Type :
string - Description : Identifiant unique pour ce serveur MCP. Utilisé comme préfixe pour les noms d'outils (ex:
github_list_repos). - Exemple :
name: github
transport (Obligatoire)
- Type :
string - Valeurs valides :
http,stdio - Description : Protocole de transport pour la connexion au serveur MCP.
http: Transport HTTP/HTTPS (pour les serveurs MCP streamables via HTTP)stdio: Transport standard entrée/sortie (N'EST PAS ENCORE IMPLÉMENTÉ dans mini-me)
- Exemple :
transport: http
url (Obligatoire pour le transport HTTP)
- Type :
string - Description : Point de terminaison URL du serveur MCP. Pour le transport HTTP, ceci doit être l'URL complète incluant le chemin
/mcpsi requis. - Exemples :
url: https://api.githubcopilot.com/mcp/url: https://wikipedia-mcp.vercel.app/mcpurl: https://mcp.context7.com/mcp
timeout
- Type :
duration - Valeur par défaut :
30s - Description : Délai d'attente pour les requêtes individuelles vers ce serveur MCP.
- Exemple :
timeout: 60s
Options d'authentification
Le bloc auth configure l'authentification pour le serveur MCP.
type
- Type :
string - Valeurs valides :
none,bearer,api_key - Description : Méthode d'authentification pour le serveur MCP.
type: none
Aucune authentification requise. Le serveur accepte les requêtes non authentifiées.
Exemple :
auth:
type: none
Cas d'utilisation : Serveurs MCP publics comme Wikipedia.
type: bearer
Authentification par token Bearer (en-tête HTTP Authorization).
Requis : tokenEnv
Exemple :
auth:
type: bearer
tokenEnv: GITHUB_PERSONAL_ACCESS_TOKEN
Cas d'utilisation : Serveur MCP GitHub, Context7.
type: api_key
Authentification par clé API (en-tête personnalisé).
Requis : apiKeyEnv, apiKeyHeader
Exemple :
auth:
type: api_key
apiKeyEnv: HASDATA_API_KEY
apiKeyHeader: x-api-key
Cas d'utilisation : Serveur MCP DuckDuckGo (via HasData).
Options spécifiques au serveur
headers
- Type :
map[string]string - Description : En-têtes HTTP personnalisés à envoyer avec chaque requête.
- Exemple :
headers:
Accept: "application/json, text/event-stream"
Custom-Header: "valeur-personnalisée"
permissions
- Type :
string - Valeur par défaut : Hérite de
mcp.permissionsglobal - Valeurs valides :
ask,auto - Description : Remplace le paramètre de permission global pour ce serveur spécifique.
- Exemple :
permissions: auto
tools
- Type :
list<string> - Valeur par défaut : Tous les outils du serveur
- Description : Liste optionnelle des outils à exposer depuis ce serveur. Si non spécifié, tous les outils découverts seront disponibles. Si spécifié, seuls les outils listés seront disponibles.
- Exemple :
tools:
- get_me
- list_repositories
- search_code
Exemples de configuration complète
Serveur MCP Wikipedia
mcp:
enabled: true
servers:
- name: wikipedia
transport: http
url: https://wikipedia-mcp.vercel.app/mcp
timeout: 30s
auth:
type: none
Serveur MCP Context7
mcp:
enabled: true
servers:
- name: context7
transport: http
url: https://mcp.context7.com/mcp
timeout: 60s
auth:
type: bearer
tokenEnv: CONTEXT7_API_KEY
headers:
Accept: "application/json, text/event-stream"
Serveur MCP GitHub
mcp:
enabled: true
servers:
- name: github
transport: http
url: https://api.githubcopilot.com/mcp/
timeout: 60s
auth:
type: bearer
tokenEnv: GITHUB_PERSONAL_ACCESS_TOKEN
headers:
Accept: "application/json, text/event-stream"
tools:
- get_me
- list_repositories
- list_issues
- get_file_contents
- search_code
Serveurs multiples
mcp:
enabled: true
permissions: ask
discoveryTimeout: 15s
servers:
- name: wikipedia
transport: http
url: https://wikipedia-mcp.vercel.app/mcp
auth:
type: none
- name: context7
transport: http
url: https://mcp.context7.com/mcp
auth:
type: bearer
tokenEnv: CONTEXT7_API_KEY
- name: github
transport: http
url: https://api.githubcopilot.com/mcp/
auth:
type: bearer
tokenEnv: GITHUB_PERSONAL_ACCESS_TOKEN
tools:
- get_me
- list_repositories
Variables d'environnement
| Variable | Serveur | Description |
|---|---|---|
GITHUB_PERSONAL_ACCESS_TOKEN |
GitHub | Token d'accès personnel GitHub |
CONTEXT7_API_KEY |
Context7 | Clé API Context7 |
HASDATA_API_KEY |
DuckDuckGo/HasData | Clé API HasData |
Validation
Les configurations de serveur sont validées au démarrage. Erreurs de validation courantes :
- Champs requis manquants (
name,transport,url) - Type
transportinvalide - Type
auth.typeinvalide - Variable d'environnement manquante pour l'authentification
- Durée de délai d'attente invalide
Les erreurs seront affichées sous forme d'avertissements au démarrage.
Considérations de performance
- Chaque serveur MCP est découverts au démarrage, ce qui ajoute au temps de démarrage
discoveryTimeoutlimite le temps d'attente pour les serveurs lents- Le filtrage des outils avec l'option
toolsréduit le temps de démarrage - Les serveurs dont la découverte échoue seront ignorés avec un avertissement
Remarques de sécurité
- Ne commitez jamais de secrets dans le contrôle de version : Les variables d'environnement sont le moyen le plus sûr de fournir l'authentification
- Utilisez le principe du moindre privilège : N'accordez que les autorisations minimales requises pour chaque serveur MCP
- Vérifiez la confiance du serveur : Ne vous connectez qu'aux serveurs MCP en lesquels vous avez confiance, car ils peuvent exécuter des outils arbitraires
- Mode de permission : Utilisez
permissions: askpour la production afin d'éviter l'exécution inattendue d'outils
Voir aussi
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 |
|