← InícioFleetPay / MCP

Contexto para seus Agentes.

Documentos, recebíveis e informações da operação. Conheça as consultas implementadas no core e avalie uma integração via Model Context Protocol.

01Seu Agente
02Autorização
03Consulta FleetPay
01 / Referência

Quatro Consultas. Contexto Útil.

Consultas de leitura: não executam Pix, TED, antecipações ou liberação de pagamentos. O acesso a dados depende da identidade, das permissões e do contexto de empresa autorizados.

Baixar Referência de Entradas (JSON)

Baixar Estruturas de Retorno (JSON)

O arquivo de retornos mapeia data, meta e error nas respostas JSON revisadas. Distingue lista vazia de not_found e identifica tipos ainda não confirmados. Não é o outputSchema anunciado pelo servidor nem o envelope MCP/JSON-RPC; erros de autorização e execução podem usar outro formato.

Status e tipos de documentos, contas e pagamentos usam códigos numéricos nos seis enums revisados. O JSON inclui os códigos e nomes técnicos dos casos em enumReferences; esses nomes não são rótulos comerciais. Os valores pertencem à versão de código indicada no arquivo.

Os parâmetros herdados company_cnpj e company_name permitem resolver a empresa. A sessão do painel fixa sua própria empresa; a resolução não substitui a autorização. Nos retornos de documentos e recebíveis, confira company_ids_in_scope e scope_expanded: o recorte de um embarcador pode incluir suas transportadoras vinculadas e registros de outros embarcadores dessas transportadoras.

Referência extraída do código versionado, não de uma conexão com o servidor. O arquivo separa os tipos declarados dos campos exigidos durante a execução. Confirme o contrato do ambiente antes de gerar um cliente.

01

Documentos de Transporte

Localize documentos e acompanhe sua situação por empresa.

Ferramenta
fleetpay_core_documents_list
Escopo
read:documents.list
Parâmetros, Retorno e Limites
Parâmetros
company_idinteger · Opcional
ID da empresa autorizada. Pode ser resolvido por CNPJ ou nome; sessões do painel usam a empresa fixada na sessão. Um contexto de empresa autorizado é necessário antes da consulta.
company_cnpjstring · Opcional
Alternativa ao ID, com ou sem máscara. Identificar uma empresa não concede acesso a seus dados.
company_namestring · Opcional
Alternativa por nome, com pelo menos três caracteres. Nomes ambíguos exigem desambiguação. Prioridade: ID, CNPJ, nome.
statusstring · Opcional
Filtro por status do documento, conforme os valores aceitos no ambiente.
fromstring · YYYY-MM-DD · Opcional
Início do período, aplicado a payment_date / shipper_due_date.
tostring · YYYY-MM-DD · Opcional
Fim do período, aplicado a payment_date / shipper_due_date.
limitinteger · Opcional
Itens por página: padrão 25, máximo 100.
cursorinteger · Opcional
ID do último item, para consultar a próxima página.
Retorno

Identificação, status, valor e datas dos documentos; paginação com cursor, has_more, limit e total.

Campos selecionados para interpretar a resposta; não substituem um schema de saída validado em homologação.

data[].iddata[].internal_iddata[].statusdata[].amount
Identificação, status e valor do documento. O status do documento não substitui a evidência de pagamento.
data[].sacado_payment_datedata[].sacado_due_datedata[].sacado_due_date_postponed
Data de pagamento do sacado, vencimento contratual e vencimento prorrogado. Podem ser nulos; a consulta não calcula atraso.
meta.pagination.cursormeta.pagination.has_moremeta.pagination.total
Use o cursor retornado quando has_more for true. Na última página, cursor é null. total conta os documentos de todo o recorte filtrado.
meta.company_ids_in_scopemeta.scope_expandedmeta.scope_note
Empresas efetivamente incluídas na consulta. Confira este recorte antes de atribuir os resultados a um único embarcador.
Como Interpretar
25 itens por padrão, até 100 por página. payment_date e shipper_due_date representam o vencimento do embarcador. O pagamento efetivo do sacado usa sacado_payment_date.

Exemplo de Entrada

Identificadores fictícios. Apenas método e parâmetros; o transporte e a autenticação são confirmados na habilitação. Esta página não executa consultas.

{
  "method": "tools/call",
  "params": {
    "name": "fleetpay_core_documents_list",
    "arguments": {
      "company_id": 101,
      "limit": 25
    }
  }
}

Exemplo de Retorno Vazio

Dados sintéticos e IDs fictícios. Uma lista vazia representa apenas o recorte consultado; não comprova ausência de registros fora do escopo autorizado. Consulte o arquivo para campos dos itens, tipos pendentes e a variante not_found.

{
  "data": [],
  "meta": {
    "company_id": 101,
    "company_ids_in_scope": [
      101
    ],
    "scope_expanded": false,
    "scope_note": null,
    "field_semantics": "sacado_payment_date = dia em que o EMBARCADOR (sacado) pagou a fatura (pay_invoices.payment_date, via pay_payments SHIPPER_CARRIER_PAYMENT; null = em aberto). NÃO confunda com pay_documents.payment_date (= vencimento do embarcador, data futura) nem com pay_receivables.payment_date (= data em que o FIDC foi ressarcido). Atraso não é calculado aqui: use sacado_due_date (vencimento contratual) ou sacado_due_date_postponed (prorrogado) conforme a metodologia do score.",
    "pagination": {
      "cursor": null,
      "has_more": false,
      "limit": 25,
      "total": 0
    }
  },
  "error": null
}
02

Saldos Registrados

Consulte as contas da empresa e o saldo registrado na operação.

Ferramenta
fleetpay_core_account_balance
Escopo
read:account.balance
Parâmetros, Retorno e Limites
Parâmetros
company_idinteger · Opcional
ID da empresa autorizada. Pode ser resolvido por CNPJ ou nome; sessões do painel usam a empresa fixada na sessão. Um contexto de empresa autorizado é necessário antes da consulta.
company_cnpjstring · Opcional
Alternativa ao ID, com ou sem máscara. Identificar uma empresa não concede acesso a seus dados.
company_namestring · Opcional
Alternativa por nome, com pelo menos três caracteres. Nomes ambíguos exigem desambiguação. Prioridade: ID, CNPJ, nome.
account_idinteger · Opcional
Conta específica. Quando omitido, consulta as contas visíveis da empresa.
Retorno

Identificação e status da conta, saldo derivado, saldo persistido e data do último extrato disponível.

Campos selecionados para interpretar a resposta; não substituem um schema de saída validado em homologação.

data[].balancedata[].persisted_balancedata[].last_statement_at
balance usa o saldo após o último lançamento disponível ou, na ausência dele, persisted_balance. last_statement_at pode ser null; não representa uma atualização bancária em tempo real.
data[].account_iddata[].account_statusdata[].is_swap_blockedmeta.count
Identificação e situação das contas visíveis. count é a quantidade retornada. Uma lista vazia não comprova a inexistência de uma conta fora do escopo autorizado.
Como Interpretar
O saldo deriva do último lançamento de extrato disponível, com alternativa no saldo persistido. Não é uma consulta em tempo real ao provedor bancário.

Exemplo de Entrada

Identificadores fictícios. Apenas método e parâmetros; o transporte e a autenticação são confirmados na habilitação. Esta página não executa consultas.

{
  "method": "tools/call",
  "params": {
    "name": "fleetpay_core_account_balance",
    "arguments": {
      "company_id": 101,
      "account_id": 202
    }
  }
}

Exemplo de Retorno Vazio

Dados sintéticos e IDs fictícios. Uma lista vazia representa apenas o recorte consultado; não comprova ausência de registros fora do escopo autorizado. Consulte o arquivo para campos dos itens, tipos pendentes e a variante not_found.

{
  "data": [],
  "meta": {
    "company_id": 101,
    "count": 0
  },
  "error": null
}
03

Pagamentos do Motorista

Acompanhe os registros de pagamento de um motorista, organizados por data.

Ferramenta
fleetpay_core_drivers_payments_list
Escopo
read:drivers.payments.list
Parâmetros, Retorno e Limites
Parâmetros
company_idinteger · Opcional
ID da empresa autorizada. Pode ser resolvido por CNPJ ou nome; sessões do painel usam a empresa fixada na sessão. Um contexto de empresa autorizado é necessário antes da consulta.
company_cnpjstring · Opcional
Alternativa ao ID, com ou sem máscara. Identificar uma empresa não concede acesso a seus dados.
company_namestring · Opcional
Alternativa por nome, com pelo menos três caracteres. Nomes ambíguos exigem desambiguação. Prioridade: ID, CNPJ, nome.
driver_idinteger · Obrigatório
Identificador do usuário motorista.
Retorno

Grupos por data com quantidade, valor total e registros de pagamentos, incluindo status e referências operacionais.

Campos selecionados para interpretar a resposta; não substituem um schema de saída validado em homologação.

data[].datedata[].countdata[].total_amountdata[].payments[]
Cada item agrupa pagamentos por data. date pode ser null. O total soma registros do grupo; não significa que todos foram liquidados.
data[].payments[].statusmeta.countmeta.truncated
Interprete o status de cada pagamento. count conta pagamentos, não grupos. truncated fica true ao atingir 200 registros; sinaliza o teto da consulta, sem comprovar que exista um registro adicional.
Como Interpretar
Consulta limitada aos 200 registros mais recentes do recorte. Não representa uma exportação completa. A situação de cada registro deve ser interpretada pelo seu status.

Exemplo de Entrada

Identificadores fictícios. Apenas método e parâmetros; o transporte e a autenticação são confirmados na habilitação. Esta página não executa consultas.

{
  "method": "tools/call",
  "params": {
    "name": "fleetpay_core_drivers_payments_list",
    "arguments": {
      "company_id": 101,
      "driver_id": 303
    }
  }
}

Exemplo de Retorno Vazio

Dados sintéticos e IDs fictícios. Uma lista vazia representa apenas o recorte consultado; não comprova ausência de registros fora do escopo autorizado. Consulte o arquivo para campos dos itens, tipos pendentes e a variante not_found.

{
  "data": [],
  "meta": {
    "driver_id": 303,
    "company_id": 101,
    "count": 0,
    "truncated": false
  },
  "error": null
}
04

Recebíveis

Consulte recebíveis vinculados aos documentos da empresa e os totais do período.

Ferramenta
fleetpay_core_receivables_list
Escopo
read:receivables.list
Parâmetros, Retorno e Limites
Parâmetros
company_idinteger · Opcional
ID da empresa autorizada. Pode ser resolvido por CNPJ ou nome; sessões do painel usam a empresa fixada na sessão. Um contexto de empresa autorizado é necessário antes da consulta.
company_cnpjstring · Opcional
Alternativa ao ID, com ou sem máscara. Identificar uma empresa não concede acesso a seus dados.
company_namestring · Opcional
Alternativa por nome, com pelo menos três caracteres. Nomes ambíguos exigem desambiguação. Prioridade: ID, CNPJ, nome.
fromstring · YYYY-MM-DD · Opcional
Início do período, aplicado a created_at.
tostring · YYYY-MM-DD · Opcional
Fim do período, aplicado a created_at.
limitinteger · Opcional
Itens por página: padrão 25, máximo 100.
cursorinteger · Opcional
ID do último item, para consultar a próxima página.
Retorno

Recebíveis paginados e totais agregados do período: quantidade, valor de face, valor presente e distribuição mensal.

Campos selecionados para interpretar a resposta; não substituem um schema de saída validado em homologação.

data[].valuedata[].current_valuedata[].fund_reimbursed_date
Valor de face, valor presente e data de ressarcimento do fundo. O campo legado payment_date tem o mesmo sentido de fund_reimbursed_date, não de pagamento do sacado.
data[].sacado_payment_datedata[].sacado_due_datedata[].sacado_due_date_postponed
Data de pagamento do sacado, vencimento contratual e vencimento prorrogado. Podem ser nulos; a consulta não calcula atraso.
meta.date_basismeta.totalsmeta.totals.in_invoicemeta.totals.by_month
Os totais usam created_at e cobrem o período inteiro, independentemente do cursor. in_invoice inclui recebíveis com payment_id; inclusão em fatura não comprova liquidação.
meta.company_ids_in_scopemeta.scope_expandedmeta.scope_note
Empresas efetivamente incluídas na consulta. Confira este recorte antes de atribuir os resultados a um único embarcador.
Como Interpretar
25 itens por padrão, até 100 por página. Os totais cobrem o período, não apenas a página. payment_date representa ressarcimento ao fundo; sacado_payment_date representa pagamento do sacado.

Exemplo de Entrada

Identificadores fictícios. Apenas método e parâmetros; o transporte e a autenticação são confirmados na habilitação. Esta página não executa consultas.

{
  "method": "tools/call",
  "params": {
    "name": "fleetpay_core_receivables_list",
    "arguments": {
      "company_id": 101,
      "from": "2026-09-01",
      "to": "2026-09-30",
      "limit": 25
    }
  }
}

Exemplo de Retorno Vazio

Dados sintéticos e IDs fictícios. Uma lista vazia representa apenas o recorte consultado; não comprova ausência de registros fora do escopo autorizado. Consulte o arquivo para campos dos itens, tipos pendentes e a variante not_found.

{
  "data": [],
  "meta": {
    "company_id": 101,
    "company_ids_in_scope": [
      101
    ],
    "scope_expanded": false,
    "scope_note": null,
    "field_semantics": "sacado_payment_date = dia em que o EMBARCADOR (sacado) pagou a fatura (pay_invoices.payment_date, via pay_payments SHIPPER_CARRIER_PAYMENT; null = em aberto). NÃO confunda com pay_documents.payment_date (= vencimento do embarcador, data futura) nem com pay_receivables.payment_date (= data em que o FIDC foi ressarcido). Atraso não é calculado aqui: use sacado_due_date (vencimento contratual) ou sacado_due_date_postponed (prorrogado) conforme a metodologia do score.",
    "pagination": {
      "cursor": null,
      "has_more": false,
      "limit": 25
    },
    "date_basis": "created_at",
    "totals": {
      "count": 0,
      "invoices_count": 0,
      "sum_value": 0,
      "sum_current_value": 0,
      "in_invoice": {
        "count": 0,
        "sum_value": 0,
        "sum_current_value": 0,
        "note": "Somente recebíveis com payment_id (já incluídos numa fatura FleetPay). É este o recorte do nível 2 do funil de originação."
      },
      "by_month": []
    }
  },
  "error": null
}
02 / Interpretação

Como Ler Respostas e Erros

Na versão revisada, Response::json serializa o payload dentro de um bloco de texto em result.content. Não cria structuredContent. A leitura exige três verificações diferentes.

  1. Erro JSON-RPC

    Verifique error no nível principal antes de acessar result. Um problema no protocolo não é um resultado da consulta.

  2. Erro da Ferramenta

    Se result.isError for true, trate o erro. O texto pode ser uma mensagem simples; não tente interpretá-lo automaticamente como JSON de sucesso.

  3. Erro no Payload

    Nas respostas JSON revisadas, interprete o bloco de texto com tratamento de falha e confira o campo error do payload. not_found pode chegar com isError: false. Uma lista vazia com error: null é outra situação.

Baixar Exemplos de Envelope (JSON)

Ver Exemplo Sintético de not_found
{
  "jsonrpc": "2.0",
  "id": "example-1",
  "result": {
    "content": [
      {
        "type": "text",
        "text": "{\"data\":null,\"meta\":null,\"error\":{\"code\":\"not_found\",\"message\":\"Company não encontrada.\"}}"
      }
    ],
    "isError": false
  }
}

Exemplos derivados do código, com ID fictício. Não representam chamadas ao ambiente real nem validam HTTP, OAuth, SSE ou respostas de gateways. Confirme o contrato no ambiente autorizado antes de integrar.

03 / Acesso

Permissões antes de Respostas

  1. Defina a Consulta

    Descreva o objetivo do agente, os dados necessários e as empresas envolvidas. O catálogo acima é uma seleção; não indica liberação automática de todas as ferramentas.

  2. Confirme o Acesso

    A habilitação define identidade, permissões e contexto de empresa. Autenticar ou consentir via OAuth não concede, por si só, acesso às consultas. Credenciais da API REST não devem ser presumidas compatíveis com MCP.

  3. Valide em Homologação

    Confirme consultas permitidas e negadas, limites, paginação e interpretação das datas. Mantenha credenciais fora do navegador, de prompts compartilhados e dos registros da aplicação.

Referência editorial baseada no código do core 368eda3. Não comprova implantação ou habilitação no seu ambiente. Parâmetros descritos são um resumo, não um schema completo.