@lionchat/mcp-server 1.28.0 → 1.29.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/client.js CHANGED
@@ -20,6 +20,13 @@ const MAX_RETRIES_NETWORK = 1;
20
20
  function getErrorMessage(status, body) {
21
21
  switch (status) {
22
22
  case 401:
23
+ // AIDEV-NOTE: [cargo-acessar-menus 02/10] O LionChat responde 401 com este texto quando o TOKEN e valido mas a
24
+ // pessoa nao pode fazer a acao (Pundit) — inclusive menu escondido pelo cargo ("Acessar menu X" desmarcado).
25
+ // Traduzir isso como "token invalido" fazia a IA mandar renovar credenciais que estavam certas.
26
+ if (isPermissionRefusal(body)) {
27
+ return 'Permission denied: your role does not allow this action (an administrator may have hidden this menu ' +
28
+ 'in the custom role). The token is valid — do not ask the user to renew it.';
29
+ }
23
30
  return 'Authentication failed. Check your token at Login > Profile Settings';
24
31
  case 403:
25
32
  return 'Permission denied. Your token may not have access to this resource';
@@ -38,6 +45,15 @@ function getErrorMessage(status, body) {
38
45
  return `HTTP error ${status}`;
39
46
  }
40
47
  }
48
+ // AIDEV-NOTE: [cargo-acessar-menus 02/10] Recusa de PERMISSAO (Pundit) chega como 401 com este texto exato; o 401
49
+ // de token invalido/expirado vem com outro corpo. Comparacao pelo texto do servidor, sem adivinhar.
50
+ const PERMISSION_REFUSAL_TEXT = 'You are not authorized to do this action';
51
+ function isPermissionRefusal(body) {
52
+ if (!body || typeof body !== 'object')
53
+ return false;
54
+ const obj = body;
55
+ return obj.error === PERMISSION_REFUSAL_TEXT || obj.message === PERMISSION_REFUSAL_TEXT;
56
+ }
41
57
  // AIDEV-NOTE: Extract validation details from 422 response body
42
58
  function extractValidationDetails(body) {
43
59
  if (body && typeof body === 'object') {
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
@@ -1006,6 +1006,34 @@ na descrição** — a tela já as mostra na coluna "Permissões". Uma descriç
1006
1006
  escondeu o cargo recém-criado na lista de Funções personalizadas da conta 1 (a tela foi corrigida
1007
1007
  para cortar o texto com reticências, mas a descrição longa continua ilegível ali).
1008
1008
 
1009
+ ## Cargo personalizado: esconder menus e "ver conversas dos colegas" (02/10/2026)
1010
+
1011
+ Permissão nunca TIRA nada — toda permissão só soma ao atendente comum. Para TIRAR um menu de um
1012
+ cargo existe o campo `hidden_menus` em `custom_roles_create` / `custom_roles_update`:
1013
+
1014
+ - Lista dos menus **escondidos** (as caixinhas "Acessar menu X" desmarcadas na tela). Valores:
1015
+ `contacts`, `companies`, `kanban`, `flows`, `macros`, `ai_agent`, `help_center`, `agenda`,
1016
+ `internal_chat`. `[]` = vê todos (é como todo cargo nasce). **`flows` vale para Fluxos E Automação
1017
+ juntos** (na tela: "Acessar menu Fluxos e Automação"): esconde os dois ou libera os dois. A Automação
1018
+ continua aparecendo só para quem também tem `automation_manage`.
1019
+ - **Substitui a lista inteira.** Para esconder mais um menu, leia o cargo (`custom_roles_show`),
1020
+ acrescente e mande a lista toda. Não mandar o campo deixa o que está gravado.
1021
+ - Menu escondido some da barra lateral e a tela dele fica fechada; o que a pessoa usa **dentro da
1022
+ conversa** continua (executar macro, ligar/desligar a IA, agendar tarefa, campo Empresa do contato).
1023
+ Com Kanban escondido ela não vê card em lugar nenhum, nem os dela.
1024
+ - O servidor recusa (422) esconder um menu e dar o "Gerenciar" da mesma área no mesmo cargo
1025
+ (ex.: `kanban` escondido com `kanban_manage`; `flows` escondido com `flowbuilder_manage` ou
1026
+ `automation_manage`). Tire a permissão junto.
1027
+ - Vale na hora para quem tem o cargo; administrador nunca perde menu.
1028
+ - Quando a pessoa tenta abrir algo escondido, a API responde **401 "You are not authorized to do
1029
+ this action"** — é falta de permissão, não token vencido (ver `troubleshooting.md`).
1030
+
1031
+ Permissão nova `conversation_assigned_manage` — "Ver conversas dos colegas": a pessoa vê as conversas
1032
+ que **já têm responsável** nas caixas de que é membro, mas nunca a fila sem dono. É o jeito de montar
1033
+ "vê tudo, menos as não atribuídas": marque essa + `conversation_team_manage` +
1034
+ `conversation_participating_manage`, sem `conversation_manage` e sem `conversation_unassigned_manage`.
1035
+ `conversation_manage` já inclui as quatro de conversa; mande a lista completa como a tela faz.
1036
+
1009
1037
  ## Entrar num grupo por convite (17/09/2026)
1010
1038
 
1011
1039
  Só em caixa de WhatsApp QR Code (`Channel::Waha`). São DUAS tools e a ordem importa.
@@ -298,6 +298,22 @@ custom_dashboards_preview_widget
298
298
  > `today`/`yesterday` em vez de datas fixas, que envelhecem.
299
299
  > ⚠️ O `total` da tabela **não é a soma das linhas** — cada métrica tem contagem própria.
300
300
 
301
+ **R8b — Tabela do time de atendimento com tempo de resposta e ligações (02/10/2026):**
302
+
303
+ ```json
304
+ custom_dashboards_preview_widget
305
+ widget_type=agent_report chart_type=table dimension=agent scope_type=team scope_id=142
306
+ time_range=yesterday timezone_offset=-3
307
+ columns=[
308
+ {"metric":"leads"}, {"metric":"atendidos"},
309
+ {"metric":"primeira_resposta"}, {"metric":"tempo_resposta"},
310
+ {"metric":"ligacoes_feitas"}, {"metric":"taxa_ligacao"}
311
+ ]
312
+ ```
313
+ > ⚠️ `primeira_resposta`/`tempo_resposta` vêm em **segundos**, contados só no horário comercial da conta.
314
+ > `taxa_ligacao` = ligações feitas ÷ leads (ou `"denominator":"atendidos"`). Essas 4 colunas só valem com
315
+ > `dimension: agent` — em tabela por equipe/caixa o salvamento volta 422 com o motivo.
316
+
301
317
  **R9 — Salvar isso como relatório na tela do cliente:** teste com o R8, mostre o número, confirme
302
318
  com o usuário e só então:
303
319
  ```json
@@ -659,7 +659,7 @@ Não é consulta livre: escolha um `widget_type` e preencha **só os campos daqu
659
659
  | `sla_summary` | `time_range` | `sla` (Enterprise) |
660
660
  | `funnel_stages` | `funnel_id` · `date_basis` (created/moved/closed/any) · `status` (all/open/won/lost) · `measure` (count padrão / value = soma do valor dos cards) · `time_range` | `kanban_board` |
661
661
  | `stage_entries` | `funnel_id` · `measure` (count/value) · `time_range` — quantos cards DISTINTOS ENTRARAM em cada etapa no período (histórico desde 12/07/2026) | `kanban_board` |
662
- | `calls_report` | `dimension` (agent/inbox) · `scope_type` (só `inbox`, opcional — recorte por caixa, desde 27/08/2026) + `scope_id` · `time_range` — ligações / atendidas / não atendidas / não concluídas / tempo total / tempo médio | — |
662
+ | `calls_report` | `dimension` (agent/inbox) · `scope_type` (`inbox` desde 27/08/2026; `team` desde 02/10/2026, só com `dimension: agent`, opcional) + `scope_id` · `time_range` — ligações / atendidas / não atendidas / não concluídas / tempo total / tempo médio | — |
663
663
  | `lead_origin` | `time_range` | `liontrack` |
664
664
  | `agent_report` | `dimension` (agent/team/inbox) · `scope_type`+`scope_id` · `columns[]` · `time_range` | — |
665
665
  | `eclinica_no_show` | `dimension` (unit / operator / date) · `time_range` · `no_show_over_scheduled` (true/false, nasce desligada) · `only_first_visit` (true/false, nasce desligada) — faltas na agenda da e-Clínica: agendados / compareceram / faltaram / desmarcados / sem desfecho / % de falta (o rótulo da coluna declara a base) | `eclinica_integration` |
@@ -721,6 +721,21 @@ funil sem nome chegam indistinguíveis pra quem lê depois.
721
721
  `label_count` (exige `label_id`) e `conversao` (exige `denominator` e `numerator`, que é **lista de
722
722
  IDs de etiqueta**, nunca nome de métrica).
723
723
 
724
+ **Quatro colunas por PESSOA (novas, 02/10/2026 — só com `dimension: agent`; em tabela por equipe ou
725
+ caixa o salvamento é RECUSADO com o motivo):**
726
+
727
+ | `metric` | O que mostra | Cuidado |
728
+ |---|---|---|
729
+ | `primeira_resposta` | Tempo **médio** da 1ª resposta do atendente | Conta **só o horário comercial da conta** (o do SLA). Sem horário ligado na conta, cai no relógio corrido. O início é quando a IA passou a conversa (ou a reabertura/criação), não o instante da atribuição — pode divergir do SLA por alguns minutos. Vem em segundos; quem não respondeu nada no período vem vazio (travessão), nunca "0s" |
730
+ | `tempo_resposta` | Tempo médio entre respostas, depois da 1ª | Mesma regra de horário. Registro de `reply_time` |
731
+ | `ligacoes_feitas` | Ligações que a pessoa **fez** (`outbound`), atendidas ou não | Recebidas não entram. Acompanha o recorte por caixa; VTCall e Zenvia quase não gravam caixa |
732
+ | `taxa_ligacao` | Ligações feitas ÷ leads, em % | `denominator` opcional: `leads` (padrão, a definição do Wesley — "100 leads, 10 ligações = 10%") ou `atendidos`; outro valor é recusado. Pessoa sem lead dá 0,0%, nunca erro |
733
+
734
+ O `as` dessas colunas é honrado (diferente das métricas núcleo). Exemplo de bloco do Instituto Homem:
735
+ `{"widget_type":"agent_report","chart_type":"table","dimension":"agent","scope_type":"team","scope_id":142,
736
+ "columns":[{"metric":"leads"},{"metric":"atendidos"},{"metric":"primeira_resposta"},
737
+ {"metric":"tempo_resposta"},{"metric":"ligacoes_feitas"},{"metric":"taxa_ligacao"}]}`.
738
+
724
739
  ### Como ler a resposta (campo `shape`)
725
740
 
726
741
  | `shape` | Estrutura | Cuidado |
@@ -739,7 +754,10 @@ IDs de etiqueta**, nunca nome de métrica).
739
754
  o que fizeram naquela caixa — é o desenho de "relatório por médico/unidade"). `inbox` +
740
755
  `dimension: team` é RECUSADO com motivo. No `calls_report`, `scope_type: inbox` conta só as
741
756
  ligações daquela caixa — **ligação sem caixa fica de fora** (VTCall ~90% e Zenvia 100% das
742
- ligações não têm caixa; LionCalls e Wavoip têm em 100%). Confundir troca a conta inteira.
757
+ ligações não têm caixa; LionCalls e Wavoip têm em 100%). **Desde 02/10/2026 o `calls_report`
758
+ também aceita `scope_type: team`** (recorta as LINHAS: só quem é da equipe, inclusive quem saiu
759
+ dela; só com `dimension: agent`, com `inbox` é recusado). A linha "Sem responsável" (ligação que
760
+ ninguém atendeu) **continua aparecendo** de propósito. Confundir troca a conta inteira.
743
761
  2. **Campo fora da lista é descartado em silêncio.** Se um valor "não fez efeito", provavelmente o
744
762
  nome do campo está errado.
745
763
  3. **Sempre envie `timezone_offset` em HORAS, derivado do fuso DA CONTA** (`account_show.timezone`;
@@ -19,9 +19,18 @@ Input malformado. Causas comuns:
19
19
  **Ação:** Releia a mensagem de erro. Corrija o payload. NÃO retry sem mudar nada.
20
20
 
21
21
  ### 401 Unauthorized
22
- Token de API inválido ou expirado.
23
-
24
- **Ação:** Parar. Reportar pro usuário que precisa renovar credenciais. NÃO retry — vai falhar igual.
22
+ Há DOIS tipos de 401 — leia o corpo da resposta antes de concluir:
23
+
24
+ - **Corpo `{"error": "You are not authorized to do this action"}`** = o token está CERTO, mas a pessoa
25
+ não pode fazer aquela ação. Inclui o caso de o administrador ter escondido o menu no cargo
26
+ personalizado (caixinha "Acessar menu X" desmarcada: Contatos, Empresas, Kanban, Fluxos e Automação, Macros,
27
+ Agente de IA, Central de ajuda, Agenda ou Chat interno). **NÃO peça para renovar o token.** Diga ao
28
+ usuário que o cargo dele não libera aquela área e que quem resolve é um administrador da conta
29
+ (desmarcar a ocultação em Configurações > Funções personalizadas, ou dar outro cargo).
30
+ - **Qualquer outro corpo** (ex.: "You need to sign in or sign up before continuing") = token de API
31
+ inválido ou expirado. Parar e reportar que precisa renovar as credenciais.
32
+
33
+ **Ação nos dois casos:** NÃO retry — vai falhar igual.
25
34
 
26
35
  ### 403 Forbidden
27
36
  Token válido, mas SEM permissão pra essa ação.
package/endpoints.json CHANGED
@@ -14278,7 +14278,7 @@
14278
14278
  "description": "Lista todos os roles personalizados da conta. Lista papéis personalizados paginados (per_page padrão 25, máximo 100). Retorna meta (contadores) + payload (array de papel personalizado).",
14279
14279
  "category": "Roles Personalizados",
14280
14280
  "params": [],
14281
- "returns": "Lista pura (array), sem embrulho: a resposta E o array de papeis personalizados da conta. Cada papel traz id, name, description, `permissions` (lista de permissoes) e created_at/updated_at. Sem paginacao e sem contador. Recurso Enterprise — em instalacao sem Enterprise a rota nao responde.",
14281
+ "returns": "Lista pura (array), sem embrulho: a resposta E o array de papeis personalizados da conta. Cada papel traz id, name, description, `permissions` (lista de permissoes), `hidden_menus` (lista dos menus ocultos; [] = ve todos) e created_at/updated_at. Sem paginacao e sem contador. Recurso Enterprise — em instalacao sem Enterprise a rota nao responde.",
14282
14282
  "common_use_cases": [
14283
14283
  "Dashboard: contar/exibir papéis personalizados",
14284
14284
  "Buscar com filtros antes de outra operação",
@@ -14295,7 +14295,7 @@
14295
14295
  "method": "POST",
14296
14296
  "path": "/api/v1/accounts/{account_id}/custom_roles",
14297
14297
  "title": "Criar Role",
14298
- "description": "Cria um novo role personalizado. Cria novo papel personalizado. Obrigatórios: name, permissions. Valida unicidade quando aplicável. Retorna o papel personalizado criado com ID atribuído.",
14298
+ "description": "Cria um novo role personalizado. Obrigatorios: name, permissions. Opcional: hidden_menus (menus que este cargo NAO ve). Retorna o papel personalizado criado com ID atribuido.",
14299
14299
  "category": "Roles Personalizados",
14300
14300
  "params": [
14301
14301
  {
@@ -14317,7 +14317,14 @@
14317
14317
  "type": "array",
14318
14318
  "location": "body",
14319
14319
  "required": true,
14320
- "description": "Array de permissoes (array de strings). Valores aceitos (22): conversation_manage, conversation_delete, conversation_unassigned_manage, conversation_participating_manage, conversation_team_manage, contact_manage, contact_export_import, report_manage, knowledge_base_manage, kanban_manage, kanban_view, kanban_delete, kanban_export_import, offer_manage, funnel_manage, campaign_manage, automation_manage, marketing_integrations_manage, captain_manage, flowbuilder_manage, lead_form_manage (Formularios publicos, 05/09), signature_manage (Assinatura eletronica, 05/09). Fora da lista = recusado. Administrador tem tudo sem cargo; agente sem cargo nao tem lead_form_manage nem signature_manage (nao ve Formularios nem Assinaturas no menu)."
14320
+ "description": "Array de permissoes (array de strings). Valores aceitos (24): conversation_manage, conversation_delete, conversation_unassigned_manage, conversation_participating_manage, conversation_team_manage, conversation_assigned_manage (Ver conversas dos colegas: so as que JA TEM responsavel, nas caixas de que a pessoa e membro; nunca a fila sem dono — 02/10/2026), contact_manage, contact_export_import, report_manage, knowledge_base_manage, kanban_manage, kanban_view, kanban_delete, kanban_export_import, offer_manage, funnel_manage, campaign_manage, automation_manage, marketing_integrations_manage, captain_manage, flowbuilder_manage, lead_form_manage (Formularios publicos, 05/09), signature_manage (Assinatura eletronica, 05/09), agenda_manage (Gerenciar a Agenda). Fora da lista = recusado. Administrador tem tudo sem cargo; agente sem cargo nao tem lead_form_manage nem signature_manage (nao ve Formularios nem Assinaturas no menu). O editor da tela marca junto as que uma inclui: conversation_manage inclui as 4 outras de conversa; conversation_team_manage inclui conversation_participating_manage; kanban_manage inclui kanban_view. Mande a lista ja completa."
14321
+ },
14322
+ {
14323
+ "name": "hidden_menus",
14324
+ "type": "array",
14325
+ "location": "body",
14326
+ "required": false,
14327
+ "description": "Menus DESMARCADOS em 'Acessar menu X' (array de strings, 02/10/2026). Valores aceitos: contacts, companies, kanban, flows, macros, ai_agent, help_center, agenda, internal_chat. `flows` vale para Fluxos E Automacao juntos (na tela: 'Acessar menu Fluxos e Automacao'): esconde ou libera os dois; a Automacao continua so para quem tem automation_manage. SUBSTITUI a lista inteira (mande todos os que devem ficar ocultos; [] = mostra todos). Campo AUSENTE no pedido NAO muda o que esta gravado. Menu oculto some da barra lateral e a tela dele fica fechada no servidor; o que a pessoa usa dentro da conversa continua (ex.: executar macro, ligar/desligar a IA, agendar tarefa). RECUSADO com 422: texto solto ou objeto no lugar da lista, menu desconhecido, e menu oculto junto do 'Gerenciar' da mesma area (contacts x contact_manage; kanban x kanban_manage/kanban_view/kanban_delete/kanban_export_import/offer_manage/funnel_manage; flows x flowbuilder_manage/automation_manage; ai_agent x captain_manage; help_center x knowledge_base_manage; agenda x agenda_manage). contact_export_import NAO conflita com contacts. Nunca esconde nada de administrador nem de conta sem o recurso de cargo personalizado. A mudanca vale NA HORA para quem tem o cargo (a tela dela se atualiza sozinha)."
14321
14328
  }
14322
14329
  ],
14323
14330
  "returns": "papel personalizado criado (com novo ID)",
@@ -14349,7 +14356,7 @@
14349
14356
  "description": "ID do role"
14350
14357
  }
14351
14358
  ],
14352
- "returns": "papel personalizado (objeto completo com associações)",
14359
+ "returns": "papel personalizado: id, name, description, permissions, hidden_menus, created_at, updated_at",
14353
14360
  "common_use_cases": [
14354
14361
  "Ver dados completos antes de editar",
14355
14362
  "Verificar estado atual antes de uma ação",
@@ -14366,7 +14373,7 @@
14366
14373
  "method": "PUT",
14367
14374
  "path": "/api/v1/accounts/{account_id}/custom_roles/{id}",
14368
14375
  "title": "Atualizar Role",
14369
- "description": "Atualiza um role personalizado. Atualiza campos do papel personalizado existente. Suporta atualização parcial (PATCH) — só campos enviados são alterados. Campos suportados: name, description, permissions.",
14376
+ "description": "Atualiza um role personalizado. Suporta atualizacao parcial — so os campos enviados mudam. Campos: name, description, permissions, hidden_menus. Mudar permissions ou hidden_menus avisa ao vivo SO as pessoas que tem este cargo (a tela delas se ajusta sem recarregar).",
14370
14377
  "category": "Roles Personalizados",
14371
14378
  "params": [
14372
14379
  {
@@ -14395,7 +14402,14 @@
14395
14402
  "type": "array",
14396
14403
  "location": "body",
14397
14404
  "required": false,
14398
- "description": "Permissoes (array de strings). Valores aceitos (22): conversation_manage, conversation_delete, conversation_unassigned_manage, conversation_participating_manage, conversation_team_manage, contact_manage, contact_export_import, report_manage, knowledge_base_manage, kanban_manage, kanban_view, kanban_delete, kanban_export_import, offer_manage, funnel_manage, campaign_manage, automation_manage, marketing_integrations_manage, captain_manage, flowbuilder_manage, lead_form_manage (Formularios publicos, 05/09), signature_manage (Assinatura eletronica, 05/09). Fora da lista = recusado. Administrador tem tudo sem cargo; agente sem cargo nao tem lead_form_manage nem signature_manage (nao ve Formularios nem Assinaturas no menu)."
14405
+ "description": "Permissoes (array de strings). Valores aceitos (24): conversation_manage, conversation_delete, conversation_unassigned_manage, conversation_participating_manage, conversation_team_manage, conversation_assigned_manage (Ver conversas dos colegas: so as que JA TEM responsavel, nas caixas de que a pessoa e membro; nunca a fila sem dono — 02/10/2026), contact_manage, contact_export_import, report_manage, knowledge_base_manage, kanban_manage, kanban_view, kanban_delete, kanban_export_import, offer_manage, funnel_manage, campaign_manage, automation_manage, marketing_integrations_manage, captain_manage, flowbuilder_manage, lead_form_manage (Formularios publicos, 05/09), signature_manage (Assinatura eletronica, 05/09), agenda_manage (Gerenciar a Agenda). Fora da lista = recusado. Administrador tem tudo sem cargo; agente sem cargo nao tem lead_form_manage nem signature_manage (nao ve Formularios nem Assinaturas no menu). O editor da tela marca junto as que uma inclui: conversation_manage inclui as 4 outras de conversa; conversation_team_manage inclui conversation_participating_manage; kanban_manage inclui kanban_view. Mande a lista ja completa."
14406
+ },
14407
+ {
14408
+ "name": "hidden_menus",
14409
+ "type": "array",
14410
+ "location": "body",
14411
+ "required": false,
14412
+ "description": "Menus DESMARCADOS em 'Acessar menu X' (array de strings, 02/10/2026). Valores aceitos: contacts, companies, kanban, flows, macros, ai_agent, help_center, agenda, internal_chat. `flows` vale para Fluxos E Automacao juntos (na tela: 'Acessar menu Fluxos e Automacao'): esconde ou libera os dois; a Automacao continua so para quem tem automation_manage. SUBSTITUI a lista inteira (mande todos os que devem ficar ocultos; [] = mostra todos). Campo AUSENTE no pedido NAO muda o que esta gravado. Menu oculto some da barra lateral e a tela dele fica fechada no servidor; o que a pessoa usa dentro da conversa continua (ex.: executar macro, ligar/desligar a IA, agendar tarefa). RECUSADO com 422: texto solto ou objeto no lugar da lista, menu desconhecido, e menu oculto junto do 'Gerenciar' da mesma area (contacts x contact_manage; kanban x kanban_manage/kanban_view/kanban_delete/kanban_export_import/offer_manage/funnel_manage; flows x flowbuilder_manage/automation_manage; ai_agent x captain_manage; help_center x knowledge_base_manage; agenda x agenda_manage). contact_export_import NAO conflita com contacts. Nunca esconde nada de administrador nem de conta sem o recurso de cargo personalizado. A mudanca vale NA HORA para quem tem o cargo (a tela dela se atualiza sozinha)."
14399
14413
  }
14400
14414
  ],
14401
14415
  "returns": "papel personalizado atualizado",
@@ -14416,7 +14430,7 @@
14416
14430
  "method": "DELETE",
14417
14431
  "path": "/api/v1/accounts/{account_id}/custom_roles/{id}",
14418
14432
  "title": "Excluir Role",
14419
- "description": "Remove um role personalizado. Remove papel personalizado permanentemente. CUIDADO: ação irreversível em muitos casos. Verifique dependências antes.",
14433
+ "description": "Remove um role personalizado. Remove papel personalizado permanentemente. CUIDADO: ação irreversível em muitos casos. Verifique dependências antes. As pessoas que tinham o cargo ficam sem cargo (voltam a ser atendente comum, com todos os menus) e a tela delas se atualiza na hora.",
14420
14434
  "category": "Roles Personalizados",
14421
14435
  "params": [
14422
14436
  {
@@ -21916,7 +21930,7 @@
21916
21930
  "type": "integer",
21917
21931
  "location": "body",
21918
21932
  "required": false,
21919
- "description": "ID do cargo personalizado (custom role) a aplicar ao agente. Requer Enterprise. IMPORTANTE: o backend aplica este campo em TODA atualizacao do agente — se voce atualizar um agente que tem cargo personalizado SEM enviar custom_role_id, o cargo sera REMOVIDO. Ao editar um agente que tem cargo, envie sempre o custom_role_id junto. Use lionchat_custom_roles_list para obter os IDs dos cargos."
21933
+ "description": "ID do cargo personalizado (custom role) a aplicar ao agente. Requer Enterprise. So muda quando o campo VEM no pedido: atualizar o agente SEM custom_role_id mantem o cargo atual; mandar null tira o cargo. Trocar o cargo avisa ao vivo so essa pessoa (menus e permissoes se ajustam na tela dela). Nao vale para o proprio usuario logado (422: ninguem muda o proprio cargo). Use lionchat_custom_roles_list para obter os IDs."
21920
21934
  },
21921
21935
  {
21922
21936
  "name": "team_ids",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lionchat/mcp-server",
3
- "version": "1.28.0",
3
+ "version": "1.29.0",
4
4
  "description": "MCP server for LionChat API — 547 tools + 10 resources + 9 prompts. Audit-log aware, completion API, progress notifications.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",