Lequel vous faut-il ?
| vous voulez qu'un agent… | utilisez |
|---|---|
| travaille avec vos fichiers cloud, vos conversations et votre compte, de n'importe où | le serveur MCP hébergé |
| pilote des machines branchées sur votre ordinateur, sous autorisations locales | le relais MCP local, commandagi mcp |
| pilote CommandAGI depuis votre propre programme | le SDK TypeScript ou Python |
Les trois s'authentifient en tant que principal. Aucun ne peut créer ou élargir une autorisation — c'est toujours un acte de la personne.
Serveur MCP hébergé
https://api.commandagi.com/mcp — Streamable HTTP, sans état, réponses JSON. Authentifiez-vous avec une clé d'API (cagi_…), créée dans l'atelier depuis le menu du compte, Clés d'API.
claude mcp add --transport http commandagi https://api.commandagi.com/mcp \
--header "Authorization: Bearer cagi_YOUR_KEY"Il expose un large catalogue d'outils — plus de trois cents — dont les conversations (list_threads, create_thread, send_message, get_thread), les fichiers (list_drive, read_drive_file, write_drive_file), votre compte (whoami, get_credits, list_models), le code (run_code), les sites hébergés (create_site, deploy_site), le trading (trade_venues, trade_order, trade_account, trade_cancel) et les hôtes appairés (list_hosts, host_call). Utilisez search_tools pour trouver celui qu'il vous faut.
Relais MCP local
Sur un ordinateur qui fait tourner l'hôte, commandagi mcp est un serveur MCP stdio qui relaie vers le point d'accès propre à l'hôte. Donnez-lui l'identifiant de l'agent — dans l'environnement ou dans un fichier, jamais en argument :
claude mcp add commandagi -e COMMANDAGI_CREDENTIAL=cagp_… -- commandagi mcp
# or
claude mcp add commandagi -- commandagi mcp \
--credential-file ~/.config/claude/commandagi.credentialSans identifiant, un client peut lire et afficher des choses, mais il ne peut pas agir. Le point d'accès de l'hôte ne répond qu'en boucle locale (loopback) et refuse les requêtes qui portent l'origine d'une page web. Les mêmes outils de contrôle répondent aussi en HTTP simple, sur POST /control/<tool>, avec Authorization: Bearer <credential>.
Outils locaux
| groupe | outils |
|---|---|
| projet et mondes | get_project, project_status, list_worlds, get_world, save_world, list_devices, get_device |
| fichiers | read_file, write_file (sous une autorisation de fichiers), graph_query, graph_search |
| code et simulation | evaluate_code (en bac à sable, sans réseau), sim_trials |
| l'atelier ouvert | list_panes, open_file, show_world, thread_read, thread_say |
| contrôle | list_grants, list_units, open_channel, arm, run_program, send_command, read_channel, stop, close_channel |
| autres hôtes | list_hosts, host_call |
| prospection | outreach_apps, outreach_identify, outreach_start, outreach_send, outreach_reply, outreach_outcome, outreach_due, outreach_advance, outreach_status |
| marchés | market_venues, market_order, market_account, market_cancel |
Les outils de contrôle suivent chaque règle de Agents et autorisations permanentes : chacun exige le verbe correspondant dans une autorisation, stop exige une autorisation quelconque, et chaque action est enregistrée avant d'être envoyée.
SDK TypeScript
npm i commandagi # Node 22 or laterimport { CommandAGI } from "commandagi";
const cagi = new CommandAGI(); // reads COMMANDAGI_API_KEY
const { threadId } = (await cagi.threads.create({
intent: "Summarise this week's robotics news",
})) as { threadId: string };
await cagi.threads.send(threadId, "Add a link for each one.");La commande commandagi est un autre paquet, @commandagi/host (npm install -g @commandagi/host), qui est aussi l'hôte local : commandagi whoami, commandagi threads create --intent "…", commandagi call <tool> --json '{…}', et un terminal interactif lorsqu'il tourne seul. Source : github.com/CommandAGI/commandagi-sdk-typescript.
SDK Python
pip install commandagi # Python 3.9 or later
uv pip install commandagi # an environment uv manages (in a uv project: uv add commandagi)from commandagi import CommandAGI
cagi = CommandAGI() # reads COMMANDAGI_API_KEY
with cagi.launch("simulation/warehouse") as world:
world.sim.ik(target=[0.3, 0.0, 0.4])
jpeg = world.observe(fresh=True)Source : github.com/CommandAGI/commandagi-sdk-python.
Environnement
| variable | signification |
|---|---|
COMMANDAGI_API_KEY | votre clé d'API, cagi_… |
COMMANDAGI_BASE_URL | l'origine de l'API, par défaut https://api.commandagi.com |
COMMANDAGI_CREDENTIAL | l'identifiant d'un principal pour le relais local |