https://mcp.chatsailer.com/mcp/studio
Inspecione e teste agentes de IA da Sailer. Edições se aplicam à working
copy. Conversas ao vivo continuam rodando a versão publicada até alguém
publicar.
Conecte este servidor só se você de fato edita agentes. É um audience OAuth
separado — um token de CRM é 401 aqui, não “scope faltando”. Reconecte; não
tente de novo.
A primeira conexão é somente leitura.
publish_agent e o
sandbox não vão aparecer até você reconectar com agents:publish e
sandbox:run.whoami também está montado aqui. A mesma tool do CRM: qual workspace, quem
autorizou, quais scopes.
Inspecionar
list_agents
Scope: agents:read. Mais novos primeiro, limit 1–100 (default 25).
Devolve id, name, is_published. Use isso para obter um agent_id.
Which agents are in this workspace?
get_agent_graph
Scope: agents:read. Nós e connections da working copy. Nós são endereçados
por uma key estável (com fallback para o name) — fale nessas keys, não em ids
internos. O resultado inclui um head_hash; passe-o de volta em qualquer
write para que uma edição concorrente seja detectada em vez de sobrescrita em
silêncio.
Show me this agent’s graph.
validate_agent
Scope: agents:read. Cada problema de uma vez, endereçado por node key. Uma
lista vazia significa que o graph publicaria limpo.
Is this agent’s graph valid?
diff_agent_vs_production
Scope: agents:read. O que mudaria se você publicasse agora, mais o
head_hash e o change_count que publish_agent exige.
What would change if I published this agent?Chame isso antes de fazer ship. Publicar sem ter acabado de ler o diff é rejeitado.
Publicar
publish_agent
Scope: agents:publish. Destrutivo. Conversas ao vivo de clientes começam a
usar a working copy na hora. Ele envia toda mudança não publicada, não um
subconjunto escolhido.
Required, e verificado no servidor:
expected_head_hash— deget_agent_graphoudiff_agent_vs_productionacknowledged_change_count— dediff_agent_vs_production
version_name / version_description opcionais
aterrissam no histórico de versões.
agents:publish está separado de read de propósito: você pode entregar uma
conexão que itera num draft e não consegue fazer ship.
Diff this agent against production, then publish it.
Sandbox
O sandbox roda a working copy. Nada aqui toca clientes reais. Um turno leva dezenas de segundos, então são duas tools em vez de uma: uma chamada bloqueante morreria no load balancer depois que o trabalho já tivesse committed.start_sandbox_turn
Scope: sandbox:run. Envie uma mensagem (máximo 4.000 caracteres). Devolve
na hora um turn_id.
Comportamento multi-turno depende do histórico. Um graph que só se comporta
mal no terceiro turno não se reproduz uma mensagem por vez — passe o mesmo
conversation_key de volta.
In the sandbox, say hi to this agent as a new contact.
get_sandbox_turn
Scope: sandbox:run. Faça poll com o turn_id. Enquanto settled for
false, o agente ainda pode responder — isso não é silêncio. Depois de
settled, outcome diz o que aconteceu e remedy diz o que fazer a respeito.
“No reply” tem várias causas; não são o mesmo conserto.
Has that sandbox turn finished?
get_turn_trace
Scopes: sandbox:run e inference:read. Chame depois que o turno tiver
settled. Quais edges foram avaliadas, qual foi tomada, e para cada uma que
perdeu, qual condição falhou e o que o campo comparado realmente tinha.
Esta é a tool para “por que ele não avançou?”. Costuma ser um gate que
comparou um campo que nunca foi coletado — actual é null e likely_cause
nomeia o campo. Não inclui prompts nem completions do modelo.
Why didn’t the agent leave that node?