Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
FLUIG_HOSTYesURL base do portal, com esquema e porta
FLUIG_PASSYesSenha desse login
FLUIG_USERYesLogin do Fluig

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
fluig_pingB

Testa autenticação e sessão no servidor Fluig configurado.

fluig_dataset_listA

Lista datasets do servidor (id + tipo). Aceita filtro (substring em id/descrição).

fluig_dataset_getB

Retorna o código-fonte de um dataset CUSTOM (loadDataset).

fluig_dataset_runA

Executa um dataset (form ou custom) e retorna as linhas. Filtre no SERVIDOR com filters (campo + condição: eq, ne, contains, starts, ends, between) e serverLimit (sqlLimit) em vez de trazer tudo e cortar com limit. match any = OU só entre as condições positivas: ne continua excluindo (E) mesmo com any. Em dataset CUSTOM, filters/constraints/serverLimit/order só valem se o código do dataset tratar constraints e sortFields; confira o resultado. Se vier limitadoPeloServidor, total é o teto do serverLimit e pode haver mais linhas. constraints aceita constraints cruas do getDataset.

fluig_dataset_saveC

Cria ou atualiza (upsert) um dataset CUSTOM com o código informado.

fluig_form_listC

Lista formulários (documentId, versão, descrição, dataset). Filtro opcional.

fluig_form_eventsB

Retorna os eventos de customização de um formulário (displayFields, validateForm, etc.).

fluig_form_filesC

Lista os nomes de arquivos (HTML/JS/CSS) de um formulário.

fluig_form_fileC

Retorna o conteúdo (texto) de um arquivo específico do formulário.

fluig_globalevent_listC

Lista os eventos globais do servidor.

fluig_globalevent_saveC

Cria ou atualiza um evento global.

fluig_globalevent_deleteA

⚠️ ESCRITA/DESTRUTIVO e IRREVERSÍVEL. Apaga UM evento global pelo id (eventId); os demais eventos não são afetados. Sem confirm=true devolve o DRY-RUN: o evento que seria apagado, com o código, sem apagar nada. Com confirm=true apaga e devolve o código apagado (eventoApagado), para restaurar com fluig_globalevent_save.

fluig_workflow_checkA

Verifica se o FluiggersWidget está instalado (necessário p/ eventos de processo via API).

fluig_workflow_events_getA

Lê os eventos de um processo (requer FluiggersWidget). Use fluig_workflow_check antes.

fluig_workflow_events_updateC

Grava eventos de um processo (requer FluiggersWidget). events = [{name, contents}].

fluig_form_fullA

Lê um formulário INTEIRO: metadados + todos os arquivos (texto) + eventos. Use antes de editar/publicar.

fluig_form_saveA

Publica/atualiza um formulário (nova versão revertível). Manda TODOS os arquivos+eventos. files:[{fileName,content}], events:[{eventId,eventDescription}]. Faça fluig_form_full antes e altere só o que precisa.

fluig_process_event_getB

Lê o código de um evento de PROCESSO (serviceTask/beforeTaskSave) via event_proces — sem widget.

fluig_process_event_setA

⚠️ Grava um evento de PROCESSO na event_proces (in-place, com BACKUP automático). Exige confirm=true. Use só em homolog e com consciência.

fluig_deploy_listB

Lista os processos disponíveis para export/deploy no servidor (via SOAP WorkflowEngineService + token). Útil p/ validar o deploy e para o round-trip de validação.

fluig_deploy_processB

⚠️ DEPLOY estrutural de PROCESSO (BPMN) headless via SOAP WorkflowEngineService (importProcess+releaseProcess, token do TokenService) — SEM Fluig Studio. Publica o .ecm30.xml (…). Exige confirm=true. 1º uso: validar com round-trip (baixar um processo real e re-deployar idêntico).

fluig_db_queryA

SELECT no banco do Fluig (TOTVSECM, /jdbc/AppDS). Lê qualquer tabela: event_proces (eventos de processo, SEM widget), DEF_PROCES, FDN_*, etc. ⚠️ A CONSULTA é read-only, mas a TOOL NÃO É: para executar SQL arbitrário o Fluig exige que ele viva num dataset, então cada chamada grava ds_claude_dbquery no servidor e registra o SQL em FDN_DATASETHISTORY (imutável pela API). Em env="prod" exige confirm=true por causa disso.

fluig_rm_db_queryA

SELECT DIRETO no banco do RM/Corpore (/jdbc/Corpore). Lê qualquer tabela do RM (VPCOMPL, PFUNCAOCOMPL, PPESSOA, PFUNC, TMOV...) sem precisar de sentença WS.###. ⚠️ Mesma ressalva do fluig_db_query: a consulta é read-only, mas a tool grava ds_claude_rmdbquery no servidor para executá-la. Em env="prod" exige confirm=true. Se existir sentença WS.### para o que você quer, prefira fluig_rm_query — essa não grava nada.

fluig_rm_queryA

Consulta o RM (Corpore) via ds_generic_rm_sql + sentença homologada WS.###. READ-ONLY DE VERDADE: chama o dataset direto pelo dataset-handle/search, sem gravar nada no servidor. É o caminho preferido para ler o RM — use no lugar de fluig_rm_db_query sempre que houver sentença. Informe os campos esperados.

fluig_process_startA

INICIA uma solicitação (startProcess SOAP). cardData={campo:valor} do formulário. choosedState=estado destino ao concluir o início (ex.: gateway seguinte). Autentica como o usuário (precisa do papel de início). Retorna {processInstanceId(iProcess), rows}.

fluig_process_moveA

SALVA e MOVE uma solicitação existente (saveAndSendTask SOAP). ⚠️ cardData SUBSTITUI o card — envie TODOS os campos que devem persistir (INICIO + etapas), senão são apagados. Faça fluig_process_take antes se a tarefa for de POOL.

fluig_process_takeB

Assume/toma a tarefa (takeProcessTask) — necessário p/ tarefas de POOL/papel antes de mover.

fluig_process_statesC

Lista os estados válidos de movimentação (choosedState) a partir do estado atual da solicitação (getAvailableStates -> IntArray).

fluig_process_card_getA

Lê TODO o cardData de uma solicitação em andamento (getInstanceCardData) -> {campo:valor}. Use antes de fluig_process_move p/ reenviar o card completo (o move SUBSTITUI o card).

fluig_process_card_valueB

Lê UM campo do card de uma solicitação (getCardValue).

fluig_process_active_statesA

Lista os estados ATIVOS (nós onde a solicitação está agora) — getAllActiveStates.

fluig_process_states_detailB

Estados-destino COM detalhe (nome/tipo) a partir do estado atual (getAvailableStatesDetail). Mais rico que fluig_process_states.

fluig_process_actual_threadC

Retorna a thread atual de um stateSequence de uma solicitação (getActualThread).

fluig_process_historyB

Histórico completo de movimentações da solicitação (getHistories -> quem moveu, quando, de/para qual atividade, comentários).

fluig_process_attachmentsC

Lista os anexos de uma solicitação (getAttachments).

fluig_process_availableB

Lista os processos que o usuário logado pode INICIAR (getAvailableProcess).

fluig_process_versionC

Versão ATIVA de um processo via SOAP (getWorkFlowProcessVersion). Funciona SEM o FluiggersWidget.

fluig_process_formidC

Retorna o documentId do formulário associado a um processo (getProcessFormId).

fluig_process_imageB

Retorna a imagem do fluxo do processo (getProcessImage) — string (URL/base64 conforme servidor).

fluig_process_available_usersC

Usuários aptos a receber a tarefa num estado da solicitação (getAvailableUsers).

fluig_process_available_users_startA

Usuários aptos a receber a 1ª tarefa ao INICIAR um processo (getAvailableUsersStart).

fluig_process_searchC

Busca processos por texto (searchProcess). favorite=true retorna só os favoritos do usuário.

fluig_process_cancelA

⚠️ CANCELA/encerra uma solicitação (cancelInstance SOAP). Escrita — exige confirm=true. Assinatura validada ao vivo (o servidor de homologação 1.8.2).

fluig_rm_db_execA

⚠️ Executa INSERT/UPDATE/DELETE no RM/Corpore (/jdbc/Corpore). Exige confirm=true. OBS: a conexão /jdbc/Corpore costuma ser READ-ONLY p/ tabelas do RM — escrita de laudo etc. vai pelo DataServer (RhuPessoaData), não por aqui.

fluig_process_export_xmlA

Baixa o XML da definição de um processo (.ecm30.xml) pela REST v2. Contém TUDO: atividades (ProcessState), transições (ProcessLink), campos e o CÓDIGO dos eventos de processo (WorkflowProcessEvent/eventDescription). Base para editar processo por código.

fluig_process_events_xmlA

Lê os eventos de PROCESSO (beforeStateEntry, afterTaskCreate, afterProcessFinish...) com o código-fonte, direto do XML da definição. NÃO precisa do FluiggersWidget nem de ler a tabela event_proces — é a fonte de verdade oficial.

fluig_process_event_set_xmlA

⚠️ ESCRITA. Grava um evento de PROCESSO pelo caminho SUPORTADO: exporta o XML da definição, troca (ou cria) o eventDescription e reimporta — gerando NOVA VERSÃO revertível. Substitui com segurança o fluig_process_event_set (UPDATE direto em event_proces). Use dryRun=true primeiro. Exige confirm=true.

fluig_process_import_xmlA

⚠️ ESCRITA ESTRUTURAL. Faz DEPLOY da definição de processo (.ecm30.xml) pela REST v2. UMA chamada substitui a sequência SOAP createWorkFlowProcessVersion→importProcess→releaseProcess (o servidor faz os 3 internamente). release=true publica junto. Exige confirm=true. Valide antes com round-trip (export → import idêntico).

fluig_process_versionsA

Lista as versões de um processo (número, formId, se está em edição). Use antes de retirar/apagar versão ou para saber qual versão exportar.

fluig_process_version_withdrawA

⚠️ ESCRITA. RETIRA do ar (withdraw) uma versão do processo — inverso do release. É o jeito de REVERTER um deploy ruim, e é obrigatório antes de apagar uma versão liberada. Exige confirm=true.

fluig_process_version_deleteA

⚠️ DESTRUTIVO. Apaga uma versão do processo (faça withdraw antes se estiver liberada). ATENÇÃO: apagar a ÚLTIMA versão remove a DEFINIÇÃO DO PROCESSO inteira. Exige confirm=true.

fluig_process_diagram_setA

⚠️ ESCRITA. Atualiza o SVG do diagrama de uma versão do processo (PUT .../diagram). Necessário depois de mudar a topologia no XML, senão o desenho publicado fica desatualizado. Exige confirm=true.

fluig_dataset_structureA

Retorna a ESTRUTURA de um dataset (colunas + tipos) SEM executá-lo — útil para descobrir o schema antes de montar um fluig_dataset_run. Rota descoberta por eng. reversa do app oficial e confirmada ao vivo.

fluig_user_replacementsA

Lista as SUBSTITUIÇÕES de usuário configuradas (quem responde por quem, com período). Explica por que uma tarefa foi parar em outra pessoa.

fluig_dataset_deleteA

⚠️ ESCRITA/DESTRUTIVO. Apaga um dataset CUSTOM do servidor (ECMDatasetService.deleteDataset). Serve para o MCP limpar os datasets descartáveis que ele mesmo cria (ds_claude_*). Exige confirm=true.

fluig_rest_getB

Escape hatch: GET autenticado num caminho arbitrário da API do Fluig.

fluig_rest_postB

Escape hatch: POST autenticado. body como string JSON; form=true para x-www-form-urlencoded.

fluig_dataset_adminA

Metadados ADMIN de dataset (o que a tela Datasets mostra): serverOffline, updateInterval, jobLastExecution/jobNextExecution, syncStatus, active/draft. Com code=true traz também o código-fonte. É por AQUI que se descobre se um dataset está agendado — agendamento = serverOffline:true + trigger no Quartz.

fluig_jobs_listA

Lista os jobs agendados pela aplicação (Agendador de Tarefas). Passe datasetId para ver só os DatasetSyncJob daquele dataset. É a leitura equivalente a consultar QRTZ_TRIGGERS, mas pela aplicação.

fluig_job_addA

⚠️ ESCRITA. Cria um job agendado. Para sincronizar dataset use jobType=23 e informe datasetId. expression é cron Quartz — o padrão da casa para integração diária é "0 00 02 1/1 * ? *" (02:00 todo dia). ⚠️ PRÉ-REQUISITO: o dataset precisa estar com serverOffline=true (tela /portal/p/1/datasetsync?datasetId=X, toggle "Sincronizar com o servidor"); sem isso o job é criado mas não sincroniza nada. Confira o resultado com fluig_jobs_list ou lendo QRTZ_TRIGGERS por fluig_db_query.

fluig_job_deleteA

⚠️ DESTRUTIVO. Apaga job(s) agendado(s). Pegue jobId e jobTypeInt com fluig_jobs_list. ⚠️ jobType é OBRIGATÓRIO — sem ele o servidor devolve NullPointerException (erro que já custou várias tentativas). Confira depois em QRTZ_TRIGGERS por fluig_db_query: a grid da tela mostra estado velho.

fluig_job_runA

Dispara um job agendado sob demanda, sem esperar o cron. Útil para validar um agendamento novo. Confirme o efeito em QRTZ_TRIGGERS.PREV_FIRE_TIME e SERV_DATASET.LAST_REMOTE_SYNC.

fluig_dataset_enableA

⚠️ ESCRITA. Ativa (active=true) ou desativa um dataset. O id vai no PATH, sem corpo — a rota é por AÇÃO NOMEADA, não REST por id. ⚠️ NÃO confundir com agendamento: isto é o flag active, não serverOffline. Um dataset ativo e sem serverOffline continua sem sincronizar.

fluig_session_resetA

Descarta a sessão em memória e faz login novo, sem reiniciar o MCP. Use quando uma chamada devolver a PÁGINA DE LOGIN no lugar do dado, ou FDNUnauthenticatedAccessDeniedException.

fluig_versionA

Diagnóstico do MCP: ambiente em uso, host, cookies da sessão e quem está autenticado. Primeira coisa a chamar quando o comportamento não bate com o esperado — responde "qual servidor eu estou realmente falando" sem adivinhação.

fluig_process_version_releaseA

⚠️ ESCRITA. PUBLICA uma versão de processo que já existe em edição, sem reimportar XML. Fecha o ciclo que fluig_process_import_xml e fluig_process_event_set_xml abrem (os dois criam versão SEM publicar). Omita processVersion para publicar a última (rota /latest/release). Troca a versão ativa para todas as NOVAS solicitações; as em voo continuam na versão antiga.

fluig_task_listA

CAIXA DE TAREFAS: o que está pendente, o que venceu e quem está segurando. ⚠️ pageSize default do BPM v2 é 1000 (máx 1000) — aqui é 100 para não estourar contexto; aumente conscientemente. Em /v2/tasks o processId vira CSV (é assim que o servidor lê).

fluig_task_countA

Só a CONTAGEM de tarefas pendentes — responde "quantas estão paradas" sem baixar a lista.

fluig_request_listA

Lista SOLICITAÇÕES por processo/status/requisitante/faixa de data. Traz formRecordId (= cardId) e formId SEM precisar de expand — é a ponte de processo para formulário. ⚠️ Aqui processId é array repetido (diferente de fluig_task_list, que usa CSV).

fluig_card_listA

Lê REGISTROS (cards) de um formulário sem passar por BPM e sem SQL. ⚠️ pageSize default desta rota é 100 (não 1000 como no BPM). documentId é o id do FORMULÁRIO.

fluig_card_children_getA

Lê as LINHAS PAI-FILHO (tabelas do formulário) de um card, com rowId e tableId — o que fluig_process_card_get NÃO dá (ele devolve o card achatado, com campo___N misturado). É o caminho para conferir rateio, itens de nota, lista de e-mails. A ordem do servidor não é determinística; esta tool já devolve ordenado por rowId.

fluig_dataset_historyA

HISTÓRICO de versões de um dataset, com o código-fonte — o "git log" embutido do Fluig. ⚠️ Esta rota ignora fields/expand (não tem @ApiFilter), então cada item traz o fonte inteiro (~8 KB). Por isso pageSize=3 e fonte truncado por padrão. ⚠️ O histórico é IMUTÁVEL pela API: senha que já esteve num dataset continua legível aqui.

fluig_dataset_draft_checkA

Existe RASCUNHO pendente neste dataset? Guarda-corpo para chamar ANTES de fluig_dataset_save: gravar por cima atropela em silêncio o trabalho não publicado de outro dev.

fluig_dataset_restoreA

⚠️ ESCRITA. ROLLBACK de um dataset para versão anterior. Não é destrutivo: a versão atual permanece no histórico. É o que torna editar dataset uma operação reversível — use junto de fluig_dataset_history (para achar a versão) e fluig_dataset_draft_check.

fluig_process_def_statesA

DEFINIÇÃO do fluxo: atividades, tipo BPMN, prazo e mecanismo de atribuição de cada etapa. Diferente de fluig_process_states, que é runtime (estados de UMA solicitação). ⚠️ Sem expand a configuração vem vazia — esta tool já manda os expands certos. ⚠️ periodId, initialState, forecastedEffort e a expressão do gateway NÃO existem na REST v2: para esses, use fluig_process_export_xml. Não conclua que "a API não tem".

fluig_request_getA

Uma SOLICITAÇÃO pelo processInstanceId, com formRecordId (= cardId) e formId. É o caminho de processo → formulário: pegue o formRecordId aqui e leia os dados com fluig_card_children_get / fluig_card_list.

fluig_process_possible_assigneesA

Quem PODE receber a próxima atividade, com filtro por nome e paginação. Chame isto quando um move for recusado com HTTP 412 (destinatário inválido) — é aqui que se descobre quem serve.

fluig_process_diagram_getA

Baixa o SVG do diagrama publicado. Fecha a assimetria com fluig_process_diagram_set: até agora dava para sobrescrever o desenho sem nunca ter lido o original. Informe destino para salvar em arquivo; sem destino devolve o SVG inline.

fluig_process_attachment_downloadB

Baixa o BINÁRIO de um anexo de solicitação para um arquivo local. ⚠️ Usa a rota singular de propósito: na rota plural do produto os parâmetros user e replacedUser estão ambos anotados @QueryParam("user") — um bug que faz replacedUser não ter efeito.

fluig_form_fieldsA

Nomes de campo VÁLIDOS de um formulário (SOAP getFormFields). Pré-requisito de qualquer escrita em card: sem isto, gravar campo é adivinhar nome. ⚠️ O campo chama-se field no SOAP e fieldId no REST v2.

fluig_card_saveA

⚠️ ESCRITA. Cria/altera/apaga registro de formulário e LINHAS FILHAS, headless. acao: criar | atualizar | apagar | criarLinha | editarLinha | apagarLinha. Use fluig_form_fields antes para acertar os nomes de campo. ⚠️ apagar/apagarLinha são destrutivos.

fluig_ged_listA

Navega o GED: documentos e subpastas de uma pasta. ⚠️ order é OBRIGATÓRIO no servidor — sem ele a rota devolve 500, não 400. Esta tool já manda um default seguro. pageSize default aqui é 100.

fluig_ged_pathA

Breadcrumb do GED: resolve o caminho de um documento desde a raiz. Use para descobrir onde um documento realmente está antes de publicar algo ao lado dele.

fluig_ged_downloadB

Baixa o conteúdo de um documento do GED para arquivo local, junto dos metadados. ⚠️ O Content-Type do /stream NÃO é confiável (a implementação reusa o helper dos thumbnails) — confie no Content-Disposition e na extensão.

fluig_process_error_logA

FORENSE de solicitação travada: o que o motor tentou executar e com qual payload (PROCES_WORKFLOW_ERROR_LOG). É a primeira parada quando uma solicitação "sumiu" ou parou sem explicação. ⚠️ Passa por fluig_db_query, que grava dataset no servidor — em env="prod" exige confirm=true.

fluig_form_createA

⚠️ ESCRITA. Cria um FORMULÁRIO (fichário) novo a partir de um ZIP com o HTML. parentId é a pasta do GED onde ele nasce — descubra com fluig_ged_list.

fluig_process_convert_instancesA

🛑 A OPERAÇÃO MAIS DESTRUTIVA DO MCP. Migra solicitações ABERTAS para uma nova versão do processo. Converter FINALIZA as tarefas pendentes e cria novas no destino — mapeamento errado significa trabalho em curso PERDIDO, sem volta. Chame primeiro SEM confirm para ver o dryRun com o mapeamento, revise par a par, e só então confirme. Descubra as instâncias com fluig_request_list e as atividades com fluig_process_def_states. Nunca rode em lote sem revisar.

fluig_process_activities_resumeA

HEATMAP do processo: quantas instâncias estão paradas em cada atividade, com os contadores de SLA. Responde "onde o fluxo está entalado" numa chamada. ⚠️ Só esta rota /resume aceita expand/interactives — as irmãs não. ⚠️ BUG DO PRODUTO: falha com javax.ejb.EJBException em ALGUNS processos (medido em produção: processo-a e processo-b falham; processo-c e processo-d funcionam), independente dos parâmetros. Se cair nisso, use fluig_task_list/fluig_request_list filtrando por processo.

fluig_deadline_calcA

Calcula prazo em HORÁRIO ÚTIL pelo calendário do servidor. modo: duracao | fim | inicio. ⚠️ A API trabalha em SEGUNDOS, mas o deadlineTime do modelo de processo é gravado em MINUTOS — passar um pelo outro erra o prazo por 60×. Use duracaoEmMinutos que a tool converte. Obrigatórios: duracao = startDate+endDate · fim = startDate+segundos · inicio = endDate+segundos.

fluig_workflow_exporterA

DOSSIÊ completo de uma solicitação num artefato só (histórico, formulário, anexos). ⚠️ anonymizeForms é OBRIGATÓRIO aqui: o default do servidor é TRUE e anonimiza os formulários em silêncio — você procuraria o dado achando que sumiu. Informe destino para baixar o ZIP.

fluig_ged_uploadA

⚠️ ESCRITA. Sobe um arquivo local para uma pasta do GED e publica. Usa a rota de UMA chamada de propósito: a de duas etapas renomeia o arquivo para [epoch]nome e descarta campos em silêncio.

fluig_card_html_urlA

URL renderizada de uma ficha de formulário. ⚠️ A URL carrega TOKEN DE ACESSO ao documento — não repassar nem registrar em log. ⚠️ Esta rota NÃO aceita cardId. Os parâmetros são documentId/documentVersionId (ficha avulsa) ou processId+processInstanceId (ficha de uma solicitação). Combinação inválida devolve HTTP 500, não 400 — todos os parâmetros são "opcionais" na spec, mas o servidor exige um conjunto coerente.

fluig_service_listA

Serviços de integração cadastrados no Fluig (nome exato, URL, tipo, driver) — útil para descobrir como o ambiente fala com o RM e com terceiros. 🔒 A projeção é FIXA e não inclui colunas de credencial, de propósito. ⚠️ Passa por fluig_db_query (grava dataset); em env="prod" exige confirm=true.

fluig_dataset_state_setA

⚠️ ESCRITA. Ativa, inativa ou converte para CUSTOM um dataset. ⚠️ desativar é LÓGICO (IS_ACTIVE=false), não apaga — para apagar use fluig_dataset_delete. ⚠️ NÃO confundir com agendamento: isto é o flag active, não o serverOffline. Um dataset ativo e sem serverOffline continua sem sincronizar.

fluig_process_move_restA

⚠️ ESCRITA. Movimenta a solicitação pela REST v2 (retorno tipado, trata 412). Alternativa a fluig_process_move (SOAP). ⚠️ targetState/movementSequence são int primitivos: OMITIR envia 0, nunca null — com gateway no fluxo, informe targetState sempre. ⚠️ A semântica de formFields NÃO está confirmada: trate como SUBSTITUIÇÃO e mande o card completo (leia antes com fluig_process_card_get). O 412 volta como dado, com as opções válidas.

fluig_process_createA

⚠️ ESCRITA. Cria o esqueleto de um processo novo. Use para processo DESCARTÁVEL de teste (prefixo ZZ_TESTE_*) em vez de experimentar em processo com solicitações abertas.

fluig_rm_dataserver_schemaA

Contrato (schema) de um DataServer do RM — leia ANTES de tentar gravar no ERP. Roda via ServiceManager → wsDataServer.getSchema, o padrão de datasets customizados. ⚠️ Grava um dataset para executar; em env="prod" exige confirm=true.

fluig_rm_save_recordA

🛑 ESCRITA NO ERP. Grava no RM pela BUSINESS LAYER (DataServer.saveRecord) — a forma CERTA, que respeita fórmula, consistência, numeração e rateio, tudo que um UPDATE direto atropela. Prefira esta a fluig_rm_db_exec. Chame primeiro SEM confirm para ver o dryRun; valide o XML contra fluig_rm_dataserver_schema e só então confirme.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.1/5.0

Scored across 98 tools

Disambiguation2/5

The set contains many overlapping alternatives: fluig_dataset_enable vs fluig_dataset_state_set, fluig_process_states vs fluig_process_states_detail, fluig_process_event_set vs fluig_process_event_set_xml, and fluig_process_move vs fluig_process_move_rest. Descriptions often explain the differences, but only after long warnings; an agent must read carefully to avoid misselection. Several domain boundaries also blur between process XML, deploy, and event-editing tools.

Naming Consistency4/5

Almost every tool uses the same fluig_ prefix and snake_case naming, with predictable domain grouping such as process, dataset, card, and ged. There are deviations from a pure verb_noun pattern: some names are noun phrases (fluig_process_history, fluig_dataset_admin, fluig_card_html_url) and some use generic verbs, but the overall scheme is still readable and consistent.

Tool Count1/5

Ninety-eight tools is far beyond a well-scoped MCP surface and creates an overwhelming selection problem. Many tools are near-duplicates or escape hatches, so the count does not reflect distinct, necessary capabilities.

Completeness4/5

The surface is very broad, covering process lifecycle, datasets, forms, cards, GED, jobs, RM integration, diagnostics, and destructive operations with dry-run warnings. Minor gaps may exist, such as GED delete or some administrative cleanup operations, but the domain is extensively covered.

Maintenance

ActivityNo data
ResponsivenessOutdated data