AWS · MCP · IAM · API
AWS MCP donne aux agents IA un accès structuré à la documentation et aux API AWS. Le vrai sujet n’est pas l’installation : c’est la limite entre assistance utile, permissions IAM, audit CloudTrail et contrôle des actions en production.

🔐
MCP ne remplace pas IAM
Le serveur MCP ne doit exposer que les actions strictement nécessaires au rôle DevOps.
📜
CloudTrail reste la trace
Chaque appel AWS déclenché via un outil IA doit rester attribuable et vérifiable.
✅
Validation humaine obligatoire
En production, l’agent propose. Un humain valide avant toute action risquée.
📋 Au programme
AWS MCP en 30 secondes
Réponse rapide
AWS MCP connecte un agent IA à AWS via le Model Context Protocol. Il peut chercher la documentation, découvrir les API et exécuter des actions autorisées. Mais il reste soumis aux permissions IAM, aux quotas AWS et aux garde-fous que tu poses.
AWS MCP est intéressant pour une équipe DevOps parce qu’il rapproche l’agent IA du plan de contrôle AWS. L’agent ne répond plus seulement depuis sa mémoire : il peut consulter des références fraîches et proposer des appels cohérents.
Le risque est évident : si un agent peut appeler AWS, il peut aussi faire des dégâts. La question utile n’est donc pas « peut-on brancher MCP ? », mais « avec quel périmètre, quelle traçabilité et quelle procédure de validation ? ».
🔎
Documentation fraîche
L’agent peut interroger la documentation AWS récente au lieu de deviner avec un modèle obsolète.
🧰
Actions API
Certains serveurs exposent l’API AWS via des outils contrôlés, souvent adossés à AWS CLI ou IAM.
🔐
Contrôle IAM
Les permissions AWS restent la frontière réelle. MCP ne doit jamais devenir un passe-droit.
📜
Audit CloudTrail
Les appels API doivent rester visibles, attribuables et exploitables en post-incident.
Flux à garder en tête
Le point de contrôle n’est pas le prompt : ce sont les permissions IAM, les outils exposés par MCP et les journaux CloudTrail.
Ce qu’est AWS MCP, concrètement
Le Model Context Protocol est un standard client-serveur. Un client compatible, comme Cursor, Claude Code, Codex, Kiro ou un agent interne, se connecte à un serveur MCP qui expose des outils.
Côté AWS, il existe plusieurs familles. AWS Knowledge MCP donne accès à la documentation, aux API references, aux régions et aux bonnes pratiques. AWS API MCP Server permet d’interagir avec les services AWS via des commandes ou appels structurés.
AWS a aussi introduit un AWS MCP Server managé dans Agent Toolkit for AWS. Celui-ci regroupe documentation, API tools, skills, métriques CloudWatch et contrôles IAM dans une approche plus intégrée.
Ne confonds pas MCP et autorisation
MCP décrit comment l’agent parle à un outil. IAM décide ce que cet outil peut réellement faire sur AWS.
Pour une équipe infra, la bonne lecture est simple. AWS MCP n’est pas un nouveau mode magique d’administration cloud. C’est une interface d’orchestration pour agents, posée au-dessus d’API AWS déjà gouvernées.
AWS MCP et API AWS : qui fait vraiment quoi ?
L’API AWS reste le plan de contrôle. Quand une ressource est listée, créée ou modifiée, l’action finit par passer par une opération AWS signée et autorisée.
AWS MCP aide surtout l’agent à choisir la bonne opération, formater les paramètres, lire la documentation et interpréter les erreurs. Il réduit la friction, mais il ne remplace ni l’architecture ni la revue humaine.
| Couche | Rôle | Point de contrôle |
|---|---|---|
| Agent IA | Interprète la demande et choisit un outil. | Prompt, règles projet, validation humaine. |
| Serveur MCP | Expose documentation, tools et exécution encadrée. | Configuration, transport, auth, allowlist. |
| API AWS | Applique les actions sur les ressources. | IAM, SCP, quotas, CloudTrail. |
Cette séparation est importante en incident. Si un agent crée une ressource trop large ou supprime un composant, l’analyse doit retrouver l’utilisateur, le rôle IAM, l’appel API et le contexte MCP.
Pour un exemple AWS plus classique côté infrastructure, tu peux aussi lire le guide sur Route 53, DNS hybride et Terraform. Il complète bien la logique API/IaC.
Les limites d’AWS MCP à intégrer dès le départ
La première limite est celle des permissions. Un agent ne doit jamais utiliser un profil administrateur permanent. Même si l’outil semble pratique, le blast radius doit rester volontairement faible.
La deuxième limite est celle des quotas AWS. MCP ne supprime pas le throttling, les limites régionales, les quotas par service ou les erreurs de concurrence. Il peut même les atteindre plus vite si un agent boucle.
La troisième limite concerne les clients MCP. Tous ne supportent pas les mêmes transports, surtout pour les serveurs distants en HTTP streamable. Certains workflows nécessitent encore un proxy ou une configuration spécifique.
Limite critique
Un serveur AWS API MCP auto-hébergé en HTTP ne doit pas être exposé sans TLS, authentification et filtrage réseau strict.
La quatrième limite est fonctionnelle. Un agent peut générer un appel syntaxiquement correct mais stratégiquement mauvais. Créer un bucket public, ouvrir un security group ou choisir un service inadapté restent des risques métiers.
Installer AWS API MCP Server dans Claude Code, Codex et OpenCode
Le serveur AWS API MCP open source se lance généralement en local via uvx. Le profil AWS doit être explicite, temporaire si possible, et limité au périmètre du test.
Avant de le brancher à un agent, prépare un profil AWS dédié. Évite le profil personnel et commence avec une politique read-only ou un compte sandbox.
Claude Code
Claude Code fournit une commande claude mcp add. Pour un serveur local stdio, les options Claude précèdent le séparateur --, puis vient la commande qui démarre le serveur.
claude mcp add --transport stdio aws-api --env AWS_REGION=eu-west-3 --env AWS_API_MCP_PROFILE_NAME=sandbox-readonly -- uvx awslabs.aws-api-mcp-server@latest
# Vérification dans Claude Code
/mcp
Le point important côté Claude Code est la validation. Garde les actions sensibles hors auto-approval et utilise /mcp pour vérifier l’état du serveur avant une opération AWS.
Codex CLI / IDE
Codex partage la configuration MCP entre CLI et extension IDE via ~/.codex/config.toml, ou .codex/config.toml dans un projet de confiance.
[mcp_servers.aws_api]
command = "uvx"
args = ["awslabs.aws-api-mcp-server@latest"]
startup_timeout_sec = 20
tool_timeout_sec = 60
default_tools_approval_mode = "prompt"
enabled = true
[mcp_servers.aws_api.env]
AWS_REGION = "eu-west-3"
AWS_API_MCP_PROFILE_NAME = "sandbox-readonly"
READ_OPERATIONS_ONLY = "true"
Pour un ajout rapide en CLI, Codex accepte aussi codex mcp add. Le format est pratique en local, mais le fichier TOML reste meilleur pour versionner une procédure d’équipe.
codex mcp add aws-api --env AWS_REGION=eu-west-3 --env AWS_API_MCP_PROFILE_NAME=sandbox-readonly --env READ_OPERATIONS_ONLY=true -- uvx awslabs.aws-api-mcp-server@latest
# Dans la TUI Codex
/mcp
OpenCode
OpenCode déclare les serveurs MCP dans opencode.json ou opencode.jsonc, sous la clé mcp. Le type local lance une commande locale.
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"aws_api": {
"type": "local",
"command": ["uvx", "awslabs.aws-api-mcp-server@latest"],
"enabled": true,
"timeout": 20000,
"environment": {
"AWS_REGION": "eu-west-3",
"AWS_API_MCP_PROFILE_NAME": "sandbox-readonly",
"READ_OPERATIONS_ONLY": "true"
}
}
}
}
OpenCode charge ensuite les outils MCP à côté de ses outils internes. Si plusieurs MCP sont actifs, limite-les par agent ou désactive les outils inutiles pour éviter de gonfler le contexte.
Bonne pratique commune
Démarre avec READ_OPERATIONS_ONLY=true, un profil AWS dédié et aucune approbation automatique pour les changements.
Mode HTTP local : à réserver aux cas maîtrisés
Le serveur AWS API MCP supporte aussi un transport HTTP streamable. En local, limite l’écoute à 127.0.0.1 et active OAuth si l’outil le permet.
AWS_API_MCP_TRANSPORT=streamable-http AUTH_TYPE=oauth AWS_API_MCP_HOST=127.0.0.1 AWS_API_MCP_PORT=8000 uvx awslabs.aws-api-mcp-server@latest
Ne transforme pas ce mode en service partagé improvisé. La documentation AWS précise que le mode HTTP self-host est pensé pour un usage single-customer.
IAM, CloudTrail et garde-fous indispensables
Le modèle propre consiste à créer un rôle dédié à l’agent. Ce rôle doit avoir une durée courte, des permissions minimales et des conditions explicites sur les services ou environnements autorisés.
Avec l’AWS MCP Server managé, AWS indique que des clés de contexte globales permettent de différencier les actions initiées via le service MCP. C’est précieux pour écrire des politiques et filtrer l’audit.
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowReadOnlyDiscovery",
"Effect": "Allow",
"Action": [
"ec2:Describe*",
"rds:Describe*",
"cloudwatch:GetMetricData",
"cloudwatch:DescribeAlarms",
"logs:DescribeLogGroups"
],
"Resource": "*"
}
]
}
Ce type de politique ne suffit pas à tout, mais il donne une base saine pour découvrir l’environnement. Les actions comme Delete*, PutBucketPolicy ou AuthorizeSecurityGroupIngress doivent passer par une étape séparée.
CloudTrail doit être activé et exploitable. L’objectif n’est pas seulement d’avoir des logs, mais de pouvoir répondre vite : quel agent, quel rôle, quelle API, quelle ressource, quel résultat ?
Mini-lab AWS MCP en 20 minutes, sans risque
Pour tester AWS MCP sans exposer un compte de production, pars d’un périmètre volontairement limité : un profil AWS dédié, une région précise et des droits en lecture seule. L’objectif du premier test n’est pas d’automatiser AWS, mais de vérifier que l’agent comprend l’environnement, propose des actions cohérentes et laisse des traces exploitables.
Pré-requis simples
- un compte AWS sandbox ou un compte non critique ;
- un utilisateur ou rôle IAM dédié au test ;
- un profil AWS CLI nommé
sandbox-readonly; - CloudTrail actif pour vérifier les appels API ;
- validation manuelle obligatoire côté agent IA.
Policy IAM minimale pour démarrer
Cette policy sert de point de départ pour un test d’inventaire. Elle autorise uniquement la lecture sur quelques services courants. Elle ne permet pas de créer, modifier ou supprimer des ressources.
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ReadOnlyInventoryForMcpLab",
"Effect": "Allow",
"Action": [
"ec2:Describe*",
"s3:ListAllMyBuckets",
"s3:GetBucketLocation",
"s3:GetBucketEncryption",
"s3:GetBucketPublicAccessBlock",
"iam:GetAccountSummary",
"iam:ListRoles",
"iam:ListPolicies",
"cloudtrail:DescribeTrails",
"cloudtrail:GetTrailStatus",
"cloudwatch:DescribeAlarms",
"tag:GetResources"
],
"Resource": "*"
}
]
}
À ne pas ajouter au premier test
Évite les permissions Delete*, Put*, Create*, Update*, Terminate* et iam:PassRole. Si l’agent a besoin d’une action d’écriture, il doit d’abord produire une proposition relue par un humain.
Checklist de test
- Créer le rôle ou l’utilisateur IAM dédié avec la policy read-only ci-dessus.
- Configurer le profil local :
aws configure --profile sandbox-readonly. - Vérifier manuellement :
aws ec2 describe-instances --profile sandbox-readonly --region eu-west-3. - Lancer le serveur AWS MCP avec ce profil uniquement.
- Demander à l’agent de faire un inventaire, sans action corrective.
- Contrôler CloudTrail pour confirmer quels appels API ont été effectués.
Prompts prêts à copier
Inventaire EC2
“Liste les instances EC2 visibles dans eu-west-3. Ne modifie rien. Résume uniquement l’état, les tags et les risques évidents.”
Contrôle S3
“Vérifie les buckets S3 accessibles. Signale ceux sans chiffrement ou sans Public Access Block. Ne change aucune configuration.”
Préparation d’action
“Prépare la commande AWS CLI qui corrigerait ce point, mais ne l’exécute pas. Explique l’impact et le rollback.”
Vérifier les traces CloudTrail
Après le test, regarde les événements CloudTrail associés au rôle ou à l’utilisateur de lab. Tu dois retrouver les appels Describe*, List* ou Get* attendus, sans action d’écriture.
aws cloudtrail lookup-events --lookup-attributes AttributeKey=Username,AttributeValue=sandbox-readonly --region eu-west-3 --profile sandbox-readonly
Rollback propre du test
- désactiver ou supprimer les clés du profil de test ;
- retirer la policy IAM temporaire ;
- désactiver le serveur MCP dans Claude Code, Codex ou OpenCode ;
- relire CloudTrail une dernière fois pour confirmer l’absence d’action d’écriture.
Checklist production avant d’autoriser AWS MCP
Une fois le lab validé, le passage en production doit rester progressif. L’idée n’est pas de donner “AWS” à un agent, mais de publier un nombre limité d’outils, sur un périmètre connu, avec une procédure de validation.
✅ Validation avant usage réel
Dans une PME ou une équipe SaaS, je recommande de commencer avec trois scénarios : inventaire, diagnostic et génération de plan. Les changements automatisés viennent ensuite, quand l’audit et les rollback sont solides.
Cas d’usage raisonnables pour une équipe DevOps
Le meilleur premier cas est l’inventaire. L’agent peut lister des ressources, repérer des écarts évidents et préparer une synthèse lisible pour l’équipe.
Le deuxième cas est le diagnostic guidé. Sur un incident applicatif, il peut consulter métriques CloudWatch, statuts de stacks et logs récents, puis proposer une hypothèse vérifiable.
Le troisième cas est la préparation d’IaC. L’agent peut rechercher la documentation récente, proposer un module CDK, Terraform ou CloudFormation, puis laisser la CI valider le résultat.
Je déconseille de commencer par la remédiation automatique. Fermer un port, modifier une policy ou supprimer une ressource doit rester une action explicite, revue et traçable.
Erreurs courantes avec AWS MCP
⏱ Laisser l’agent boucler sur une erreur AWS
Un agent peut relancer plusieurs appels après un throttling ou une erreur IAM. Mets une limite de tentatives et force une analyse avant retry.
🔑 Utiliser le profil AWS personnel
C’est pratique en local, mais mauvais pour l’audit. Préfère un rôle nommé, assumé temporairement, avec politique dédiée.
🌍 Oublier la région
Un agent peut chercher au mauvais endroit. Fixe AWS_REGION et demande toujours la région dans les plans d’action.
🚪 Exposer le serveur MCP
Un endpoint MCP exposé sans contrôle peut devenir une API d’administration indirecte. Restreins réseau, auth et logs dès le début.
Sources officielles utiles
📚 À garder sous la main
Documentation Agent Toolkit for AWS : concepts, IAM, CloudTrail et fonctionnement.
AWS News Blog : annonce de disponibilité AWS MCP Server.
AWS Labs : AWS API MCP Server open source.
Guide interne Linux-Man : comprendre MCP côté devs et ops.
Claude Code : configuration MCP officielle.
Codex : configuration MCP officielle.
OpenCode : configuration MCP officielle.
FAQ AWS MCP
▶ AWS MCP remplace-t-il l’AWS CLI ?
▶ Peut-on utiliser AWS MCP en production ?
▶ Quelle différence entre AWS Knowledge MCP et AWS API MCP ?
▶ Est-ce que CloudTrail voit les actions AWS MCP ?
▶ Le sujet est-il différent d’un guide MCP général ?
Note SEO
Le balisage FAQPage doit être ajouté via le thème ou l’extension SEO, car WordPress filtre les balises script dans ce brouillon.
Déploiement progressif recommandé
Sur un compte AWS existant, je conseille une approche par paliers. Le premier palier donne seulement accès à la documentation et aux inventaires read-only.
Le deuxième palier autorise des diagnostics limités, avec lecture de métriques, logs et statuts de déploiement. L’agent prépare alors un plan, sans modifier les ressources.
Le troisième palier concerne les changements faibles risques, par exemple ajouter un tag ou générer une pull request IaC. Les modifications directes restent désactivées.
Le dernier palier peut autoriser certaines actions de remédiation. Il nécessite validation explicite, fenêtre de maintenance, rollback connu et alerte CloudTrail exploitable.
Besoin de cadrer avant de brancher l’IA à AWS ?
Linux-Man peut auditer les rôles IAM, définir les garde-fous MCP, vérifier CloudTrail et préparer un déploiement progressif sans ouvrir trop large.
Demander un cadrage AWS MCPConclusion : AWS MCP est puissant si tu gardes la main
AWS MCP est une avancée utile pour les équipes qui veulent accélérer diagnostic, documentation et opérations cloud avec des agents IA. Le gain réel vient de la combinaison : documentation fraîche, appels API structurés et procédures guidées.
Mais ce gain ne vaut rien sans gouvernance. Les limites AWS, IAM, CloudTrail, quotas et validations humaines restent les fondations. MCP doit rendre l’agent plus fiable, pas plus libre.
Tu veux intégrer AWS MCP sans ouvrir ton compte AWS en grand ?
Linux-Man peut t’aider à cadrer IAM, audit CloudTrail, sandbox et procédures DevOps avant mise en production.
Contacte-moi →À lire ensuite
Pour passer du concept MCP à une mise en œuvre concrète côté infra, consulte le guide connecter Claude Code, Cursor ou Codex à une infra Linux avec MCP.