Docs · 04

SDK dan MCP.

Dua server MCP — satu di cloud, satu di komputer Anda — dan dua SDK. Pilih yang paling dekat dengan tempat agen Anda berjalan.

Yang mana yang Anda perlukan?

Anda ingin agen…gunakan
bekerja dengan berkas cloud, percakapan, dan akun Anda dari mana sajaserver MCP hosted
menggerakkan mesin yang terpasang ke komputer Anda, di bawah izin lokalrelai MCP lokal, commandagi mcp
menskrip CommandAGI dari program Anda sendiriSDK TypeScript atau SDK Python

Ketiganya melakukan autentikasi sebagai prinsipal. Tidak satu pun bisa membuat atau memperluas izin — itu selalu tindakan seseorang.

Server MCP hosted

https://api.commandagi.com/mcp — Streamable HTTP, tanpa status, respons JSON. Autentikasi dengan kunci API (cagi_…), dibuat di meja kerja dari menu akun Kunci API.

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

Server ini menyediakan katalog alat yang besar — lebih dari tiga ratus — termasuk percakapan (list_threads, create_thread, send_message, get_thread), berkas (list_drive, read_drive_file, write_drive_file), akun Anda (whoami, get_credits, list_models), kode (run_code), situs hosted (create_site, deploy_site), perdagangan (trade_venues, trade_order, trade_account, trade_cancel), dan host yang dipasangkan (list_hosts, host_call). Gunakan search_tools untuk menemukan yang Anda butuhkan.

Relai MCP lokal

Pada komputer yang menjalankan host, commandagi mcp adalah server MCP stdio yang meneruskan ke endpoint host itu sendiri. Berikan kredensial host milik agen — di variabel lingkungan atau berkas, jangan sebagai argumen:

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

Tanpa kredensial, klien hanya bisa membaca dan menampilkan, tetapi tidak bisa bertindak. Endpoint host hanya menjawab di loopback dan menolak permintaan yang membawa origin halaman web. Alat kontrol yang sama juga menjawab HTTP biasa di POST /control/<tool> dengan Authorization: Bearer <credential>.

Alat lokal

grupalat
proyek dan duniaget_project, project_status, list_worlds, get_world, save_world, list_devices, get_device
berkasread_file, write_file (di bawah izin berkas), graph_query, graph_search
kode dan simulasievaluate_code (dalam sandbox, tanpa jaringan), sim_trials
meja kerja yang terbukalist_panes, open_file, show_world, thread_read, thread_say
kontrollist_grants, list_units, open_channel, arm, run_program, send_command, read_channel, stop, close_channel
host lainlist_hosts, host_call
penjangkauanoutreach_apps, outreach_identify, outreach_start, outreach_send, outreach_reply, outreach_outcome, outreach_due, outreach_advance, outreach_status
pasarmarket_venues, market_order, market_account, market_cancel

Alat kontrol mengikuti setiap aturan di Agen dan izin tetap: setiap alat memerlukan kata kerja yang sesuai di dalam sebuah izin, stop memerlukan izin apa pun, dan setiap tindakan direkam sebelum dikirim.

SDK 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.");

Perintah commandagi berasal dari paket lain, @commandagi/host (npm install -g @commandagi/host), yang juga merupakan host lokal: commandagi whoami, commandagi threads create --intent "…", commandagi call <tool> --json '{…}', dan terminal interaktif saat dijalankan sendiri. Sumber: github.com/CommandAGI/commandagi-sdk-typescript.

SDK Python

shell
pip install commandagi      # Python 3.9 or later
uv pip install commandagi   # an environment uv manages (in a uv project: uv add commandagi)
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)

Sumber: github.com/CommandAGI/commandagi-sdk-python.

Lingkungan

variabelarti
COMMANDAGI_API_KEYkunci API Anda, cagi_…
COMMANDAGI_BASE_URLorigin API, bawaan https://api.commandagi.com
COMMANDAGI_CREDENTIALkredensial sebuah prinsipal untuk relai lokal