Documentation Index
Fetch the complete documentation index at: https://docs.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
openclaw mcp tem duas funções:
- executar o OpenClaw como um servidor MCP com
openclaw mcp serve - gerenciar definições de servidores MCP de saída pertencentes ao OpenClaw com
list,show,seteunset
serveé o OpenClaw atuando como um servidor MCPlist/show/set/unseté o OpenClaw atuando como um registro do lado do cliente MCP para outros servidores MCP que seus runtimes podem consumir depois
openclaw acp quando o OpenClaw deve hospedar por conta própria uma sessão de harness de codificação e rotear esse runtime por meio de ACP.
OpenClaw como um servidor MCP
Este é o caminhoopenclaw mcp serve.
Quando usar serve
Use openclaw mcp serve quando:
- Codex, Claude Code ou outro cliente MCP deve falar diretamente com conversas de canal apoiadas pelo OpenClaw
- você já tem um OpenClaw Gateway local ou remoto com sessões roteadas
- você quer um servidor MCP que funcione nos backends de canal do OpenClaw em vez de executar pontes separadas por canal
openclaw acp em vez disso quando o OpenClaw deve hospedar o runtime de codificação por conta própria e manter a sessão do agente dentro do OpenClaw.
Como funciona
openclaw mcp serve inicia um servidor MCP stdio. O cliente MCP é dono desse processo. Enquanto o cliente mantém a sessão stdio aberta, a ponte se conecta a um OpenClaw Gateway local ou remoto por WebSocket e expõe conversas de canal roteadas por MCP.
Sessões se tornam conversas MCP
Sessões roteadas se tornam conversas MCP e ferramentas de transcrição/histórico.
Eventos ao vivo entram na fila
Eventos ao vivo são enfileirados na memória enquanto a ponte está conectada.
Comportamento importante
Comportamento importante
- o estado da fila ao vivo começa quando a ponte se conecta
- o histórico de transcrições mais antigas é lido com
messages_read - notificações push Claude só existem enquanto a sessão MCP está ativa
- quando o cliente desconecta, a ponte encerra e a fila ao vivo desaparece
- pontos de entrada de agente de execução única, como
openclaw agenteopenclaw infer model run, encerram quaisquer runtimes MCP incluídos que abrirem quando a resposta é concluída, para que execuções roteirizadas repetidas não acumulem processos filhos MCP stdio - servidores MCP stdio iniciados pelo OpenClaw (incluídos ou configurados pelo usuário) são encerrados como uma árvore de processos no desligamento, para que subprocessos filhos iniciados pelo servidor não sobrevivam depois que o cliente stdio pai sai
- excluir ou redefinir uma sessão descarta os clientes MCP dessa sessão pelo caminho compartilhado de limpeza de runtime, então não há conexões stdio pendentes vinculadas a uma sessão removida
Escolha um modo de cliente
Use a mesma ponte de duas formas diferentes:- Clientes MCP genéricos
- Claude Code
Apenas ferramentas MCP padrão. Use
conversations_list, messages_read, events_poll, events_wait, messages_send e as ferramentas de aprovação.Hoje,
auto se comporta da mesma forma que on. Ainda não há detecção de capacidades do cliente.O que serve expõe
A ponte usa metadados existentes de rota de sessão do Gateway para expor conversas apoiadas por canal. Uma conversa aparece quando o OpenClaw já tem estado de sessão com uma rota conhecida, como:
channel- metadados de destinatário ou destino
accountIdopcionalthreadIdopcional
- listar conversas roteadas recentes
- ler histórico recente de transcrições
- aguardar novos eventos de entrada
- enviar uma resposta de volta pela mesma rota
- ver solicitações de aprovação que chegam enquanto a ponte está conectada
Uso
- Gateway local
- Gateway remoto (token)
- Gateway remoto (senha)
- Detalhado / Claude desativado
Ferramentas da ponte
A ponte atual expõe estas ferramentas MCP:conversations_list
conversations_list
Lista conversas recentes apoiadas por sessão que já têm metadados de rota no estado da sessão do Gateway.Filtros úteis:
limitsearchchannelincludeDerivedTitlesincludeLastMessage
conversation_get
conversation_get
Retorna uma conversa por
session_key usando uma consulta direta de sessão no Gateway.messages_read
messages_read
Lê mensagens recentes de transcrição para uma conversa apoiada por sessão.
attachments_fetch
attachments_fetch
Extrai blocos de conteúdo não textual de mensagem de uma mensagem de transcrição. Esta é uma visualização de metadados sobre o conteúdo da transcrição, não um armazenamento autônomo e durável de blobs de anexo.
events_poll
events_poll
Lê eventos ao vivo enfileirados desde um cursor numérico.
events_wait
events_wait
Faz long-poll até o próximo evento enfileirado correspondente chegar ou um tempo limite expirar.Use isto quando um cliente MCP genérico precisa de entrega quase em tempo real sem um protocolo push específico do Claude.
messages_send
messages_send
Envia texto de volta pela mesma rota já registrada na sessão.Comportamento atual:
- exige uma rota de conversa existente
- usa o canal, destinatário, id da conta e id da thread da sessão
- envia apenas texto
permissions_list_open
permissions_list_open
Lista solicitações pendentes de aprovação de exec/Plugin que a ponte observou desde que se conectou ao Gateway.
permissions_respond
permissions_respond
Resolve uma solicitação pendente de aprovação de exec/Plugin com:
allow-onceallow-alwaysdeny
Modelo de eventos
A ponte mantém uma fila de eventos em memória enquanto está conectada. Tipos de eventos atuais:messageexec_approval_requestedexec_approval_resolvedplugin_approval_requestedplugin_approval_resolvedclaude_permission_request
Notificações de canal Claude
A ponte também pode expor notificações de canal específicas do Claude. Este é o equivalente do OpenClaw a um adaptador de canal Claude Code: ferramentas MCP padrão continuam disponíveis, mas mensagens de entrada ao vivo também podem chegar como notificações MCP específicas do Claude.- desativado
- ativado
- auto (padrão)
--claude-channel-mode off: apenas ferramentas MCP padrão.notifications/claude/channelnotifications/claude/channel/permission
- mensagens de transcrição
userde entrada são encaminhadas comonotifications/claude/channel - solicitações de permissão Claude recebidas por MCP são rastreadas em memória
- se a conversa vinculada enviar depois
yes abcdeouno abcde, a ponte converte isso paranotifications/claude/channel/permission - essas notificações são apenas da sessão ao vivo; se o cliente MCP desconectar, não há alvo de push
Configuração de cliente MCP
Exemplo de configuração de cliente stdio:Opções
openclaw mcp serve é compatível com:
URL WebSocket do Gateway.
Token do Gateway.
Ler token do arquivo.
Senha do Gateway.
Ler senha do arquivo.
Modo de notificação Claude.
Logs detalhados em stderr.
Segurança e limite de confiança
A ponte não inventa roteamento. Ela apenas expõe conversas que o Gateway já sabe como rotear. Isso significa:- allowlists de remetentes, pareamento e confiança no nível do canal ainda pertencem à configuração do canal OpenClaw subjacente
messages_sendsó pode responder por uma rota armazenada existente- o estado de aprovação é ao vivo/em memória apenas para a sessão atual da ponte
- a autenticação da ponte deve usar os mesmos controles de token ou senha do Gateway em que você confiaria para qualquer outro cliente remoto do Gateway
conversations_list, a causa usual não é a configuração MCP. São metadados de rota ausentes ou incompletos na sessão subjacente do Gateway.
Testes
O OpenClaw inclui um smoke Docker determinístico para esta ponte:- inicia um contêiner Gateway semeado
- inicia um segundo contêiner que executa
openclaw mcp serve - verifica descoberta de conversas, leituras de transcrição, leituras de metadados de anexos, comportamento da fila de eventos ao vivo e roteamento de envio de saída
- valida notificações de canal e permissão no estilo Claude pela ponte MCP stdio real
Solução de problemas
Nenhuma conversa retornada
Nenhuma conversa retornada
Geralmente significa que a sessão do Gateway ainda não é roteável. Confirme que a sessão subjacente tem metadados armazenados de rota de canal/provedor, destinatário e conta/thread opcionais.
events_poll ou events_wait perde mensagens mais antigas
events_poll ou events_wait perde mensagens mais antigas
Esperado. A fila ao vivo começa quando a ponte se conecta. Leia o histórico de transcrições mais antigas com
messages_read.Notificações Claude não aparecem
Notificações Claude não aparecem
Verifique todos estes itens:
- o cliente manteve a sessão MCP stdio aberta
--claude-channel-modeéonouauto- o cliente realmente entende os métodos de notificação específicos do Claude
- a mensagem de entrada aconteceu depois que a ponte se conectou
Aprovações estão ausentes
Aprovações estão ausentes
permissions_list_open só mostra solicitações de aprovação observadas enquanto a ponte estava conectada. Ela não é uma API durável de histórico de aprovações.OpenClaw como um registro de cliente MCP
Este é o caminho deopenclaw mcp list, show, set e unset.
Esses comandos não expõem o OpenClaw via MCP. Eles gerenciam definições de servidor MCP pertencentes ao OpenClaw em mcp.servers na configuração do OpenClaw.
Essas definições salvas são para runtimes que o OpenClaw inicia ou configura depois, como Pi incorporado e outros adaptadores de runtime. O OpenClaw armazena as definições de forma centralizada para que esses runtimes não precisem manter suas próprias listas duplicadas de servidores MCP.
Comportamento importante
Comportamento importante
- esses comandos apenas leem ou gravam a configuração do OpenClaw
- eles não se conectam ao servidor MCP de destino
- eles não validam se o comando, a URL ou o transporte remoto está acessível agora
- adaptadores de runtime decidem quais formatos de transporte eles realmente oferecem suporte no momento da execução
- o Pi incorporado expõe ferramentas MCP configuradas nos perfis de ferramentas normais
codingemessaging;minimalainda as oculta, etools.deny: ["bundle-mcp"]as desativa explicitamente - runtimes MCP agrupados com escopo de sessão são removidos após
mcp.sessionIdleTtlMsmilissegundos de tempo ocioso (padrão de 10 minutos; defina0para desativar), e execuções incorporadas de uso único os limpam ao final da execução
transport do OpenClaw diretamente, enquanto Claude Code e Gemini recebem valores type nativos da CLI, como http, sse ou stdio.
Definições salvas de servidor MCP
O OpenClaw também armazena um registro leve de servidores MCP na configuração para superfícies que querem definições MCP gerenciadas pelo OpenClaw. Comandos:openclaw mcp listopenclaw mcp show [name]openclaw mcp set <name> <json>openclaw mcp unset <name>
listordena nomes de servidores.showsem um nome imprime o objeto completo de servidores MCP configurados.setespera um valor de objeto JSON na linha de comando.- Use
transport: "streamable-http"para servidores MCP Streamable HTTP.openclaw mcp settambém normalizatype: "http"nativo da CLI para o mesmo formato canônico de configuração por compatibilidade. unsetfalha se o servidor nomeado não existir.
Transporte stdio
Inicia um processo filho local e se comunica por stdin/stdout.| Campo | Descrição |
|---|---|
command | Executável a iniciar (obrigatório) |
args | Array de argumentos de linha de comando |
env | Variáveis de ambiente extras |
cwd / workingDirectory | Diretório de trabalho do processo |
Transporte SSE / HTTP
Conecta-se a um servidor MCP remoto por Eventos Enviados pelo Servidor via HTTP.| Campo | Descrição |
|---|---|
url | URL HTTP ou HTTPS do servidor remoto (obrigatório) |
headers | Mapa opcional de chave-valor de cabeçalhos HTTP (por exemplo, tokens de autenticação) |
connectionTimeoutMs | Tempo limite de conexão por servidor em ms (opcional) |
url (userinfo) e headers são redigidos nos logs e na saída de status.
Transporte Streamable HTTP
streamable-http é uma opção de transporte adicional junto com sse e stdio. Ele usa streaming HTTP para comunicação bidirecional com servidores MCP remotos.
| Campo | Descrição |
|---|---|
url | URL HTTP ou HTTPS do servidor remoto (obrigatório) |
transport | Defina como "streamable-http" para selecionar este transporte; quando omitido, o OpenClaw usa sse |
headers | Mapa opcional de chave-valor de cabeçalhos HTTP (por exemplo, tokens de autenticação) |
connectionTimeoutMs | Tempo limite de conexão por servidor em ms (opcional) |
transport: "streamable-http" como a grafia canônica. Valores MCP type: "http" nativos da CLI são aceitos quando salvos por meio de openclaw mcp set e reparados por openclaw doctor --fix em configurações existentes, mas transport é o que o Pi incorporado consome diretamente.
Exemplo:
Esses comandos gerenciam apenas a configuração salva. Eles não iniciam a ponte de canal, não abrem uma sessão cliente MCP ativa nem comprovam que o servidor de destino está acessível.
Limites atuais
Esta página documenta a ponte conforme enviada hoje. Limites atuais:- a descoberta de conversas depende dos metadados de rota de sessão existentes do Gateway
- nenhum protocolo push genérico além do adaptador específico do Claude
- ainda não há ferramentas para editar mensagem ou reagir
- o transporte HTTP/SSE/streamable-http conecta-se a um único servidor remoto; ainda não há upstream multiplexado
permissions_list_openinclui apenas aprovações observadas enquanto a ponte está conectada