Astrea (Aurum)

Reporting and queries over Astrea (Aurum), Brazilian legal-practice software: cases per client, cale

Should I use this

Quality & Safety

C
Description quality
94%
Schema completeness
69%
Naming quality
79%
Poisoning risk
0%
Permission match
100%
Protocol compliance
100%

Findings (16)

  • HIGHTool poisoning patterns detected
  • MEDIUMTool 'astrea_processos_buscar' description contains placeholder textin astrea_processos_buscar
  • MEDIUMTool 'astrea_processos_list' description contains placeholder textin astrea_processos_list
  • MEDIUMTool 'astrea_processos_count' description contains placeholder textin astrea_processos_count
  • MEDIUMTool 'astrea_processos_por_cliente' description contains placeholder textin astrea_processos_por_cliente
  • MEDIUMTool 'astrea_processos_novos_por_mes' description contains placeholder textin astrea_processos_novos_por_mes
  • LOWTool 'astrea_conta' description lacks action verbin astrea_conta
  • LOWTool 'astrea_clientes' description lacks action verbin astrea_clientes
  • LOWTool 'connect' description lacks action verbin connect
  • LOWTool 'astrea_tarefa_etiquetar_aplicar' name length outside 3-30 rangein astrea_tarefa_etiquetar_aplicar

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~13,002Tokens (tool definitions)
~982 BTypical response size
Significant attention impact (10.16% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "astrea-mcp": {
      "url": "https://api.mcp.ai/p_astrea"
    }
  }
}

Remote endpoints

https://api.mcp.ai/p_astreastreamable-http

What it can do

Tool inventory

Tools (38)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢astrea_conta

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á.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢astrea_processos_buscar(numeros, texto, contact_id, tag_id, status, ...)

Processos (casos) no Astrea. Respostas COMPACTAS pra economizar contexto. Ações: - 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. - 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. - count: total de processos (mesmos filtros) rápido, use pra "quantos". - 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. - novos_por_mes: nº de processos novos por mês (data de distribuição). Respeita o status. por_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. Campos 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. [Flattened action: buscar] Bulk support: accepts contact_ids, tag_ids for batched execution.

Input Schema

{
  "type": "object",
  "properties": {
    "numeros": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "texto": {
      "type": "string"
    },
    "contact_id": {
      "type": "string"
    },
    "tag_id": {
      "type": "string"
    },
    "status": {
      "type": "string",
      "enum": [
        "Active",
        "Inactive",
        "Archived",
        "All"
      ]
    },
    "limit": {
      "default": 30,
      "type": "number"
    },
    "cursor": {
      "type": "string"
    },
    "top_n": {
      "type": "number"
    },
    "contact_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "tag_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢astrea_processos_list(numeros, texto, contact_id, tag_id, status, ...)

Processos (casos) no Astrea. Respostas COMPACTAS pra economizar contexto. Ações: - 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. - 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. - count: total de processos (mesmos filtros) rápido, use pra "quantos". - 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. - novos_por_mes: nº de processos novos por mês (data de distribuição). Respeita o status. por_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. Campos 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. [Flattened action: list] Bulk support: accepts contact_ids, tag_ids for batched execution.

Input Schema

{
  "type": "object",
  "properties": {
    "numeros": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "texto": {
      "type": "string"
    },
    "contact_id": {
      "type": "string"
    },
    "tag_id": {
      "type": "string"
    },
    "status": {
      "type": "string",
      "enum": [
        "Active",
        "Inactive",
        "Archived",
        "All"
      ]
    },
    "limit": {
      "default": 30,
      "type": "number"
    },
    "cursor": {
      "type": "string"
    },
    "top_n": {
      "type": "number"
    },
    "contact_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "tag_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢astrea_processos_count(numeros, texto, contact_id, tag_id, status, ...)

Processos (casos) no Astrea. Respostas COMPACTAS pra economizar contexto. Ações: - 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. - 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. - count: total de processos (mesmos filtros) rápido, use pra "quantos". - 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. - novos_por_mes: nº de processos novos por mês (data de distribuição). Respeita o status. por_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. Campos 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. [Flattened action: count] Bulk support: accepts contact_ids, tag_ids for batched execution.

Input Schema

{
  "type": "object",
  "properties": {
    "numeros": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "texto": {
      "type": "string"
    },
    "contact_id": {
      "type": "string"
    },
    "tag_id": {
      "type": "string"
    },
    "status": {
      "type": "string",
      "enum": [
        "Active",
        "Inactive",
        "Archived",
        "All"
      ]
    },
    "limit": {
      "default": 30,
      "type": "number"
    },
    "cursor": {
      "type": "string"
    },
    "top_n": {
      "type": "number"
    },
    "contact_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "tag_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢astrea_processos_por_cliente(numeros, texto, contact_id, tag_id, status, ...)

Processos (casos) no Astrea. Respostas COMPACTAS pra economizar contexto. Ações: - 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. - 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. - count: total de processos (mesmos filtros) rápido, use pra "quantos". - 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. - novos_por_mes: nº de processos novos por mês (data de distribuição). Respeita o status. por_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. Campos 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. [Flattened action: por_cliente] Bulk support: accepts contact_ids, tag_ids for batched execution.

Input Schema

{
  "type": "object",
  "properties": {
    "numeros": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "texto": {
      "type": "string"
    },
    "contact_id": {
      "type": "string"
    },
    "tag_id": {
      "type": "string"
    },
    "status": {
      "type": "string",
      "enum": [
        "Active",
        "Inactive",
        "Archived",
        "All"
      ]
    },
    "limit": {
      "default": 30,
      "type": "number"
    },
    "cursor": {
      "type": "string"
    },
    "top_n": {
      "type": "number"
    },
    "contact_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "tag_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢astrea_processos_novos_por_mes(numeros, texto, contact_id, tag_id, status, ...)

Processos (casos) no Astrea. Respostas COMPACTAS pra economizar contexto. Ações: - 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. - 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. - count: total de processos (mesmos filtros) rápido, use pra "quantos". - 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. - novos_por_mes: nº de processos novos por mês (data de distribuição). Respeita o status. por_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. Campos 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. [Flattened action: novos_por_mes] Bulk support: accepts contact_ids, tag_ids for batched execution.

Input Schema

{
  "type": "object",
  "properties": {
    "numeros": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "texto": {
      "type": "string"
    },
    "contact_id": {
      "type": "string"
    },
    "tag_id": {
      "type": "string"
    },
    "status": {
      "type": "string",
      "enum": [
        "Active",
        "Inactive",
        "Archived",
        "All"
      ]
    },
    "limit": {
      "default": 30,
      "type": "number"
    },
    "cursor": {
      "type": "string"
    },
    "top_n": {
      "type": "number"
    },
    "contact_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "tag_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢astrea_clientes(limit, cursor)

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.

Input Schema

{
  "type": "object",
  "properties": {
    "limit": {
      "default": 30,
      "type": "number"
    },
    "cursor": {
      "type": "string"
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢astrea_agenda_global(date_from, date_to)

Agenda do escritório no Astrea — audiências (HEARING), reuniões/eventos (EVENT), prazos (DEADLINE) e tarefas (TASK). Ações: - global: todas as atividades numa janela de datas (date_from/date_to em AAAA-MM-DD). - por_cliente: as atividades agrupadas por cliente (via processo vinculado; avulsas vão em "(sem cliente)"). [Flattened action: global]

Input Schema

{
  "type": "object",
  "properties": {
    "date_from": {
      "type": "string"
    },
    "date_to": {
      "type": "string"
    }
  },
  "required": [
    "date_from",
    "date_to"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢astrea_agenda_por_cliente(date_from, date_to)

Agenda do escritório no Astrea — audiências (HEARING), reuniões/eventos (EVENT), prazos (DEADLINE) e tarefas (TASK). Ações: - global: todas as atividades numa janela de datas (date_from/date_to em AAAA-MM-DD). - por_cliente: as atividades agrupadas por cliente (via processo vinculado; avulsas vão em "(sem cliente)"). [Flattened action: por_cliente]

Input Schema

{
  "type": "object",
  "properties": {
    "date_from": {
      "type": "string"
    },
    "date_to": {
      "type": "string"
    }
  },
  "required": [
    "date_from",
    "date_to"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢astrea_andamentos(case_id, only_manual, limit, case_ids)

Andamentos (timeline/histórico) de um processo no Astrea — base para gerar relatórios ao cliente. Cada andamento traz date, type, description, responsible. type que começa com AUTOMATIC = captura automática do tribunal; os demais são manuais. Bulk support: accepts case_ids for batched execution.

Input Schema

{
  "type": "object",
  "properties": {
    "case_id": {
      "type": "string"
    },
    "only_manual": {
      "default": false,
      "type": "boolean"
    },
    "limit": {
      "default": 50,
      "type": "number"
    },
    "case_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "case_id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢astrea_etiquetas

Lista as etiquetas (tags) do Astrea — id, label, cor, restrictions (CASES/TASKS/APPOINTMENTS). Use 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).

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢astrea_financeiro_honorarios(case_id, case_ids)

Resumo financeiro de um processo no Astrea. Ações: - honorarios: honorários do processo (totalAmount/totalReceived/totalOpen) — use para "valor de êxito". - despesas: despesas do processo. [Flattened action: honorarios] Bulk support: accepts case_ids for batched execution.

Input Schema

{
  "type": "object",
  "properties": {
    "case_id": {
      "type": "string"
    },
    "case_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "case_id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢astrea_financeiro_despesas(case_id, case_ids)

Resumo financeiro de um processo no Astrea. Ações: - honorarios: honorários do processo (totalAmount/totalReceived/totalOpen) — use para "valor de êxito". - despesas: despesas do processo. [Flattened action: despesas] Bulk support: accepts case_ids for batched execution.

Input Schema

{
  "type": "object",
  "properties": {
    "case_id": {
      "type": "string"
    },
    "case_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "case_id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🔴astrea_etiquetar_aplicar(case_ids, tag_ids)

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. - action "aplicar" adiciona as etiquetas; "remover" tira as etiquetas (sem apagar a etiqueta em si). - case_ids: ids dos processos (ver astrea_processos); aceita vários (o lote roda numa só chamada, fatiado internamente). - tag_ids: ids das etiquetas (ver astrea_etiquetas); aceita várias. O Astrea processa o lote de forma assíncrona; o efeito aparece em alguns segundos. As etiquetas precisam existir (crie-as no Astrea antes). [Flattened action: aplicar]

Input Schema

{
  "type": "object",
  "properties": {
    "case_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "tag_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "case_ids",
    "tag_ids"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🔴astrea_etiquetar_remover(case_ids, tag_ids)

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. - action "aplicar" adiciona as etiquetas; "remover" tira as etiquetas (sem apagar a etiqueta em si). - case_ids: ids dos processos (ver astrea_processos); aceita vários (o lote roda numa só chamada, fatiado internamente). - tag_ids: ids das etiquetas (ver astrea_etiquetas); aceita várias. O Astrea processa o lote de forma assíncrona; o efeito aparece em alguns segundos. As etiquetas precisam existir (crie-as no Astrea antes). [Flattened action: remover]

Input Schema

{
  "type": "object",
  "properties": {
    "case_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "tag_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "case_ids",
    "tag_ids"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪astrea_andamento_criar(case_id, description, date, responsible_id, case_ids, ...)

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). - case_id: id do processo (ver astrea_processos). - description: texto do andamento (aceita HTML simples; texto puro vira um parágrafo). - date: data/hora do andamento em ISO (ex.: 2026-06-30 ou 2026-06-30T13:00:00Z); omita para usar agora. - 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. Bulk support: accepts case_ids, responsible_ids for batched execution.

Input Schema

{
  "type": "object",
  "properties": {
    "case_id": {
      "type": "string"
    },
    "description": {
      "type": "string"
    },
    "date": {
      "type": "string"
    },
    "responsible_id": {
      "type": "string"
    },
    "case_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "responsible_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "case_id",
    "description"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡astrea_documento_upload(case_id, attachments, description, responsible_id, case_ids, ...)

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). - case_id: id do processo (ver astrea_processos). - attachments: um ou mais arquivos. Por arquivo, informe UMA das formas: file_url (baixa da URL), file_base64 (conteúdo em base64) ou upload_code (de um upload grande via curl). file_name é obrigatório com file_url/file_base64. - description: descrição do documento (se omitir, usa o nome dos arquivos). - responsible_id: opcional, id do membro responsável (ver astrea_responsaveis); se omitir, fica no usuário da integração. Bulk support: accepts case_ids, responsible_ids for batched execution.

Input Schema

{
  "type": "object",
  "properties": {
    "case_id": {
      "type": "string"
    },
    "attachments": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "file_url": {
            "type": "string"
          },
          "file_base64": {
            "type": "string"
          },
          "upload_code": {
            "type": "string"
          },
          "file_name": {
            "type": "string"
          },
          "content_type": {
            "type": "string"
          }
        }
      }
    },
    "description": {
      "type": "string"
    },
    "responsible_id": {
      "type": "string"
    },
    "case_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "responsible_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "case_id",
    "attachments"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢astrea_modelos

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.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪astrea_documento_gerar(model, case_id, title, responsible_id, case_ids, ...)

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. - model: id ou nome do modelo (ver astrea_modelos); por nome, casa parcialmente (se ambíguo, use o id). - case_id: id do processo (ver astrea_processos). - title: opcional, título do documento gerado; se omitir, usa o nome do modelo. - responsible_id: opcional, id do membro responsável (ver astrea_responsaveis); se omitir, fica no usuário da integração. Bulk support: accepts case_ids, responsible_ids for batched execution.

Input Schema

{
  "type": "object",
  "properties": {
    "model": {
      "type": "string"
    },
    "case_id": {
      "type": "string"
    },
    "title": {
      "type": "string"
    },
    "responsible_id": {
      "type": "string"
    },
    "case_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "responsible_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "model",
    "case_id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪astrea_encerrar(case_ids, conviction_amount, unlink_from_court)

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. - case_ids: ids dos processos (ver astrea_processos); aceita vários. - conviction_amount: opcional, valor da condenação a gravar no encerramento. - unlink_from_court: opcional, true também desvincula do tribunal (para de receber andamentos automáticos). Reabrir um processo encerrado é feito pela própria tela do Astrea (Ativar processo). O Astrea processa o lote de forma assíncrona.

Input Schema

{
  "type": "object",
  "properties": {
    "case_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "conviction_amount": {
      "type": "number"
    },
    "unlink_from_court": {
      "default": false,
      "type": "boolean"
    }
  },
  "required": [
    "case_ids"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪astrea_processo_editar(case_id, objeto, conviction_amount, case_ids)

Edita campos de UM processo no Astrea. Lê o processo atual e regrava preservando o resto (só muda o que você informar). Campos editáveis (informe ao menos um): - objeto: o campo "Objeto" (descrição do processo). - conviction_amount: valor da condenação. Para encerrar/reativar ou etiquetar use astrea_encerrar / astrea_etiquetar. Bulk support: accepts case_ids for batched execution.

Input Schema

{
  "type": "object",
  "properties": {
    "case_id": {
      "type": "string"
    },
    "objeto": {
      "type": "string"
    },
    "conviction_amount": {
      "type": "number"
    },
    "case_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "case_id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪astrea_processo_criar(titulo, customer_id, customer_nome, qualificacao, polo, ...)

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). Obrigatório: titulo, e o cliente (customer_id de astrea_clientes OU customer_nome para criar um contato novo). Campos judiciais opcionais, informados por NOME: numero_cnj, tribunal, vara, tipo_acao, data_distribuicao (AAAA-MM-DD), instancia. Para CASO extrajudicial/consultivo (sem CNJ/tribunal) use astrea_caso_criar.

Input Schema

{
  "type": "object",
  "properties": {
    "titulo": {
      "type": "string"
    },
    "customer_id": {
      "type": "string"
    },
    "customer_nome": {
      "type": "string"
    },
    "qualificacao": {
      "type": "string"
    },
    "polo": {
      "type": "string"
    },
    "responsavel_id": {
      "type": "string"
    },
    "objeto": {
      "type": "string"
    },
    "valor_causa": {
      "type": "number"
    },
    "valor_condenacao": {
      "type": "number"
    },
    "numero_cnj": {
      "type": "string"
    },
    "tribunal": {
      "type": "string"
    },
    "vara": {
      "type": "string"
    },
    "tipo_acao": {
      "type": "string"
    },
    "data_distribuicao": {
      "type": "string"
    },
    "instancia": {
      "type": "number"
    },
    "tag_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "titulo"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪astrea_caso_criar(titulo, customer_id, customer_nome, qualificacao, polo, ...)

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. Obrigatório: titulo, e o cliente (customer_id de astrea_clientes OU customer_nome para criar um contato novo). Para processo JUDICIAL (com CNJ/tribunal) use astrea_processo_criar.

Input Schema

{
  "type": "object",
  "properties": {
    "titulo": {
      "type": "string"
    },
    "customer_id": {
      "type": "string"
    },
    "customer_nome": {
      "type": "string"
    },
    "qualificacao": {
      "type": "string"
    },
    "polo": {
      "type": "string"
    },
    "responsavel_id": {
      "type": "string"
    },
    "objeto": {
      "type": "string"
    },
    "valor_envolvido": {
      "type": "number"
    },
    "data_abertura": {
      "type": "string"
    },
    "tag_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "titulo"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪astrea_tarefa_criar(case_id, description, due_date, responsible_id, repeat, ...)

Cria uma TAREFA vinculada a um processo no Astrea. - case_id: id do processo (ver astrea_processos). - description: o que fazer. - due_date: opcional, prazo em ISO (ex.: 2026-07-10). - 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. - 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). Devolve task_id (o id da tarefa criada; na série, um por ocorrência) — guarde para editar/excluir depois. Bulk support: accepts case_ids, responsible_ids for batched execution.

Input Schema

{
  "type": "object",
  "properties": {
    "case_id": {
      "type": "string"
    },
    "description": {
      "type": "string"
    },
    "due_date": {
      "type": "string"
    },
    "responsible_id": {
      "type": "string"
    },
    "repeat": {
      "type": "object",
      "properties": {
        "frequency": {
          "type": "string",
          "enum": [
            "daily",
            "weekly",
            "monthly",
            "yearly"
          ]
        },
        "interval": {
          "default": 1,
          "type": "number"
        },
        "count": {
          "type": "number"
        },
        "until": {
          "type": "string"
        }
      },
      "required": [
        "frequency"
      ]
    },
    "case_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "responsible_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "case_id",
    "description"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪astrea_compromisso_criar(case_id, title, start, end, all_day, ...)

Cria um COMPROMISSO/evento na agenda, vinculado a um processo no Astrea. - case_id: id do processo (ver astrea_processos). - title: título do compromisso. - start: início em ISO (ex.: 2026-07-10T14:00:00Z). Interpretado no fuso do servidor (UTC). - end: opcional, fim em ISO; se omitido, 30 min após o início. - all_day: opcional, true para dia inteiro. - location: opcional, endereço/local. - 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. - 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). Devolve appointment_id (o id do compromisso criado; na série, um por ocorrência) — guarde para editar/excluir depois. Bulk support: accepts case_ids, responsible_ids for batched execution.

Input Schema

{
  "type": "object",
  "properties": {
    "case_id": {
      "type": "string"
    },
    "title": {
      "type": "string"
    },
    "start": {
      "type": "string"
    },
    "end": {
      "type": "string"
    },
    "all_day": {
      "default": false,
      "type": "boolean"
    },
    "location": {
      "type": "string"
    },
    "responsible_id": {
      "type": "string"
    },
    "repeat": {
      "type": "object",
      "properties": {
        "frequency": {
          "type": "string",
          "enum": [
            "daily",
            "weekly",
            "monthly",
            "yearly"
          ]
        },
        "interval": {
          "default": 1,
          "type": "number"
        },
        "count": {
          "type": "number"
        },
        "until": {
          "type": "string"
        }
      },
      "required": [
        "frequency"
      ]
    },
    "case_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "responsible_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "case_id",
    "title",
    "start"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢astrea_responsaveis

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.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪astrea_tarefa_editar(task_id, case_id, description, due_date, responsible_id, ...)

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). - task_id: id da tarefa (retornado em astrea_tarefa_criar / astrea_agenda_global). - case_id: id do processo da tarefa (para localizá-la). - description / due_date (AAAA-MM-DD) / responsible_id (ver astrea_responsaveis): campos a alterar (omita os que não muda). Para reagendar VÁRIAS tarefas, chame uma vez por tarefa (task_ids em lote só serve quando todas são do MESMO case_id). Bulk support: accepts task_ids, case_ids, responsible_ids for batched execution.

Input Schema

{
  "type": "object",
  "properties": {
    "task_id": {
      "type": "string"
    },
    "case_id": {
      "type": "string"
    },
    "description": {
      "type": "string"
    },
    "due_date": {
      "type": "string"
    },
    "responsible_id": {
      "type": "string"
    },
    "task_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "case_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "responsible_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "task_id",
    "case_id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪astrea_tarefa_excluir(task_id, case_id, task_ids, case_ids)

Exclui uma TAREFA do Astrea. - task_id: id da tarefa (retornado em astrea_tarefa_criar). - case_id: id do processo da tarefa (para localizá-la). Bulk support: accepts task_ids, case_ids for batched execution.

Input Schema

{
  "type": "object",
  "properties": {
    "task_id": {
      "type": "string"
    },
    "case_id": {
      "type": "string"
    },
    "task_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "case_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "task_id",
    "case_id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🔴astrea_tarefa_etiquetar_aplicar(task_ids, tag_ids)

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. - action "aplicar" adiciona as etiquetas às tarefas; "remover" tira (sem apagar a etiqueta em si). As etiquetas já presentes são mantidas. - task_ids: ids das tarefas (ver astrea_agenda_global, astrea_agenda ou astrea_tarefa_criar); NÃO precisa de case_id. - tag_ids: ids das etiquetas (ver astrea_etiquetas; a etiqueta precisa permitir TASKS em restrictions). Roda 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"). [Flattened action: aplicar]

Input Schema

{
  "type": "object",
  "properties": {
    "task_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "tag_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "task_ids",
    "tag_ids"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🔴astrea_tarefa_etiquetar_remover(task_ids, tag_ids)

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. - action "aplicar" adiciona as etiquetas às tarefas; "remover" tira (sem apagar a etiqueta em si). As etiquetas já presentes são mantidas. - task_ids: ids das tarefas (ver astrea_agenda_global, astrea_agenda ou astrea_tarefa_criar); NÃO precisa de case_id. - tag_ids: ids das etiquetas (ver astrea_etiquetas; a etiqueta precisa permitir TASKS em restrictions). Roda 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"). [Flattened action: remover]

Input Schema

{
  "type": "object",
  "properties": {
    "task_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "tag_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "task_ids",
    "tag_ids"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪astrea_compromisso_editar(appointment_id, title, start, end, all_day, ...)

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. - appointment_id: id do compromisso (retornado em astrea_compromisso_criar). - Informe ao menos um campo para mudar; o que você omitir fica como está. - 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). - end: novo fim em ISO. - title / location / all_day: novo título, endereço/local, dia inteiro. - responsible_id: novo responsável (ver astrea_responsaveis) — é o que faz o compromisso aparecer na agenda da pessoa. Numa série recorrente, edita SÓ a ocorrência informada (cada ocorrência tem seu próprio appointment_id). Bulk support: accepts appointment_ids, responsible_ids for batched execution.

Input Schema

{
  "type": "object",
  "properties": {
    "appointment_id": {
      "type": "string"
    },
    "title": {
      "type": "string"
    },
    "start": {
      "type": "string"
    },
    "end": {
      "type": "string"
    },
    "all_day": {
      "type": "boolean"
    },
    "location": {
      "type": "string"
    },
    "responsible_id": {
      "type": "string"
    },
    "appointment_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "responsible_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "appointment_id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪astrea_compromisso_excluir(appointment_id, appointment_ids)

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. - appointment_id: id do compromisso (retornado em astrea_compromisso_criar). Bulk support: accepts appointment_ids for batched execution.

Input Schema

{
  "type": "object",
  "properties": {
    "appointment_id": {
      "type": "string"
    },
    "appointment_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "appointment_id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢show_version

Show the current MCP platform and adapter versions.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡report_bug(message, context, conversation)

Report a bug, missing feature, or send feedback. Include the conversation array with recent messages for reproduction.

Input Schema

{
  "type": "object",
  "properties": {
    "message": {
      "type": "string"
    },
    "context": {
      "default": "",
      "type": "string"
    },
    "conversation": {
      "default": "[]",
      "type": "string"
    }
  },
  "required": [
    "message"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢connect

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.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢toolkit_info

Returns the current toolkit state: installed MCPs, their connection status, the accounts connected to each one, and how many catalog tools each exposes.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡marketplace(action, query, mcp_id, limit, tier_slug, ...)

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.

Input Schema

{
  "type": "object",
  "properties": {
    "action": {
      "default": "search",
      "type": "string",
      "enum": [
        "search",
        "describe",
        "install",
        "uninstall",
        "subscribe",
        "cancel",
        "resume",
        "report_bug",
        "request_mcp",
        "list_tools",
        "invoke",
        "search_prompts",
        "get_prompt",
        "publish_prompt"
      ]
    },
    "query": {
      "default": "",
      "type": "string"
    },
    "mcp_id": {
      "default": "",
      "type": "string"
    },
    "limit": {
      "default": 10,
      "type": "number"
    },
    "tier_slug": {
      "default": "",
      "type": "string"
    },
    "immediate": {
      "default": false,
      "type": "boolean"
    },
    "cancel_reason": {
      "type": "string",
      "enum": [
        "too_expensive",
        "missing_features",
        "switched_service",
        "unused",
        "customer_service",
        "too_complex",
        "low_quality",
        "other"
      ]
    },
    "cancel_comment": {
      "default": "",
      "type": "string"
    },
    "message": {
      "default": "",
      "type": "string"
    },
    "report_context": {
      "default": "",
      "type": "string"
    },
    "conversation": {
      "default": "[]",
      "type": "string"
    },
    "request_name": {
      "default": "",
      "type": "string"
    },
    "request_details": {
      "default": "",
      "type": "string"
    },
    "tool_id": {
      "default": "",
      "type": "string"
    },
    "arguments": {
      "default": "{}",
      "type": "string"
    },
    "prompt_slug": {
      "default": "",
      "type": "string"
    },
    "prompt_vars": {
      "default": "{}",
      "type": "string"
    },
    "prompt_category": {
      "default": "",
      "type": "string"
    },
    "prompt_tool": {
      "default": "",
      "type": "string"
    },
    "prompt_title": {
      "default": "",
      "type": "string"
    },
    "prompt_description": {
      "default": "",
      "type": "string"
    },
    "prompt_body": {
      "default": "",
      "type": "string"
    },
    "prompt_targets": {
      "default": [],
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "claude",
          "chatgpt",
          "cursor",
          "lovable"
        ]
      }
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡authenticate(token)

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.

Input Schema

{
  "type": "object",
  "properties": {
    "token": {
      "type": "string"
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded38 tools
verifiedversion not recorded38 tools