{"id":259614,"recorded_at":"2026-10-26T16:09:58.212138Z","observed_at":"2026-10-26T16:09:58.212012Z","subject_kind":"endpoint","subject":"f5382d0b-ff95-4147-8bcf-86f95a335111","kind":"mcp.tools","method":"probe.mcp/1","body":{"count":42,"tools":[{"description":"Agenda do escritório no Astrea — audiências (HEARING), reuniões/eventos (EVENT), prazos (DEADLINE) e tarefas (TASK).\nAções:\n- global: todas as atividades numa janela de datas (date_from/date_to em AAAA-MM-DD).\n- por_cliente: as atividades agrupadas por cliente (via processo vinculado; avulsas vão em \"(sem cliente)\").\n\n[Flattened action: global]","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"date_from":{"type":"string"},"date_to":{"type":"string"}},"required":["date_from","date_to"],"type":"object"},"name":"astrea_agenda_global"},{"description":"Agenda do escritório no Astrea — audiências (HEARING), reuniões/eventos (EVENT), prazos (DEADLINE) e tarefas (TASK).\nAções:\n- global: todas as atividades numa janela de datas (date_from/date_to em AAAA-MM-DD).\n- por_cliente: as atividades agrupadas por cliente (via processo vinculado; avulsas vão em \"(sem cliente)\").\n\n[Flattened action: por_cliente]","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"date_from":{"type":"string"},"date_to":{"type":"string"}},"required":["date_from","date_to"],"type":"object"},"name":"astrea_agenda_por_cliente"},{"description":"Lança um andamento (histórico) MANUAL num processo do Astrea — registra um ato/observação na timeline do processo (não é captura automática do tribunal).\n- case_id: id do processo (ver astrea_processos).\n- description: texto do andamento (aceita HTML simples; texto puro vira um parágrafo).\n- date: data/hora do andamento em ISO (ex.: 2026-06-30 ou 2026-06-30T13:00:00Z); omita para usar agora.\n- responsible_id: opcional, id do membro que PRATICOU o ato (ver astrea_responsaveis). Se omitir, o andamento fica assinado pelo usuário da integração, não pelo advogado — passe o id da pessoa para a timeline mostrar quem de fato praticou.\n\nBulk support: accepts case_ids, responsible_ids for batched execution.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"case_id":{"type":"string"},"case_ids":{"items":{"type":"string"},"type":"array"},"date":{"type":"string"},"description":{"type":"string"},"responsible_id":{"type":"string"},"responsible_ids":{"items":{"type":"string"},"type":"array"}},"required":["case_id","description"],"type":"object"},"name":"astrea_andamento_criar"},{"description":"Andamentos (timeline/histórico) de um processo no Astrea — base para gerar relatórios ao cliente.\nCada andamento traz date, type, description, responsible. type que começa com AUTOMATIC = captura automática do tribunal; os demais são manuais.\n\nBulk support: accepts case_ids for batched execution.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"case_id":{"type":"string"},"case_ids":{"items":{"type":"string"},"type":"array"},"limit":{"default":50,"type":"number"},"only_manual":{"default":false,"type":"boolean"}},"required":["case_id"],"type":"object"},"name":"astrea_andamentos"},{"description":"Cria um CASO extrajudicial/consultivo novo no Astrea. No Astrea o caso é uma pasta SEM número CNJ e SEM tribunal, entidade distinta de processo. Use para consultoria, contratos, procedimentos administrativos, licitações, retainer etc., destravando a automação (andamento, tarefa, prazo, documento) sobre a pasta.\nObrigatório: titulo, e o cliente (customer_id de astrea_clientes OU customer_nome para criar um contato novo).\nPara processo JUDICIAL (com CNJ/tribunal) use astrea_processo_criar.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"customer_id":{"type":"string"},"customer_nome":{"type":"string"},"data_abertura":{"type":"string"},"objeto":{"type":"string"},"polo":{"type":"string"},"qualificacao":{"type":"string"},"responsavel_id":{"type":"string"},"tag_ids":{"items":{"type":"string"},"type":"array"},"titulo":{"type":"string"},"valor_envolvido":{"type":"number"}},"required":["titulo"],"type":"object"},"name":"astrea_caso_criar"},{"description":"Clientes/contatos do escritório no Astrea — UMA página compacta (id, nome, classificação, tipo, tags). Pagine com o cursor devolvido. Não varre a conta toda.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"cursor":{"type":"string"},"limit":{"default":30,"type":"number"}},"type":"object"},"name":"astrea_clientes"},{"description":"Cria um COMPROMISSO/evento na agenda, vinculado a um processo no Astrea.\n- case_id: id do processo (ver astrea_processos).\n- title: título do compromisso.\n- start: início em ISO (ex.: 2026-07-10T14:00:00Z). Interpretado no fuso do servidor (UTC).\n- end: opcional, fim em ISO; se omitido, 30 min após o início.\n- all_day: opcional, true para dia inteiro.\n- location: opcional, endereço/local.\n- responsible_id: opcional, id do membro responsável (ver astrea_responsaveis). Se omitir, fica no usuário da integração e pode NÃO aparecer na agenda do advogado. Passe o id da pessoa para o compromisso aparecer na agenda dela.\n- repeat: opcional, cria uma SÉRIE recorrente numa só chamada (semanal/mensal/etc.). A 1ª ocorrência é o start; cada ocorrência preserva o horário e a duração. Cada compromisso é independente (edite/exclua individualmente com astrea_compromisso_editar/_excluir).\nDevolve appointment_id (o id do compromisso criado; na série, um por ocorrência) — guarde para editar/excluir depois.\n\nBulk support: accepts case_ids, responsible_ids for batched execution.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"all_day":{"default":false,"type":"boolean"},"case_id":{"type":"string"},"case_ids":{"items":{"type":"string"},"type":"array"},"end":{"type":"string"},"location":{"type":"string"},"repeat":{"properties":{"count":{"type":"number"},"frequency":{"enum":["daily","weekly","monthly","yearly"],"type":"string"},"interval":{"default":1,"type":"number"},"until":{"type":"string"}},"required":["frequency"],"type":"object"},"responsible_id":{"type":"string"},"responsible_ids":{"items":{"type":"string"},"type":"array"},"start":{"type":"string"},"title":{"type":"string"}},"required":["case_id","title","start"],"type":"object"},"name":"astrea_compromisso_criar"},{"description":"Edita um COMPROMISSO/evento da agenda do Astrea (altera no lugar, PRESERVANDO o appointment_id). Use sempre que precisar mudar algo de um compromisso já criado — adiar/antecipar, renomear, trocar o local ou o responsável. NÃO exclua e recrie: isso gera um id novo e quebra as referências guardadas.\n- appointment_id: id do compromisso (retornado em astrea_compromisso_criar).\n- Informe ao menos um campo para mudar; o que você omitir fica como está.\n- start: novo início em ISO (ex.: 2026-07-10T14:00:00Z). Sem end, a DURAÇÃO é preservada (adiar 30 min move início e fim juntos).\n- end: novo fim em ISO.\n- title / location / all_day: novo título, endereço/local, dia inteiro.\n- responsible_id: novo responsável (ver astrea_responsaveis) — é o que faz o compromisso aparecer na agenda da pessoa.\nNuma série recorrente, edita SÓ a ocorrência informada (cada ocorrência tem seu próprio appointment_id).\n\nBulk support: accepts appointment_ids, responsible_ids for batched execution.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"all_day":{"type":"boolean"},"appointment_id":{"type":"string"},"appointment_ids":{"items":{"type":"string"},"type":"array"},"end":{"type":"string"},"location":{"type":"string"},"responsible_id":{"type":"string"},"responsible_ids":{"items":{"type":"string"},"type":"array"},"start":{"type":"string"},"title":{"type":"string"}},"required":["appointment_id"],"type":"object"},"name":"astrea_compromisso_editar"},{"description":"Exclui um COMPROMISSO/evento da agenda do Astrea. Use para CANCELAR o compromisso. Para só corrigir algo nele (horário, título, local, responsável) use astrea_compromisso_editar — excluir e recriar gera um appointment_id novo e quebra as referências guardadas.\n- appointment_id: id do compromisso (retornado em astrea_compromisso_criar).\n\nBulk support: accepts appointment_ids for batched execution.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"appointment_id":{"type":"string"},"appointment_ids":{"items":{"type":"string"},"type":"array"}},"required":["appointment_id"],"type":"object"},"name":"astrea_compromisso_excluir"},{"description":"Conta do escritório no Astrea: plano contratado (Light/Up/Smart/Company/VIP), status (trial/ativo), dias de trial restantes, tenant e perfil. Útil pra saber em que plano o escritório está.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{},"type":"object"},"name":"astrea_conta"},{"description":"Gera um documento a partir de um MODELO cadastrado no Astrea e o vincula ao processo (área Documentos). O Astrea preenche as variáveis do modelo com os dados do processo, do cliente, do escritório e a data (ex.: gerar uma procuração para o processo X usando o modelo \"Procuração PJ\"). Para anexar um arquivo PRONTO em vez de gerar a partir de modelo, use astrea_documento_upload.\n- model: id ou nome do modelo (ver astrea_modelos); por nome, casa parcialmente (se ambíguo, use o id).\n- case_id: id do processo (ver astrea_processos).\n- title: opcional, título do documento gerado; se omitir, usa o nome do modelo.\n- responsible_id: opcional, id do membro responsável (ver astrea_responsaveis); se omitir, fica no usuário da integração.\n\nBulk support: accepts case_ids, responsible_ids for batched execution.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"case_id":{"type":"string"},"case_ids":{"items":{"type":"string"},"type":"array"},"model":{"type":"string"},"responsible_id":{"type":"string"},"responsible_ids":{"items":{"type":"string"},"type":"array"},"title":{"type":"string"}},"required":["model","case_id"],"type":"object"},"name":"astrea_documento_gerar"},{"description":"Anexa um DOCUMENTO a um processo do Astrea (PDF de petição, comprovante, certidão, decisão, etc.). O arquivo fica vinculado ao PROCESSO, na área Documentos (o Astrea não anexa arquivo dentro de um andamento/tarefa, o vínculo é sempre no processo).\n- case_id: id do processo (ver astrea_processos).\n- attachments: um ou mais arquivos. Por arquivo, informe UMA forma: file_url (a plataforma baixa da URL, precisa abrir sem login), upload_id (arquivo já enviado, veja abaixo) ou file_base64 (só arquivo pequeno cujos bytes você REALMENTE tem; NUNCA pra anexo da conversa). file_name é obrigatório com file_url/file_base64.\n- Arquivo ANEXADO na conversa ou no computador do usuário: NÃO tente ler o conteúdo nem montar file_base64 (você recebe o texto extraído, não os bytes do arquivo, e o upload sairia corrompido). Chame esta tool SEM arquivo, passando file_path se souber o caminho do anexo: ela devolve um comando pronto de upload. Execute esse comando no seu sandbox de execução de código (ou peça pro usuário rodar no terminal) e chame de novo com o `upload_id` E o `file_name` que ela devolveu. Com vários anexos, passe um item por arquivo (com file_path, se souber) e a tool devolve um comando por arquivo.\n- description: descrição do documento (se omitir, usa o nome dos arquivos).\n- responsible_id: opcional, id do membro responsável (ver astrea_responsaveis); se omitir, fica no usuário da integração.\n- Os mesmos arquivos no mesmo processo nos últimos 30 minutos NÃO são enviados de novo (a resposta vem com duplicado_evitado). Só passe permitir_duplicado=true se o usuário pediu explicitamente outra cópia.\n\nBulk support: accepts case_ids, responsible_ids for batched execution.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"attachments":{"items":{"properties":{"content_type":{"type":"string"},"file_base64":{"type":"string"},"file_name":{"type":"string"},"file_path":{"type":"string"},"file_url":{"type":"string"},"upload_code":{"type":"string"},"upload_id":{"type":"string"}},"type":"object"},"type":"array"},"case_id":{"type":"string"},"case_ids":{"items":{"type":"string"},"type":"array"},"description":{"type":"string"},"permitir_duplicado":{"type":"boolean"},"responsible_id":{"type":"string"},"responsible_ids":{"items":{"type":"string"},"type":"array"}},"required":["case_id","attachments"],"type":"object"},"name":"astrea_documento_upload"},{"description":"Encerra (inativa) processos no Astrea, EM LOTE — marca a situação como encerrado (as informações continuam disponíveis para consulta). Use na higienização da carteira para baixar processos finalizados.\n- case_ids: ids dos processos (ver astrea_processos); aceita vários.\n- conviction_amount: opcional, valor da condenação a gravar no encerramento.\n- unlink_from_court: opcional, true também desvincula do tribunal (para de receber andamentos automáticos).\nReabrir um processo encerrado é feito pela própria tela do Astrea (Ativar processo). O Astrea processa o lote de forma assíncrona.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"case_ids":{"items":{"type":"string"},"type":"array"},"conviction_amount":{"type":"number"},"unlink_from_court":{"default":false,"type":"boolean"}},"required":["case_ids"],"type":"object"},"name":"astrea_encerrar"},{"description":"Aplica ou remove etiquetas (tags) em PROCESSOS do Astrea, EM LOTE — use para classificar/higienizar a carteira (ex.: marcar a área de centenas de processos de uma vez). Para etiquetar TAREFAS use astrea_tarefa_etiquetar.\n- action \"aplicar\" adiciona as etiquetas; \"remover\" tira as etiquetas (sem apagar a etiqueta em si).\n- case_ids: ids dos processos (ver astrea_processos); aceita vários (o lote roda numa só chamada, fatiado internamente).\n- tag_ids: ids das etiquetas (ver astrea_etiquetas); aceita várias.\nO Astrea processa o lote de forma assíncrona; o efeito aparece em alguns segundos. As etiquetas precisam existir (crie-as no Astrea antes).\n\n[Flattened action: aplicar]","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"case_ids":{"items":{"type":"string"},"type":"array"},"tag_ids":{"items":{"type":"string"},"type":"array"}},"required":["case_ids","tag_ids"],"type":"object"},"name":"astrea_etiquetar_aplicar"},{"description":"Aplica ou remove etiquetas (tags) em PROCESSOS do Astrea, EM LOTE — use para classificar/higienizar a carteira (ex.: marcar a área de centenas de processos de uma vez). Para etiquetar TAREFAS use astrea_tarefa_etiquetar.\n- action \"aplicar\" adiciona as etiquetas; \"remover\" tira as etiquetas (sem apagar a etiqueta em si).\n- case_ids: ids dos processos (ver astrea_processos); aceita vários (o lote roda numa só chamada, fatiado internamente).\n- tag_ids: ids das etiquetas (ver astrea_etiquetas); aceita várias.\nO Astrea processa o lote de forma assíncrona; o efeito aparece em alguns segundos. As etiquetas precisam existir (crie-as no Astrea antes).\n\n[Flattened action: remover]","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"case_ids":{"items":{"type":"string"},"type":"array"},"tag_ids":{"items":{"type":"string"},"type":"array"}},"required":["case_ids","tag_ids"],"type":"object"},"name":"astrea_etiquetar_remover"},{"description":"Lista as etiquetas (tags) do Astrea — id, label, cor, restrictions (CASES/TASKS/APPOINTMENTS).\nUse para descobrir o id da etiqueta de \"êxito\" (ou qualquer outra) e então filtrar processos com astrea_processos (tag_id) e somar valor da causa / honorários (astrea_financeiro).","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{},"type":"object"},"name":"astrea_etiquetas"},{"description":"Resumo financeiro de um processo no Astrea.\nAções:\n- honorarios: honorários do processo (totalAmount/totalReceived/totalOpen) — use para \"valor de êxito\".\n- despesas: despesas do processo.\n\n[Flattened action: despesas]\n\nBulk support: accepts case_ids for batched execution.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"case_id":{"type":"string"},"case_ids":{"items":{"type":"string"},"type":"array"}},"required":["case_id"],"type":"object"},"name":"astrea_financeiro_despesas"},{"description":"Resumo financeiro de um processo no Astrea.\nAções:\n- honorarios: honorários do processo (totalAmount/totalReceived/totalOpen) — use para \"valor de êxito\".\n- despesas: despesas do processo.\n\n[Flattened action: honorarios]\n\nBulk support: accepts case_ids for batched execution.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"case_id":{"type":"string"},"case_ids":{"items":{"type":"string"},"type":"array"}},"required":["case_id"],"type":"object"},"name":"astrea_financeiro_honorarios"},{"description":"Lista os quadros KANBAN de tarefas do escritório no Astrea, com as colunas de cada um (id, nome, tipo: BACKLOG = entrada, DONE = concluído). Use os ids em astrea_tarefa_criar (kanban_id/column_id) e astrea_tarefa_mover (column_id). \"padrao\" marca o quadro padrão.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{},"type":"object"},"name":"astrea_kanbans"},{"description":"Lista os MODELOS de documento cadastrados no Astrea (procuração, contrato de honorários, petição, etc.). Use para descobrir o modelo antes de gerar um documento com astrea_documento_gerar. Retorna id + nome de cada modelo.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{},"type":"object"},"name":"astrea_modelos"},{"description":"Cria um PRAZO processual no Astrea (aparece como prazo na agenda e nos relatórios de prazos, não como tarefa solta), vinculado a um processo ou caso, e opcionalmente as TAREFAS que dependem dele, tudo numa chamada (ex.: prazo fatal 06/11 para protocolar; tarefas \"levantar movimentações\", \"minuta\", \"revisão\").\n- case_id: id do processo ou caso (ver astrea_processos).\n- title: título do prazo (até 250 caracteres).\n- due_date: data FATAL, AAAA-MM-DD. Obrigatória: calcule você a contagem (dias úteis/corridos a partir da intimação); o Astrea recebe a data pronta.\n- responsible_id: opcional, responsável pelo prazo (ver astrea_responsaveis); se omitir, fica no usuário da integração e pode não aparecer na agenda do advogado.\n- comments: opcional, observações do prazo. tag_ids: opcional, etiquetas (ver astrea_etiquetas; a etiqueta precisa permitir prazos).\n- tarefas: opcional, tarefas vinculadas ao prazo. Cada uma com description e a data: due_date (AAAA-MM-DD) OU dias_antes (dias corridos antes da data fatal; omitindo os dois, vence na data fatal). responsible_id por tarefa (ex.: estagiária numa, advogada noutra).\nDevolve prazo_id e, por tarefa, task_id (editar/excluir com astrea_tarefa_editar/_excluir). Falha numa tarefa não desfaz o prazo: veja \"tarefas[].criada\" e crie só a que faltou com astrea_tarefa_criar + prazo_id. Mudar a data fatal depois NÃO recalcula as tarefas.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"case_id":{"type":"string"},"comments":{"type":"string"},"due_date":{"type":"string"},"responsible_id":{"type":"string"},"tag_ids":{"items":{"type":"string"},"type":"array"},"tarefas":{"items":{"properties":{"description":{"type":"string"},"dias_antes":{"type":"number"},"due_date":{"type":"string"},"responsible_id":{"type":"string"}},"required":["description"],"type":"object"},"type":"array"},"title":{"type":"string"}},"required":["case_id","title","due_date"],"type":"object"},"name":"astrea_prazo_criar"},{"description":"Cria um PROCESSO judicial novo no Astrea (fecha a paridade CRUD com astrea_processo_editar/astrea_encerrar). Use para cadastrar um processo a partir de dados extraídos (ex.: petição inicial), destravando a automação (andamento, tarefa, prazo, documento).\nObrigatório: titulo, e o cliente (customer_id de astrea_clientes OU customer_nome para criar um contato novo).\nCampos judiciais opcionais, informados por NOME: numero_cnj, tribunal, vara, tipo_acao, data_distribuicao (AAAA-MM-DD), instancia.\nPara CASO extrajudicial/consultivo (sem CNJ/tribunal) use astrea_caso_criar.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"customer_id":{"type":"string"},"customer_nome":{"type":"string"},"data_distribuicao":{"type":"string"},"instancia":{"type":"number"},"numero_cnj":{"type":"string"},"objeto":{"type":"string"},"polo":{"type":"string"},"qualificacao":{"type":"string"},"responsavel_id":{"type":"string"},"tag_ids":{"items":{"type":"string"},"type":"array"},"tipo_acao":{"type":"string"},"titulo":{"type":"string"},"tribunal":{"type":"string"},"valor_causa":{"type":"number"},"valor_condenacao":{"type":"number"},"vara":{"type":"string"}},"required":["titulo"],"type":"object"},"name":"astrea_processo_criar"},{"description":"Edita campos de UM processo no Astrea. Lê o processo atual e regrava preservando o resto (só muda o que você informar).\nCampos editáveis (informe ao menos um):\n- objeto: o campo \"Objeto\" (descrição do processo).\n- conviction_amount: valor da condenação.\nPara encerrar/reativar ou etiquetar use astrea_encerrar / astrea_etiquetar.\n\nBulk support: accepts case_ids for batched execution.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"case_id":{"type":"string"},"case_ids":{"items":{"type":"string"},"type":"array"},"conviction_amount":{"type":"number"},"objeto":{"type":"string"}},"required":["case_id"],"type":"object"},"name":"astrea_processo_editar"},{"description":"Processos (casos) no Astrea. Respostas COMPACTAS pra economizar contexto.\nAções:\n- buscar: ACHA o processo pelo NÚMERO CNJ (ou trecho dele) e/ou por texto do título/cliente, devolvendo o id interno que as outras tools pedem (case_id). Mande TODOS os números de uma vez em numeros[] — a busca varre a conta UMA vez pra lista inteira (triagem de publicações: 30 números = 1 chamada). Por padrão inclui encerrados (status \"All\"), que é onde ficam execuções/recursos antigos. Resposta: encontrados[{consulta, processos[]}], nao_encontrados[], varredura{paginas, processos_varridos, truncado}. truncado=true significa que a varredura parou antes do fim (já achou tudo que foi pedido, ou bateu o teto) — pode haver outros processos casando um número PARCIAL.\n- list: UMA página de processos (não varre a conta toda). Filtros: contact_id, tag_id, status. Pagine com cursor (devolvido em cada resposta). Pra achar UM processo específico use buscar, não pagine list.\n- count: total de processos (mesmos filtros) rápido, use pra \"quantos\".\n- por_cliente: resumo por cliente (qtd + soma do valor da causa), ordenado. Use top_n pra limitar. Respeita o status. Sem o detalhe dos processos, pra detalhar chame list com contact_id.\n- novos_por_mes: nº de processos novos por mês (data de distribuição). Respeita o status.\npor_cliente e novos_por_mes varrem a conta e também devolvem varredura{paginas, processos_varridos, truncado, motivo}. truncado=true significa que o resultado é PARCIAL (motivo \"tempo\" = a conta é grande demais pra varrer inteira numa chamada; \"teto_de_paginas\" = passou de 5000 processos) — diga isso ao usuário em vez de apresentar o número como total do escritório, e use count pro total exato ou list com filtros pra recortar.\nCampos por processo (list): id, number, customer/customerId, title, court, lawsuitType, amount (valor da causa), convictionAmount (valor da condenação, só vem quando preenchido no Astrea), distribuitionDate, lastMovement, active (true=em andamento, false=encerrado), currentInstanceNumber (grau/instância), situacao (rótulo pronto, ex.: \"Encerrado 1º Grau\"), tagIds.\n\n[Flattened action: buscar]\n\nBulk support: accepts contact_ids, tag_ids for batched execution.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"contact_id":{"type":"string"},"contact_ids":{"items":{"type":"string"},"type":"array"},"cursor":{"type":"string"},"limit":{"default":30,"type":"number"},"numeros":{"items":{"type":"string"},"type":"array"},"status":{"enum":["Active","Inactive","Archived","All"],"type":"string"},"tag_id":{"type":"string"},"tag_ids":{"items":{"type":"string"},"type":"array"},"texto":{"type":"string"},"top_n":{"type":"number"}},"type":"object"},"name":"astrea_processos_buscar"},{"description":"Processos (casos) no Astrea. Respostas COMPACTAS pra economizar contexto.\nAções:\n- buscar: ACHA o processo pelo NÚMERO CNJ (ou trecho dele) e/ou por texto do título/cliente, devolvendo o id interno que as outras tools pedem (case_id). Mande TODOS os números de uma vez em numeros[] — a busca varre a conta UMA vez pra lista inteira (triagem de publicações: 30 números = 1 chamada). Por padrão inclui encerrados (status \"All\"), que é onde ficam execuções/recursos antigos. Resposta: encontrados[{consulta, processos[]}], nao_encontrados[], varredura{paginas, processos_varridos, truncado}. truncado=true significa que a varredura parou antes do fim (já achou tudo que foi pedido, ou bateu o teto) — pode haver outros processos casando um número PARCIAL.\n- list: UMA página de processos (não varre a conta toda). Filtros: contact_id, tag_id, status. Pagine com cursor (devolvido em cada resposta). Pra achar UM processo específico use buscar, não pagine list.\n- count: total de processos (mesmos filtros) rápido, use pra \"quantos\".\n- por_cliente: resumo por cliente (qtd + soma do valor da causa), ordenado. Use top_n pra limitar. Respeita o status. Sem o detalhe dos processos, pra detalhar chame list com contact_id.\n- novos_por_mes: nº de processos novos por mês (data de distribuição). Respeita o status.\npor_cliente e novos_por_mes varrem a conta e também devolvem varredura{paginas, processos_varridos, truncado, motivo}. truncado=true significa que o resultado é PARCIAL (motivo \"tempo\" = a conta é grande demais pra varrer inteira numa chamada; \"teto_de_paginas\" = passou de 5000 processos) — diga isso ao usuário em vez de apresentar o número como total do escritório, e use count pro total exato ou list com filtros pra recortar.\nCampos por processo (list): id, number, customer/customerId, title, court, lawsuitType, amount (valor da causa), convictionAmount (valor da condenação, só vem quando preenchido no Astrea), distribuitionDate, lastMovement, active (true=em andamento, false=encerrado), currentInstanceNumber (grau/instância), situacao (rótulo pronto, ex.: \"Encerrado 1º Grau\"), tagIds.\n\n[Flattened action: count]\n\nBulk support: accepts contact_ids, tag_ids for batched execution.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"contact_id":{"type":"string"},"contact_ids":{"items":{"type":"string"},"type":"array"},"cursor":{"type":"string"},"limit":{"default":30,"type":"number"},"numeros":{"items":{"type":"string"},"type":"array"},"status":{"enum":["Active","Inactive","Archived","All"],"type":"string"},"tag_id":{"type":"string"},"tag_ids":{"items":{"type":"string"},"type":"array"},"texto":{"type":"string"},"top_n":{"type":"number"}},"type":"object"},"name":"astrea_processos_count"},{"description":"Processos (casos) no Astrea. Respostas COMPACTAS pra economizar contexto.\nAções:\n- buscar: ACHA o processo pelo NÚMERO CNJ (ou trecho dele) e/ou por texto do título/cliente, devolvendo o id interno que as outras tools pedem (case_id). Mande TODOS os números de uma vez em numeros[] — a busca varre a conta UMA vez pra lista inteira (triagem de publicações: 30 números = 1 chamada). Por padrão inclui encerrados (status \"All\"), que é onde ficam execuções/recursos antigos. Resposta: encontrados[{consulta, processos[]}], nao_encontrados[], varredura{paginas, processos_varridos, truncado}. truncado=true significa que a varredura parou antes do fim (já achou tudo que foi pedido, ou bateu o teto) — pode haver outros processos casando um número PARCIAL.\n- list: UMA página de processos (não varre a conta toda). Filtros: contact_id, tag_id, status. Pagine com cursor (devolvido em cada resposta). Pra achar UM processo específico use buscar, não pagine list.\n- count: total de processos (mesmos filtros) rápido, use pra \"quantos\".\n- por_cliente: resumo por cliente (qtd + soma do valor da causa), ordenado. Use top_n pra limitar. Respeita o status. Sem o detalhe dos processos, pra detalhar chame list com contact_id.\n- novos_por_mes: nº de processos novos por mês (data de distribuição). Respeita o status.\npor_cliente e novos_por_mes varrem a conta e também devolvem varredura{paginas, processos_varridos, truncado, motivo}. truncado=true significa que o resultado é PARCIAL (motivo \"tempo\" = a conta é grande demais pra varrer inteira numa chamada; \"teto_de_paginas\" = passou de 5000 processos) — diga isso ao usuário em vez de apresentar o número como total do escritório, e use count pro total exato ou list com filtros pra recortar.\nCampos por processo (list): id, number, customer/customerId, title, court, lawsuitType, amount (valor da causa), convictionAmount (valor da condenação, só vem quando preenchido no Astrea), distribuitionDate, lastMovement, active (true=em andamento, false=encerrado), currentInstanceNumber (grau/instância), situacao (rótulo pronto, ex.: \"Encerrado 1º Grau\"), tagIds.\n\n[Flattened action: list]\n\nBulk support: accepts contact_ids, tag_ids for batched execution.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"contact_id":{"type":"string"},"contact_ids":{"items":{"type":"string"},"type":"array"},"cursor":{"type":"string"},"limit":{"default":30,"type":"number"},"numeros":{"items":{"type":"string"},"type":"array"},"status":{"enum":["Active","Inactive","Archived","All"],"type":"string"},"tag_id":{"type":"string"},"tag_ids":{"items":{"type":"string"},"type":"array"},"texto":{"type":"string"},"top_n":{"type":"number"}},"type":"object"},"name":"astrea_processos_list"},{"description":"Processos (casos) no Astrea. Respostas COMPACTAS pra economizar contexto.\nAções:\n- buscar: ACHA o processo pelo NÚMERO CNJ (ou trecho dele) e/ou por texto do título/cliente, devolvendo o id interno que as outras tools pedem (case_id). Mande TODOS os números de uma vez em numeros[] — a busca varre a conta UMA vez pra lista inteira (triagem de publicações: 30 números = 1 chamada). Por padrão inclui encerrados (status \"All\"), que é onde ficam execuções/recursos antigos. Resposta: encontrados[{consulta, processos[]}], nao_encontrados[], varredura{paginas, processos_varridos, truncado}. truncado=true significa que a varredura parou antes do fim (já achou tudo que foi pedido, ou bateu o teto) — pode haver outros processos casando um número PARCIAL.\n- list: UMA página de processos (não varre a conta toda). Filtros: contact_id, tag_id, status. Pagine com cursor (devolvido em cada resposta). Pra achar UM processo específico use buscar, não pagine list.\n- count: total de processos (mesmos filtros) rápido, use pra \"quantos\".\n- por_cliente: resumo por cliente (qtd + soma do valor da causa), ordenado. Use top_n pra limitar. Respeita o status. Sem o detalhe dos processos, pra detalhar chame list com contact_id.\n- novos_por_mes: nº de processos novos por mês (data de distribuição). Respeita o status.\npor_cliente e novos_por_mes varrem a conta e também devolvem varredura{paginas, processos_varridos, truncado, motivo}. truncado=true significa que o resultado é PARCIAL (motivo \"tempo\" = a conta é grande demais pra varrer inteira numa chamada; \"teto_de_paginas\" = passou de 5000 processos) — diga isso ao usuário em vez de apresentar o número como total do escritório, e use count pro total exato ou list com filtros pra recortar.\nCampos por processo (list): id, number, customer/customerId, title, court, lawsuitType, amount (valor da causa), convictionAmount (valor da condenação, só vem quando preenchido no Astrea), distribuitionDate, lastMovement, active (true=em andamento, false=encerrado), currentInstanceNumber (grau/instância), situacao (rótulo pronto, ex.: \"Encerrado 1º Grau\"), tagIds.\n\n[Flattened action: novos_por_mes]\n\nBulk support: accepts contact_ids, tag_ids for batched execution.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"contact_id":{"type":"string"},"contact_ids":{"items":{"type":"string"},"type":"array"},"cursor":{"type":"string"},"limit":{"default":30,"type":"number"},"numeros":{"items":{"type":"string"},"type":"array"},"status":{"enum":["Active","Inactive","Archived","All"],"type":"string"},"tag_id":{"type":"string"},"tag_ids":{"items":{"type":"string"},"type":"array"},"texto":{"type":"string"},"top_n":{"type":"number"}},"type":"object"},"name":"astrea_processos_novos_por_mes"},{"description":"Processos (casos) no Astrea. Respostas COMPACTAS pra economizar contexto.\nAções:\n- buscar: ACHA o processo pelo NÚMERO CNJ (ou trecho dele) e/ou por texto do título/cliente, devolvendo o id interno que as outras tools pedem (case_id). Mande TODOS os números de uma vez em numeros[] — a busca varre a conta UMA vez pra lista inteira (triagem de publicações: 30 números = 1 chamada). Por padrão inclui encerrados (status \"All\"), que é onde ficam execuções/recursos antigos. Resposta: encontrados[{consulta, processos[]}], nao_encontrados[], varredura{paginas, processos_varridos, truncado}. truncado=true significa que a varredura parou antes do fim (já achou tudo que foi pedido, ou bateu o teto) — pode haver outros processos casando um número PARCIAL.\n- list: UMA página de processos (não varre a conta toda). Filtros: contact_id, tag_id, status. Pagine com cursor (devolvido em cada resposta). Pra achar UM processo específico use buscar, não pagine list.\n- count: total de processos (mesmos filtros) rápido, use pra \"quantos\".\n- por_cliente: resumo por cliente (qtd + soma do valor da causa), ordenado. Use top_n pra limitar. Respeita o status. Sem o detalhe dos processos, pra detalhar chame list com contact_id.\n- novos_por_mes: nº de processos novos por mês (data de distribuição). Respeita o status.\npor_cliente e novos_por_mes varrem a conta e também devolvem varredura{paginas, processos_varridos, truncado, motivo}. truncado=true significa que o resultado é PARCIAL (motivo \"tempo\" = a conta é grande demais pra varrer inteira numa chamada; \"teto_de_paginas\" = passou de 5000 processos) — diga isso ao usuário em vez de apresentar o número como total do escritório, e use count pro total exato ou list com filtros pra recortar.\nCampos por processo (list): id, number, customer/customerId, title, court, lawsuitType, amount (valor da causa), convictionAmount (valor da condenação, só vem quando preenchido no Astrea), distribuitionDate, lastMovement, active (true=em andamento, false=encerrado), currentInstanceNumber (grau/instância), situacao (rótulo pronto, ex.: \"Encerrado 1º Grau\"), tagIds.\n\n[Flattened action: por_cliente]\n\nBulk support: accepts contact_ids, tag_ids for batched execution.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"contact_id":{"type":"string"},"contact_ids":{"items":{"type":"string"},"type":"array"},"cursor":{"type":"string"},"limit":{"default":30,"type":"number"},"numeros":{"items":{"type":"string"},"type":"array"},"status":{"enum":["Active","Inactive","Archived","All"],"type":"string"},"tag_id":{"type":"string"},"tag_ids":{"items":{"type":"string"},"type":"array"},"texto":{"type":"string"},"top_n":{"type":"number"}},"type":"object"},"name":"astrea_processos_por_cliente"},{"description":"Lista os usuários (membros) do escritório no Astrea — id, nome, e-mail. Use para descobrir o id do RESPONSÁVEL antes de criar/editar tarefa, compromisso ou andamento (astrea_tarefa_criar / astrea_compromisso_criar / astrea_compromisso_editar / astrea_andamento_criar com responsible_id), para que a atividade apareça na agenda — e na timeline — da pessoa certa. O campo \"eu\" marca o usuário da integração.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{},"type":"object"},"name":"astrea_responsaveis"},{"description":"Cria uma TAREFA vinculada a um processo no Astrea.\n- case_id: id do processo (ver astrea_processos).\n- description: o que fazer.\n- due_date: opcional, prazo em ISO (ex.: 2026-07-10).\n- responsible_id: opcional, id do membro do escritório responsável (ver astrea_responsaveis). Se omitir, fica no usuário da integração e pode NÃO aparecer na agenda do advogado, que filtra pelo próprio responsável. Para a tarefa aparecer na agenda de alguém, passe o id dessa pessoa.\n- repeat: opcional, cria uma SÉRIE recorrente numa só chamada (semanal/mensal/etc.). Exige due_date (vira a 1ª ocorrência). Cada ocorrência é uma tarefa independente (edite/exclua individualmente com astrea_tarefa_editar/_excluir).\n- kanban_id / column_id: opcionais, colocam a tarefa num quadro kanban (ids em astrea_kanbans). Só column_id = o quadro dessa coluna; só kanban_id = a 1ª coluna (backlog) do quadro. O Astrea só aceita no kanban tarefa COM prazo, então exige due_date. Para mudar a coluna depois use astrea_tarefa_mover.\n- prazo_id: opcional, vincula a tarefa a um PRAZO processual já existente (id de astrea_prazo_criar ou de um DEADLINE em astrea_agenda); ela aparece dentro do prazo no Astrea. Para criar o prazo e as tarefas juntos use astrea_prazo_criar.\nDevolve task_id (o id da tarefa criada; na série, um por ocorrência) — guarde para editar/excluir depois.\n\nBulk support: accepts case_ids, responsible_ids, kanban_ids, column_ids, prazo_ids for batched execution.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"case_id":{"type":"string"},"case_ids":{"items":{"type":"string"},"type":"array"},"column_id":{"type":"string"},"column_ids":{"items":{"type":"string"},"type":"array"},"description":{"type":"string"},"due_date":{"type":"string"},"kanban_id":{"type":"string"},"kanban_ids":{"items":{"type":"string"},"type":"array"},"prazo_id":{"type":"string"},"prazo_ids":{"items":{"type":"string"},"type":"array"},"repeat":{"properties":{"count":{"type":"number"},"frequency":{"enum":["daily","weekly","monthly","yearly"],"type":"string"},"interval":{"default":1,"type":"number"},"until":{"type":"string"}},"required":["frequency"],"type":"object"},"responsible_id":{"type":"string"},"responsible_ids":{"items":{"type":"string"},"type":"array"}},"required":["case_id","description"],"type":"object"},"name":"astrea_tarefa_criar"},{"description":"Edita uma TAREFA existente no Astrea (altera no lugar, sem duplicar). Informe ao menos um campo para mudar; o que você omitir fica como está — inclusive as etiquetas da tarefa (para mudá-las use astrea_tarefa_etiquetar).\n- task_id: id da tarefa (retornado em astrea_tarefa_criar / astrea_agenda_global).\n- case_id: id do processo da tarefa (para localizá-la).\n- description / due_date (AAAA-MM-DD) / responsible_id (ver astrea_responsaveis): campos a alterar (omita os que não muda).\nPara reagendar VÁRIAS tarefas, chame uma vez por tarefa (task_ids em lote só serve quando todas são do MESMO case_id).\n\nBulk support: accepts task_ids, case_ids, responsible_ids for batched execution.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"case_id":{"type":"string"},"case_ids":{"items":{"type":"string"},"type":"array"},"description":{"type":"string"},"due_date":{"type":"string"},"responsible_id":{"type":"string"},"responsible_ids":{"items":{"type":"string"},"type":"array"},"task_id":{"type":"string"},"task_ids":{"items":{"type":"string"},"type":"array"}},"required":["task_id","case_id"],"type":"object"},"name":"astrea_tarefa_editar"},{"description":"Aplica ou remove etiquetas (tags) em TAREFAS do Astrea — uma ou várias tarefas numa só chamada. Use para classificar/priorizar tarefas (ex.: marcar \"URGÊNCIA\" nas atrasadas) ou restaurar etiquetas. Para etiquetar PROCESSOS use astrea_etiquetar.\n- action \"aplicar\" adiciona as etiquetas às tarefas; \"remover\" tira (sem apagar a etiqueta em si). As etiquetas já presentes são mantidas.\n- task_ids: ids das tarefas (ver astrea_agenda_global, astrea_agenda ou astrea_tarefa_criar); NÃO precisa de case_id.\n- tag_ids: ids das etiquetas (ver astrea_etiquetas; a etiqueta precisa permitir TASKS em restrictions).\nRoda tarefa por tarefa; num lote grande pode voltar \"truncado\" com a lista \"pendentes\" — chame de novo só com elas. Falha numa tarefa não impede as outras (veja \"tarefas[].ok\").\n\n[Flattened action: aplicar]","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"tag_ids":{"items":{"type":"string"},"type":"array"},"task_ids":{"items":{"type":"string"},"type":"array"}},"required":["task_ids","tag_ids"],"type":"object"},"name":"astrea_tarefa_etiquetar_aplicar"},{"description":"Aplica ou remove etiquetas (tags) em TAREFAS do Astrea — uma ou várias tarefas numa só chamada. Use para classificar/priorizar tarefas (ex.: marcar \"URGÊNCIA\" nas atrasadas) ou restaurar etiquetas. Para etiquetar PROCESSOS use astrea_etiquetar.\n- action \"aplicar\" adiciona as etiquetas às tarefas; \"remover\" tira (sem apagar a etiqueta em si). As etiquetas já presentes são mantidas.\n- task_ids: ids das tarefas (ver astrea_agenda_global, astrea_agenda ou astrea_tarefa_criar); NÃO precisa de case_id.\n- tag_ids: ids das etiquetas (ver astrea_etiquetas; a etiqueta precisa permitir TASKS em restrictions).\nRoda tarefa por tarefa; num lote grande pode voltar \"truncado\" com a lista \"pendentes\" — chame de novo só com elas. Falha numa tarefa não impede as outras (veja \"tarefas[].ok\").\n\n[Flattened action: remover]","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"tag_ids":{"items":{"type":"string"},"type":"array"},"task_ids":{"items":{"type":"string"},"type":"array"}},"required":["task_ids","tag_ids"],"type":"object"},"name":"astrea_tarefa_etiquetar_remover"},{"description":"Exclui uma TAREFA do Astrea.\n- task_id: id da tarefa (retornado em astrea_tarefa_criar).\n- case_id: id do processo da tarefa (para localizá-la).\n\nBulk support: accepts task_ids, case_ids for batched execution.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"case_id":{"type":"string"},"case_ids":{"items":{"type":"string"},"type":"array"},"task_id":{"type":"string"},"task_ids":{"items":{"type":"string"},"type":"array"}},"required":["task_id","case_id"],"type":"object"},"name":"astrea_tarefa_excluir"},{"description":"Move uma ou várias TAREFAS para outra coluna do kanban do Astrea (o mesmo que arrastar o cartão na tela) — ex.: de \"A fazer\" para \"Em andamento\" ou para a coluna de concluídas.\n- task_ids: ids das tarefas (ver astrea_tarefas_listar / astrea_tarefa_criar).\n- column_id: coluna de destino (ver astrea_kanbans); kanban_id é opcional (descoberto pela coluna).\nFalha numa tarefa não impede as outras (veja \"tarefas[].ok\"). Tarefa sem prazo não fica no kanban (regra do Astrea): defina o prazo antes com astrea_tarefa_editar.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"column_id":{"type":"string"},"kanban_id":{"type":"string"},"task_ids":{"items":{"type":"string"},"type":"array"}},"required":["task_ids","column_id"],"type":"object"},"name":"astrea_tarefa_mover"},{"description":"Lista TAREFAS do Astrea sem depender de agenda — inclusive as SEM PRAZO, que astrea_agenda nunca mostra. Escolha UMA fonte:\n- case_ids: todas as tarefas desses processos (com e sem prazo; até 50 processos por chamada).\n- sem_prazo=true: tarefas sem prazo da conta inteira, paginadas (passe o cursor devolvido para a próxima página; tem_mais=false = acabou).\n- date_from + date_to (AAAA-MM-DD): tarefas com prazo da conta inteira nessa janela.\nFiltros: status (\"IN_PROGRESS\" abertas — padrão, \"DONE\" concluídas, \"ALL\" todas), responsible_id (ver astrea_responsaveis), tag_id (ver astrea_etiquetas).\nCada tarefa traz id, case_id, case_title, lawsuit_number, description, due_date (null = sem prazo), status, priority, responsible_id, tag_ids, kanban {kanban_id, column_id} (null = fora do kanban) e created_date.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"case_ids":{"items":{"type":"string"},"type":"array"},"cursor":{"type":"string"},"date_from":{"type":"string"},"date_to":{"type":"string"},"limit":{"default":50,"type":"number"},"responsible_id":{"type":"string"},"sem_prazo":{"type":"boolean"},"status":{"default":"IN_PROGRESS","enum":["IN_PROGRESS","DONE","ALL"],"type":"string"},"tag_id":{"type":"string"}},"type":"object"},"name":"astrea_tarefas_listar"},{"description":"MCP.AI for IDE agents (Cursor, etc.): log in in the browser, copy the access token. Best: add it to this server's config as a header `Authorization: Bearer <token>` for a permanent, non-expiring connection. Or paste it here for a session-only login: call with { token: \"<jwt>\" } after the user pastes, or with no args to get the link.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"token":{"type":"string"}},"type":"object"},"name":"authenticate"},{"description":"Returns connection status and URLs. When all providers are connected, returns authenticated:true and empty pending[]. When credentials are missing, returns connect_url for the toolkit and per-install URLs.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{},"type":"object"},"name":"connect"},{"description":"The official mcp.ai marketplace — the in-platform catalog of every MCP/tool, AND the way to run them. Covers capability requests like \"find an MCP that does X\", \"consulta um CPF\", \"is there a tool for Y\". Core flow: action=search discovers MCPs by intent → describe returns one MCP's full profile (every tool with its id + params, pricing, auth) so you pick the right tool_id → invoke RUNS that tool. KEY: invoke works even when the MCP is NOT installed — it runs the tool pontualmente (one-off), without adding the MCP to the toolkit and without bloating the tool list. If the MCP needs a credential/login, invoke returns a connect link; if it is paid and the wallet is empty, invoke returns a checkout/top-up link (the user opens it, then you retry). Use install only to make an MCP PERMANENT in the active toolkit (its tools then show up natively in future sessions); prefer invoke for a single/occasional use. list_tools lists what is callable right now. subscribe/cancel handle per-MCP billing; report_bug sends feedback; request_mcp asks us to build a NEW MCP when nothing fits. Search/describe flag installed_in_toolkit vs installed_in_workspace. Writes (install/uninstall/subscribe/cancel and the one-off install behind invoke) require workspace owner/admin. It also carries the mcp.ai PROMPT LIBRARY, which is about ready-made prompt TEXT rather than MCPs: search_prompts finds one, get_prompt returns its full text with {{variables}} filled, and publish_prompt saves a prompt and returns a shareable mcp.ai/p/<slug> link that opens without login.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"action":{"default":"search","enum":["search","describe","install","uninstall","subscribe","cancel","resume","report_bug","request_mcp","list_tools","invoke","search_prompts","get_prompt","publish_prompt"],"type":"string"},"arguments":{"default":"{}","type":"string"},"cancel_comment":{"default":"","type":"string"},"cancel_reason":{"enum":["too_expensive","missing_features","switched_service","unused","customer_service","too_complex","low_quality","other"],"type":"string"},"conversation":{"default":"[]","type":"string"},"immediate":{"default":false,"type":"boolean"},"limit":{"default":10,"type":"number"},"mcp_id":{"default":"","type":"string"},"message":{"default":"","type":"string"},"prompt_body":{"default":"","type":"string"},"prompt_category":{"default":"","type":"string"},"prompt_description":{"default":"","type":"string"},"prompt_slug":{"default":"","type":"string"},"prompt_targets":{"default":[],"items":{"enum":["claude","chatgpt","cursor","lovable"],"type":"string"},"type":"array"},"prompt_title":{"default":"","type":"string"},"prompt_tool":{"default":"","type":"string"},"prompt_vars":{"default":"{}","type":"string"},"query":{"default":"","type":"string"},"report_context":{"default":"","type":"string"},"request_details":{"default":"","type":"string"},"request_name":{"default":"","type":"string"},"tier_slug":{"default":"","type":"string"},"tool_id":{"default":"","type":"string"}},"type":"object"},"name":"marketplace"},{"description":"Report a bug, missing feature, or send feedback. Include the conversation array with recent messages for reproduction.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"context":{"default":"","type":"string"},"conversation":{"default":"[]","type":"string"},"message":{"type":"string"}},"required":["message"],"type":"object"},"name":"report_bug"},{"description":"Show the current MCP platform and adapter versions.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{},"type":"object"},"name":"show_version"},{"description":"Returns the current toolkit state: installed MCPs, their connection status, the accounts connected to each one, and how many catalog tools each exposes.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{},"type":"object"},"name":"toolkit_info"}]},"body_sha256":"8c0567a0ce80430ec733e5b8f6b0079797f6c2711701d0e105fd0fcc306a1b36","prev_id":null,"leaf":"0xa62ac64c56e187223fc595d7960cc746f572870d6cb7edc3540fd432de56389f","leaf_text":"{\"body\":\"8c0567a0ce80430ec733e5b8f6b0079797f6c2711701d0e105fd0fcc306a1b36\",\"id\":259614,\"kind\":\"mcp.tools\",\"method\":\"probe.mcp/1\",\"observed_us\":1793030998212012,\"prev\":null,\"subject\":\"f5382d0b-ff95-4147-8bcf-86f95a335111\",\"subject_kind\":\"endpoint\"}","day":{"day":"2026-10-26","leaves":296695,"root":"0xf43e8dcc3d451a4788b26be904c55e8c4c0fa75c9666796c51db38d37e2c0df8","chained":"0x702d5ac508f08b0d1accf36af25822d8e5660367494edd17a642fb61e158a57a","anchor_chain":"eip155:5042002","anchor_tx":"0x495162f8936e19f0039918feebe6c307f327cd6bf8c37219620b1970041fa9ae","anchor_block":69251483},"proof":["0xa62aeed6b24736198c1b14469834a0b3951dda9b942664c2104926f111dd7d94","0x694e9b3d4980441bdc162de7a77e3ee438676c0ca26704322d2766a2cca8c971","0xc9494578716d891b803bfc6f4a2ef513337eff9e3cbb54fb9aad6b9d988b8c35","0x496a87fa86a7239b085492f6db70fa617a112a1a7967ff640d4a3f4748926ee7","0x84a335d8576add510f88073b19e265c210368d3a9d4b36a08cbae3113746dd84","0x273fb42235f491da3a39d2eef3e278435cc8fca178fb407204808f69599b5bda","0x58bc55d99abfa8e542d8db7eef653c5abe22c915bac28f3773879f1379cac373","0xe1ba96aba650821f3d9552eae51cc6c595d410d0b1248f7d91b319bd1396e862","0xb4c0b7187921a3fa9eef3519b98c8bca669a3aa7d7681abd99a70afcf0598efd","0x93c7b1ac8754236471980488e2ae86b7135fed175d7852bf9b8ef708900f060d","0xf9b4ada16aca6f9b63c09b94519008e1b94357a9d352c245023758b56b82d0b1","0x1e464fcb484a1e782f9fe44be5118a9de934eb533c96ba10fc7d20e3a3e4711c","0x292ebdce6b8d3d7ef08ad646a0fd97dee9313ab55c1a350807d9f3013794c37a","0x428106f4ae4ec142f17aebf6fa50935242f8d3f1c211cf95d6351d03d11da2b7","0x62a900133713919f4eed33d8336876b7a6d538233b8a4f3ed03b29aa44f5bad0","0x1ac20d30773e1f4f2f811540e9a99b5cca9177c9e2e029acc0d80cf3f1d11f0f","0xd21942ae3214eff88e08ab04884fd4b11958b51af9a0741b7668e2d07a2c56c9","0x9a9024edb5069d88a324facb310a5ce8e495214bbaa968f077bede437390194f","0x9b9ce5b74b9bab5121612ef6b64920a8d453cbf311096a423eef9702747e868a"]}