Documentación · 04

SDK y MCP.

Dos servidores MCP — uno en la nube, otro en tu computadora — y dos SDK. Elige el que esté más cerca de donde se ejecuta tu agente.

¿Cuál necesito?

quieres que un agente…usa
trabaje con tus archivos en la nube, tus hilos y tu cuenta desde cualquier lugarel servidor MCP alojado
controle máquinas conectadas a tu computadora, bajo permisos localesel relé MCP local, commandagi mcp
automatice CommandAGI desde tu propio programael SDK de TypeScript o el de Python

Los tres se autentican como un principal. Ninguno puede crear ni ampliar un permiso — eso siempre es un acto de una persona.

Servidor MCP alojado

https://api.commandagi.com/mcp — Streamable HTTP, sin estado, respuestas JSON. Autentícate con una clave de API (cagi_…), que se crea en el banco de trabajo desde claves de API en el menú de la cuenta.

shell
claude mcp add --transport http commandagi https://api.commandagi.com/mcp \
  --header "Authorization: Bearer cagi_YOUR_KEY"

Expone un catálogo amplio de herramientas — más de trescientas — que incluye hilos (list_threads, create_thread, send_message, get_thread), archivos (list_drive, read_drive_file, write_drive_file), tu cuenta (whoami, get_credits, list_models), código (run_code), sitios alojados (create_site, deploy_site), operaciones de mercado (trade_venues, trade_order, trade_account, trade_cancel) y hosts emparejados (list_hosts, host_call). Usa search_tools para encontrar la que necesitas.

Relé MCP local

En una computadora que ejecuta el host, commandagi mcp es un servidor MCP por stdio que hace de relé hacia el endpoint propio del host. Dale la credencial de host del agente — en el entorno o en un archivo, nunca como argumento:

shell
claude mcp add commandagi -e COMMANDAGI_CREDENTIAL=cagp_… -- commandagi mcp
# or
claude mcp add commandagi -- commandagi mcp \
  --credential-file ~/.config/claude/commandagi.credential

Sin credencial, un cliente puede leer y mostrar cosas, pero no puede actuar. El endpoint del host responde solo en loopback y rechaza las peticiones que llevan el origen de una página web. Las mismas herramientas de control también responden por HTTP simple en POST /control/<tool> con Authorization: Bearer <credential>.

Herramientas locales

grupoherramientas
proyecto y mundosget_project, project_status, list_worlds, get_world, save_world, list_devices, get_device
archivosread_file, write_file (bajo un permiso de archivos), graph_query, graph_search
código y simulaciónevaluate_code (en sandbox, sin red), sim_trials
el banco de trabajo abiertolist_panes, open_file, show_world, thread_read, thread_say
controllist_grants, list_units, open_channel, arm, run_program, send_command, read_channel, stop, close_channel
otros hostslist_hosts, host_call
contactooutreach_apps, outreach_identify, outreach_start, outreach_send, outreach_reply, outreach_outcome, outreach_due, outreach_advance, outreach_status
mercadosmarket_venues, market_order, market_account, market_cancel

Las herramientas de control siguen todas las reglas de Agentes y permisos permanentes: cada una necesita el verbo correspondiente en un permiso, stop necesita un permiso cualquiera y cada acción se registra antes de enviarse.

SDK de TypeScript

shell
npm i commandagi        # Node 22 or later
typescript
import { 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.");

El paquete también instala el comando commandagi: commandagi whoami, commandagi threads create --intent "…", commandagi call <tool> --json '{…}', y una terminal interactiva cuando se ejecuta solo. Código fuente: github.com/CommandAGI/commandagi-sdk-typescript.

SDK de Python

shell
pip install commandagi   # Python 3.9 or later
python
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)

Código fuente: github.com/CommandAGI/commandagi-sdk-python.

Entorno

variablesignificado
COMMANDAGI_API_KEYtu clave de API, cagi_…
COMMANDAGI_BASE_URLel origen de la API; por defecto, https://api.commandagi.com
COMMANDAGI_CREDENTIALla credencial de un principal para el relé local