CODEXIS AI

Pripojenie cez MCP

Pripojte MCP klienta ku CODEXIS AI Agentovi, posielajte prílohy a sledujte odpovede.

Cez MCP sprístupníte CODEXIS AI Agenta aplikácii, v ktorej pracujete. Pripojený klient môže spravovať projekty, agentov a chaty, posielať správy s prílohami a sledovať ich spracovanie. Na pripojenie k hostovanému serveru potrebujete jeho URL a API kľúč k účtu s aktívnou licenciou. Pre lokálne stdio potrebujete aj dostupný príkaz codexis-agent-cli.

Nastavenie konkrétnej aplikácie nájdete v návode MCP v Claude a Codex. Nižšie sú parametre servera a správanie nástrojov. Operácie bežia nad Codexis AI agent API v2 pod účtom vlastníka kľúča a požiadavky čerpajú jeho kredity.

Lokálne pripojenie cez stdio

MCP klient spúšťa proces a komunikuje s ním cez štandardný vstup a výstup. Predvolený transport je stdio.

codexis-agent-cli mcp serve

Procesu odovzdajte prihlasovacie údaje v premenných prostredia, prípadne použite profil uložený cez CLI. Adresu zadajte ako origin, napríklad https://vm.codexis.ai; cestu k API dopĺňa CLI.

  • CODEXIS_AGENT_ENDPOINT string, adresa inštancie CODEXIS AI Agenta.
  • CODEXIS_AGENT_API_KEY string, váš API kľúč.

Nasledujúci JSON ukazuje všeobecné nastavenie spúšťaného procesu. Klientovi odovzdajte command, args a env spôsobom, ktorý používa na konfiguráciu MCP serverov. Hodnotu api-VAS_KLUC nahraďte svojím kľúčom.

{
  "command": "codexis-agent-cli",
  "args": ["mcp", "serve"],
  "env": {
    "CODEXIS_AGENT_ENDPOINT": "https://vm.codexis.ai",
    "CODEXIS_AGENT_API_KEY": "api-VAS_KLUC"
  }
}

Pre pripojenie určené na čítanie pridajte --read-only. Server potom dovolí čítať dáta a sledovať prebiehajúcu odpoveď; pokus o zmenu vráti chybu READ_ONLY. To isté nastavíte premennou CODEXIS_AGENT_READ_ONLY=true.

codexis-agent-cli mcp serve --read-only

Pripojenie cez HTTP

Hostované MCP má adresu https://vm.codexis.ai/mcp. V klientovi zadajte túto URL a hlavičku X-Api-Key so svojím API kľúčom. Nastavenie pre Claude a Codex opisuje samostatný návod.

Pre vlastný lokálny HTTP server použite tento príkaz. Server bude dostupný na http://127.0.0.1:3000/mcp.

codexis-agent-cli mcp serve \
  --transport http \
  --endpoint https://vm.codexis.ai

V MCP klientovi zvoľte HTTP pripojenie, zadajte túto URL a pridajte hlavičku X-Api-Key so svojím API kľúčom ku každej požiadavke. Server používa kľúč prichádzajúcej požiadavky, takže každý klient pracuje pod svojím účtom. Backendový origin môžete serveru odovzdať aj premennou CODEXIS_AGENT_ENDPOINT.

  • --host string, voliteľné, IP adresa alebo localhost, na ktorej server počúva. Predvolené: 127.0.0.1.
  • --port integer, voliteľné, port servera. Predvolené: 3000.
  • --allowed-host string, voliteľné, povolený hostname prichádzajúcej HTTP hlavičky Host, bez portu. Pre viac názvov parameter zopakujte. Predvolené: localhost, 127.0.0.1 a [::1].
  • --read-only boolean, voliteľné, zapne režim čítania pre všetkých klientov tohto servera.

Pri sprístupnení cez vlastnú doménu nastavte zodpovedajúci --allowed-host a HTTPS zabezpečte pred serverom reverznou proxy. API kľúč prenášajte šifrovaným spojením.

Prvé volanie

Po pripojení si klient načíta katalóg nástrojov cez MCP tools/list. Na overenie účtu zavolajte identity_get s prázdnymi argumentmi. Ukážky v tejto časti sú parametre MCP volania tools/call.

{
  "name": "identity_get",
  "arguments": {}
}

Nástroje vracajú výsledok v structuredContent a súčasne ako JSON v textovom obsahu. Chyby operácií majú isError: true a kód v structuredContent.error.code. Pri neplatných parametroch môže klient dostať iba textovú chybu v content; neznámy nástroj vracia protokolovú chybu.

Na prácu s uloženými dátami použite project_list, agent_list a chat_list. Na vytvorenie slúžia project_create, agent_create a chat_create; každý z týchto typov má aj nástroje na detail, úpravu a zmazanie. Stránkované zoznamy vracajú nextCursor, ktorý pri ďalšom volaní odovzdáte ako cursor s rovnakými filtrami.

Nový chat založíte pomocou chat_create. Môžete zadať agentId z agent_list alebo vybrať model z model_list. Odpoveď obsahuje id chatu, ktoré potom odovzdáte ako chatId nástroju message_send. Pre inštrukcie konkrétneho uloženého agenta odovzdajte jeho ID aj v poli agentIds pri message_send.

Odoslanie a nadviazanie odpovede

message_send prijíma najmä tieto polia.

  • chatId string, UUID, povinné, ID existujúceho chatu.
  • message string, text správy. Pošlite text, prílohu alebo oboje.
  • requestId string, UUID, voliteľné, identifikátor konkrétneho odoslania. Na obnovenie po prerušení si ho vytvorte a uložte pred volaním.
  • attachmentIds string[], voliteľné, ID vopred nahraných príloh.
  • attachments object[], voliteľné, prílohy na nahranie spolu so správou.

Prijatá správa vráti requestId, chatId, userMessageId a assistantMessageId. Hodnotu assistantMessageId použite ako messageId pri sledovaní. Ak sa spojenie preruší počas odoslania, overte jeho stav cez message_request_get s pôvodnými chatId a requestId pred ďalším pokusom.

Prílohy

Súbor vopred nahrajte cez attachment_upload. V odpovedi nájdete pole items s ID prílohy; to odovzdáte do message_send.attachmentIds. Príloha sa pri odoslaní presunie k správe. Dovtedy jej metadáta získate cez attachment_get a odstrániť ju môžete cez attachment_delete.

Malé prílohy môžete posielať priamo ako base64 cez oba transporty. Limit je 32 KiB dekódovaného obsahu na súbor. Celá HTTP požiadavka má limit 64 KiB vrátane JSON a base64, preto väčší počet príloh nahrajte samostatnými volaniami a správe odovzdajte ich ID.

Tento príklad nahrá súbor poznamka.txt s obsahom Hello a koncom riadka.

{
  "name": "attachment_upload",
  "arguments": {
    "source": {
      "name": "poznamka.txt",
      "base64": "SGVsbG8K"
    }
  }
}

Pre lokálne súbory na macOS a Linuxe spustite stdio server s povoleným priečinkom. Parameter --allow-path môžete zopakovať pre viac priečinkov.

mkdir -p podklady
codexis-agent-cli mcp serve --allow-path "$PWD/podklady"

Potom v attachment_upload.source.path odovzdajte absolútnu cestu k súboru z tohto priečinka. Rovnaký objekt s poľom path prijímajú aj message_send.attachments a question_answer.attachments. Pre HTTP použite inline obsah alebo ID prílohy vopred nahranej cez CLI či REST API.

Priebežné odpovede

Jednorazový stav odpovede získate cez message_status. Priebeh sledujte pomocou message_watch s rovnakými chatId a messageId. Ukážkové ID nižšie nahraďte hodnotami z prijatej správy.

{
  "name": "message_watch",
  "arguments": {
    "chatId": "3f8b1a20-77c4-4c19-8d2e-1b9a4e6f0c85",
    "messageId": "69de2470-09f4-43a1-a1dc-858ffad924a7",
    "deadlineMs": 25000
  },
  "_meta": {
    "progressToken": "odpoved-1"
  }
}

Keď klient odovzdá _meta.progressToken, dostáva notifications/progress. Pole message obsahuje celý aktuálny text odpovede s citáciami, prípadne stav spracovania, kým text vznikne. Zobrazený text pri aktualizácii nahraďte novou hodnotou. Bez progressToken klient dostane výsledný štruktúrovaný stav po skončení sledovania.

deadlineMs je kladné celé číslo v milisekundách, predvolené 25000, najviac 600000. Sledovanie sa skončí pri stave completed, failed, stopped alebo waiting. Úspešné dokončenie potvrdzuje execution.state s hodnotou completed. Po chybe WAIT_TIMEOUT znovu zavolajte message_watch s rovnakými ID; vzdialené spracovanie pokračuje.

Zrušenie stdio volania alebo prerušenie moderného HTTP streamu ukončuje iba sledovanie. Pri starších HTTP klientoch môže sledovanie dobehnúť do stanoveného limitu. Na zastavenie práce agenta zavolajte chat_stop s chatId a konkrétnym messageId, potom výsledok overte cez message_status.

Otázky a automatizácie

Stav waiting znamená, že agent čaká na reakciu. Cez interaction_list a interaction_get načítajte otázku alebo návrh automatizácie vrátane toolCallId a revision. Pri odpovedi odovzdajte tieto hodnoty spolu s chatId a messageId, aby sa reakcia vzťahovala na prečítanú verziu.

Na otázku odpovedzte cez question_answer. Voľby v poli selectedPositions sú číslované od nuly; text doplňte do freeText. Priložiť môžete aj súbory rovnakým spôsobom ako k správe.

O návrhu automatizácie rozhodnite cez workflow_decide s hodnotou decision: RUN, REQUEST_CHANGES alebo CANCEL. Pre REQUEST_CHANGES pridajte feedback. Rozhodnutie sa vzťahuje na daný návrh; na zastavenie celého behu použite chat_stop.

Priebeh automatizácie načítate cez workflow_list. Dielčích agentov a ich správy sprístupňujú subagent_list, subagent_get a subagent_message_list. Históriu hlavného chatu získate cez chat_message_list a chat_message_get.

Kam pokračovať

Ovládanie cez CLI · REST API V2