Agent IA CWCloud comme adaptateur RESTful pour l'API CWAI
Dans notre blogpost précédent, nous avions présenté le serveur MCP et l'agent IA CWCloud. Nous avions expliqué comment nous avons implémenté le serveur MCP et comment l'utiliser avec un agent IA en mode CLI.
Dans cet article, nous allons voir cette fois comment utiliser cwc comme adaptateur web externe compatible avec l'API CWAI.
Tout d'abord, voici comment démarrer la CLI cwc en tant qu'agent web :
$ cwc ai web-agent
On peut aussi préciser le port et l'adresse d'écoute :
$ cwc ai web-agent -a 0.0.0.0 -p 8081 -s http://localhost:8080/mcp
Ensuite, on peut envoyer une requête HTTP POST à l'agent web comme ceci :
$ curl -X POST http://localhost:8081 -H "Content-Type: application/json" -d '{ "settings": { "max_tokens": 500 }, "message": "Hello"}'
L'agent web répondra ainsi (en respectant le contrat de l'adaptateur externe) :
{
"status": "ok",
"message": "Hello! How can I assist you today?",
"usage": {
"prompt_tokens": 8,
"completion_tokens": 10,
"total_tokens": 18
}
}
Pour héberger la CLI comme serveur MCP et agent web en même temps, voici un exemple de fichier docker compose :
services:
cwc_mcp:
image: "rg.fr-par.scw.cloud/cwcloud-ce-u7u1q0/cwc:1.18.6"
restart: always
container_name: cwc_mcp
env_file:
- .env.cwc
volumes:
- "/etc/ssl/certs/ca-bundle.crt:/etc/ssl/certs/ca-bundle.crt:ro"
- "/etc/ssl/certs/ca-bundle.trust.crt:/etc/ssl/certs/ca-bundle.trust.crt:ro"
command: ["ai", "mcp", "-l", "0.0.0.0", "-p", "8080"]
networks:
- cwc_network
cwc_agent:
image: "rg.fr-par.scw.cloud/cwcloud-ce-u7u1q0/cwc:1.18.6"
restart: always
container_name: cwc_agent
env_file:
- .env.cwc
volumes:
- "/etc/ssl/certs/ca-bundle.crt:/etc/ssl/certs/ca-bundle.crt:ro"
- "/etc/ssl/certs/ca-bundle.trust.crt:/etc/ssl/certs/ca-bundle.trust.crt:ro"
command: ["ai", "web-agent", "-a", "0.0.0.0", "-p", "8081", "-s", "http://cwc_mcp:8080"]
ports:
- "8081:8081"
networks:
- cwc_network
networks:
cwc_network:
driver: bridge
Dans .env.cwc, vous pouvez définir toutes les variables d'environnement nécessaires pour la CLI cwc, comme la clé API et le modèle par défaut à utiliser. Vous pouvez vous référer à cette documentation pour plus de détails.
On peut ensuite ajouter l'agent web comme adaptateur externe :

Puis l'utiliser avec le chat de CWAI :

Et bien sûr, vous pourrez aussi l'utiliser dans le moteur FaaS comme ceci :

Et voilà comment utiliser l'agent web cwc comme adaptateur externe pour CWAI !
