Aller à la documentation
DocumentationStockage S3

Stockage S3

Connectez un bucket Amazon S3, Cloudflare R2, Backblaze B2, Wasabi, DigitalOcean Spaces, Google Cloud Storage ou de tout stockage compatible S3. Les agents listent, lisent, écrivent et suppriment ses objets ; la clé secrète reste chez Sallyport.

Sur cette page

L’agent nomme un objet. Sallyport signe la requête avec AWS Signature V4, l’envoie à votre bucket et renvoie la réponse. L’agent ne voit jamais la clé d’accès ni son secret.

Connecter un bucket

  • Ouvrez Ajouter une clé de service et choisissez « Stockage S3 » dans « Source de la clé ».
  • Choisissez le « Stockage ». La « Région » et l’« Adresse du stockage » se remplissent seules ; changez la « Région » et l’adresse suit.
  • Saisissez le « Bucket ». Les agents atteignent ce bucket et rien d’autre sur le stockage.
  • Créez sur le stockage une clé qui n’atteint que ce bucket, puis collez son « ID de la clé d’accès » et sa « Clé d’accès secrète ».
  • Le « Nom de la connexion » est le nom du bucket tant que vous ne le changez pas. Choisissez l’« Espace de travail » et l’« Environnement ».
  • Appuyez sur « Enregistrer et vérifier la clé ». Sallyport scelle la clé, crée la connexion et liste avec elle un objet du bucket.

La page de la clé affiche le résultat sous « Où va cette clé ». Un secret faux y est refusé, dans les mots du stockage lui-même, avant qu’un agent ne l’essaie. Tous les agents de l’espace de travail peuvent utiliser le bucket dès qu’il est enregistré.

StockageAdresse du stockageRégion
Amazon S3https://s3.<region>.amazonaws.com. Le bucket va dans le nom d’hôte : https://<bucket>.s3.<region>.amazonaws.com.La région du bucket, par exemple eu-central-1.
Cloudflare R2L’adresse de l’API S3 de la vue d’ensemble R2 : https://<account-id>.r2.cloudflarestorage.com.auto
Backblaze B2https://s3.<region>.backblazeb2.comLa région de l’adresse du bucket, par exemple eu-central-003.
Wasabihttps://s3.<region>.wasabisys.comLa région du bucket, par exemple eu-central-1.
DigitalOcean Spaceshttps://<region>.digitaloceanspaces.comLe centre de données, par exemple fra1.
Google Cloud Storagehttps://storage.googleapis.com, avec une clé HMAC d’un compte de service.auto
Autre stockage compatible S3L’adresse HTTPS de son API S3 : MinIO, Hetzner, Scaleway, OVH, IDrive e2 et d’autres.La région pour laquelle il signe ; us-east-1 s’il n’en indique aucune.

Ce que l’agent appelle

Les outils du bucket se terminent par _read et _write. Leur description dit à l’agent comment lister, lire, écrire et supprimer : il n’a rien à deviner. Le chemin est le chemin S3 complet : sur tous les stockages sauf Amazon S3, il commence par le bucket.

JSON · lister les objets sous notes/ (l’outil _read)
{
  "method": "GET",
  "path": "/reports/",
  "params": { "list-type": "2", "prefix": "notes/" }
}
JSON · écrire un objet (l’outil _write)
{
  "method": "PUT",
  "path": "/reports/notes/2026-09-30.md",
  "headers": { "Content-Type": "text/markdown", "x-amz-meta-author": "agent" },
  "body": "# Weekly notes",
  "intent": "Enregistrer les notes de la semaine"
}

Une lecture est GET /reports/notes/2026-09-30.md. Une copie est un PUT avec x-amz-copy-source: /reports/notes/2026-09-30.md. Une suppression est DELETE /reports/notes/2026-09-30.md. Les réponses sont le XML de S3 lui-même.

Quels appels vous attendent

AppelClasse
GET et HEAD : un listage, un téléchargement, les métadonnées d’un objetLecture
PUT et POST : un envoi, une copie, un envoi en plusieurs partiesÉcriture
POST ?delete, qui supprime de nombreux objets à la foisÉcriture
DELETEDestructive

Le nom d’un objet ne change jamais sa classe : lire builds/run.log est une lecture. Les appels passent sans demander tant que vous n’en décidez pas autrement ; les règles sont dans la liste « Accès » de l’agent. Voir Approbations.

Gros fichiers et données binaires

Les outils MCP transportent du texte : CSV, JSON, logs, Markdown. Pour des fichiers de tout type, envoyez les octets par le proxy HTTP avec le jeton de l’agent. Le chemin après /p/<connection-id> est la clé de l’objet dans le bucket.

Shell · envoyer et télécharger par le proxy
export SP_AGENT_TOKEN='<agent-token>'

curl --fail-with-body -X PUT \
  -H "Authorization: Bearer $SP_AGENT_TOKEN" \
  -H 'Content-Type: application/pdf' \
  -H 'X-Sallyport-Intent: Store the signed contract' \
  --data-binary @contract.pdf \
  "https://mcp.sallyport.cloud/p/<connection-id>/contracts/2026/acme.pdf"

curl --fail-with-body -H "Authorization: Bearer $SP_AGENT_TOKEN" \
  -o acme.pdf "https://mcp.sallyport.cloud/p/<connection-id>/contracts/2026/acme.pdf"

Un envoi par le proxy porte jusqu’à 32 Mio ; un téléchargement, jusqu’à 512 Mio. Découpez un fichier plus gros en envoi en plusieurs parties.