Skip to main content
Glama

Emitir MDF-e

mdfe_emitir
Destructive

Emite MDF-e (Manifesto Eletrônico de Documentos Fiscais), agrupando vários CT-e/NF-e em um único transporte. Obrigatório para transportadores com vários DFs no mesmo veículo.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
loteNo
pesoYesPeso bruto total das mercadorias em KG. DEVE ser > 0.
AereoNo
serieNo
valorYesValor total das mercadorias transportadas. DEVE ser > 0.
codigoNo
numeroNo
segurosNo
AquaviarioNo
RodoviarioNoDados do transporte rodoviário (placa 7 caracteres, condutores com CPF/nome, UF do veículo). OBRIGATÓRIO quando modalidade = 1.
modalidadeYesModalidade de transporte. Valores: 1 - Rodoviário (exige objeto Rodoviario com placa, condutores e percurso); 2 - Aéreo (exige objeto Aereo); 3 - Aquaviário (exige objeto Aquaviario); 4 - Ferroviário (exige objeto Ferroviario)
observacaoNo
DataEmissaoNoData/hora ISO 8601 (ex: 2026-07-22T13:45:00-03:00)
FerroviarioNo
percursoUfsNo
tipoAmbienteYesTipo de ambiente. IMPORTANTE: passe explicitamente. Para testes use 2. Valores: 1 - Produção; 2 - Homologação
tipoEmitenteYesTipo de emitente. Valores: 1 - Prestador de Serviço de Transporte (transportadora); 2 - Transportador de carga própria (mais comum - empresa transportando seus próprios produtos)
carregamentosNo
ufCarregamentoYesUF de carregamento (origem). Sigla de 2 letras (SP, RJ, MG...).
observacaoFiscoNo
descarregamentosNo
ufDescarregamentoYesUF de descarregamento (destino). Sigla de 2 letras (SP, RJ, MG...).
produtoPredominanteNoProduto predominante transportado. Opcional.
identificadorInternoNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
ErrorNoMensagem de erro da operação. Vazia ("") quando foi bem-sucedida.
chaveNo
AvisosNoAvisos não bloqueantes. Pode vir preenchida mesmo em emissão bem-sucedida.
numeroNo
statusNo1 - Lote processado; 2 - Aguardando processamento; 3 - Ocorreu um erro ao processar o lote
base64XmlNo
base64DAMDFeNo
tipoAmbienteNo
codRespostaSefazNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / Rodoviario / properties / pagamentos
      Added value: +{
      +  "description": "Informações de pagamento do frete (grupo infANTT/infPag).",
      +  "items": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "altoDesempenho": {
      +        "description": "Operação de transporte de alto desempenho (frota dedicada/fidelizada).",
      +        "type": "boolean"
      +      },
      +      "anteciparAdiantamento": {
      +        "description": "Concordância em antecipar o adiantamento.",
      +        "type": "boolean"
      +      },
      +      "componentes": {
      +        "description": "Componentes do pagamento do frete.",
      +        "items": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "descricao": {
      +              "description": "Descrição do componente (usar quando tipo = 99).",
      +              "type": [
      +                "string",
      +                "null"
      +              ]
      +            },
      +            "tipo": {
      +              "description": "Tipo do componente: 01 - Vale-Pedágio; 02 - Impostos, taxas e contribuições; 03 - Despesas; 99 - Outros.",
      +              "type": [
      +                "string",
      +                "null"
      +              ]
      +            },
      +            "valor": {
      +              "description": "Valor do componente.",
      +              "type": "number"
      +            }
      +          },
      +          "type": "object"
      +        },
      +        "type": [
      +          "array",
      +          "null"
      +        ]
      +      },
      +      "cpfCnpjResponsavel": {
      +        "description": "CPF, CNPJ ou identificador estrangeiro do responsável pelo pagamento do frete.",
      +        "type": [
      +          "string",
      +          "null"
      +        ]
      +      },
      +      "indicadorPagamento": {
      +        "description": "Forma de pagamento: 0 - à vista; 1 - a prazo.",
      +        "type": "integer"
      +      },
      +      "infoBancaria": {
      +        "additionalProperties": false,
      +        "description": "Informações bancárias para recebimento do frete.",
      +        "properties": {
      +          "cnpjInstituicaoPagamento": {
      +            "description": "CNPJ da instituição de pagamento eletrônico do frete (alternativa ao banco/agência).",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "codAgencia": {
      +            "description": "Número da agência bancária.",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "codBanco": {
      +            "description": "Número do banco. Informar junto com a agência (ou use cnpjInstituicaoPagamento, ou pix).",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "pix": {
      +            "description": "Chave PIX para recebimento do frete (alternativa ao banco/agência).",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          }
      +        },
      +        "type": [
      +          "object",
      +          "null"
      +        ]
      +      },
      +      "nomeResponsavel": {
      +        "description": "Razão social ou nome do responsável pelo pagamento.",
      +        "type": [
      +          "string",
      +          "null"
      +        ]
      +      },
      +      "parcelas": {
      +        "description": "Parcelas do pagamento (informar somente se a prazo).",
      +        "items": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "numero": {
      +              "description": "Número da parcela.",
      +              "type": "integer"
      +            },
      +            "valor": {
      +              "description": "Valor da parcela.",
      +              "type": [
      +                "number",
      +                "null"
      +              ]
      +            },
      +            "vencimento": {
      +              "description": "Data de vencimento da parcela.",
      +              "type": [
      +                "string",
      +                "null"
      +              ]
      +            }
      +          },
      +          "type": "object"
      +        },
      +        "type": [
      +          "array",
      +          "null"
      +        ]
      +      },
      +      "tipoAntecipacao": {
      +        "description": "Permissão de antecipação das parcelas: 0 - não permite; 1 - permite; 2 - permite mediante confirmação.",
      +        "type": [
      +          "integer",
      +          "null"
      +        ]
      +      },
      +      "valorAdiantamento": {
      +        "description": "Valor do adiantamento (usar apenas em pagamento a prazo).",
      +        "type": [
      +          "number",
      +          "null"
      +        ]
      +      },
      +      "valorContrato": {
      +        "description": "Valor total do contrato.",
      +        "type": "number"
      +      }
      +    },
      +    "type": "object"
      +  },
      +  "type": [
      +    "array",
      +    "null"
      +  ]
      +}
  2. Changed2 schema fields changed
    • addedInput schema / properties / Rodoviario / properties / contratantes
      Added value: +{
      +  "description": "Contratantes do serviço de transporte (grupo infANTT/infContratante).",
      +  "items": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "cpfCnpj": {
      +        "description": "CPF, CNPJ ou identificador estrangeiro do contratante do transporte.",
      +        "type": [
      +          "string",
      +          "null"
      +        ]
      +      },
      +      "nome": {
      +        "description": "Razão social ou nome do contratante.",
      +        "type": [
      +          "string",
      +          "null"
      +        ]
      +      },
      +      "nroContrato": {
      +        "description": "Número do contrato do transportador com o contratante, para prestações continuadas.",
      +        "type": [
      +          "string",
      +          "null"
      +        ]
      +      },
      +      "vContratoGlobal": {
      +        "description": "Valor global do contrato. Usar somente no pagamento a prazo.",
      +        "type": [
      +          "number",
      +          "null"
      +        ]
      +      }
      +    },
      +    "type": "object"
      +  },
      +  "type": [
      +    "array",
      +    "null"
      +  ]
      +}
    • addedInput schema / properties / Rodoviario / properties / valePedagio
      Added value: +{
      +  "additionalProperties": false,
      +  "description": "Vale-pedágio (grupo infANTT/valePed).",
      +  "properties": {
      +    "categoriaCombinacaoVeicular": {
      +      "description": "Categoria de combinação veicular (02 a 14, conforme número de eixos).",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "dispositivos": {
      +      "description": "Dispositivos do vale-pedágio.",
      +      "items": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "cnpjFornecedor": {
      +            "description": "CNPJ da empresa fornecedora do vale-pedágio.",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "cpfCnpjPagador": {
      +            "description": "CPF ou CNPJ do responsável pelo pagamento. Informar quando não for o emitente do MDF-e.",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "numeroComprovante": {
      +            "description": "Número do comprovante de compra.",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "tipo": {
      +            "description": "Tipo do vale-pedágio: 01 - TAG, 02 - Cupom, 03 - Cartão.",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "valor": {
      +            "description": "Valor do vale-pedágio.",
      +            "type": "number"
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "type": [
      +        "array",
      +        "null"
      +      ]
      +    }
      +  },
      +  "type": [
      +    "object",
      +    "null"
      +  ]
      +}
  3. Changed85 schema fields changed
    • changedInput schema / properties / Aereo / properties / aerodromoDestino / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / Aereo / properties / aerodromoEmbarque / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • addedInput schema / properties / Aereo / properties / dataVoo / description
      Added value: +"Data/hora ISO 8601 (ex: 2026-07-22T13:45:00-03:00)"
    • removedInput schema / properties / Aereo / properties / dataVoo / format
      Removed value: -"date-time"
    • changedInput schema / properties / Aereo / properties / matricula / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / Aereo / properties / nacionalidade / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / Aereo / properties / numeroVoo / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / Aereo / type
      Previous value: -"object"New value: +[
      +  "object",
      +  "null"
      +]
    • changedInput schema / properties / Aquaviario / properties / cnpjAgencia / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / Aquaviario / properties / codEmbarcacao / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / Aquaviario / properties / codPortoDestino / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / Aquaviario / properties / codPortoEmbarque / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / Aquaviario / properties / nomeEmbarcacao / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / Aquaviario / properties / numeroViagem / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / Aquaviario / type
      Previous value: -"object"New value: +[
      +  "object",
      +  "null"
      +]
    • addedInput schema / properties / DataEmissao / description
      Added value: +"Data/hora ISO 8601 (ex: 2026-07-22T13:45:00-03:00)"
    • removedInput schema / properties / DataEmissao / format
      Removed value: -"date-time"
    • changedInput schema / properties / DataEmissao / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • addedInput schema / properties / Ferroviario / properties / DataLiberacao / description
      Added value: +"Data/hora ISO 8601 (ex: 2026-07-22T13:45:00-03:00)"
    • removedInput schema / properties / Ferroviario / properties / DataLiberacao / format
      Removed value: -"date-time"
    • changedInput schema / properties / Ferroviario / properties / Vagoes / items / properties / sequencia / type
      Previous value: -"integer"New value: +[
      +  "integer",
      +  "null"
      +]
    • changedInput schema / properties / Ferroviario / properties / Vagoes / type
      Previous value: -"array"New value: +[
      +  "array",
      +  "null"
      +]
    • changedInput schema / properties / Ferroviario / properties / destino / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / Ferroviario / properties / origem / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / Ferroviario / properties / prefixo / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / Ferroviario / type
      Previous value: -"object"New value: +[
      +  "object",
      +  "null"
      +]
    • changedInput schema / properties / Rodoviario / properties / CIOT / properties / cnpj / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / Rodoviario / properties / CIOT / properties / codigo / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / Rodoviario / properties / CIOT / type
      Previous value: -"object"New value: +[
      +  "object",
      +  "null"
      +]
    • changedInput schema / properties / Rodoviario / properties / capKG / type
      Previous value: -"integer"New value: +[
      +  "integer",
      +  "null"
      +]
    • changedInput schema / properties / Rodoviario / properties / capM3 / type
      Previous value: -"integer"New value: +[
      +  "integer",
      +  "null"
      +]
    • changedInput schema / properties / Rodoviario / properties / condutores / items / properties / cpf / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / Rodoviario / properties / condutores / items / properties / nome / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / Rodoviario / properties / condutores / type
      Previous value: -"array"New value: +[
      +  "array",
      +  "null"
      +]
    • changedInput schema / properties / Rodoviario / properties / placa / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / Rodoviario / properties / reboques / items / properties / capKG / type
      Previous value: -"integer"New value: +[
      +  "integer",
      +  "null"
      +]
    • changedInput schema / properties / Rodoviario / properties / reboques / items / properties / capM3 / type
      Previous value: -"integer"New value: +[
      +  "integer",
      +  "null"
      +]
    • changedInput schema / properties / Rodoviario / properties / reboques / items / properties / placa / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / Rodoviario / properties / reboques / items / properties / renavam / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / Rodoviario / properties / reboques / items / properties / tara / type
      Previous value: -"integer"New value: +[
      +  "integer",
      +  "null"
      +]
    • changedInput schema / properties / Rodoviario / properties / reboques / items / properties / uf / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / Rodoviario / properties / reboques / type
      Previous value: -"array"New value: +[
      +  "array",
      +  "null"
      +]
    • changedInput schema / properties / Rodoviario / properties / renavam / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / Rodoviario / properties / uf / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / Rodoviario / type
      Previous value: -"object"New value: +[
      +  "object",
      +  "null"
      +]
    • changedInput schema / properties / carregamentos / items / properties / municipio / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / carregamentos / type
      Previous value: -"array"New value: +[
      +  "array",
      +  "null"
      +]
    • changedInput schema / properties / codigo / type
      Previous value: -"integer"New value: +[
      +  "integer",
      +  "null"
      +]
    • changedInput schema / properties / descarregamentos / items / properties / chaveDfe / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / descarregamentos / items / properties / municipio / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / descarregamentos / items / properties / transportePerigosos / items / properties / codigoONU / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / descarregamentos / items / properties / transportePerigosos / type
      Previous value: -"array"New value: +[
      +  "array",
      +  "null"
      +]
    • changedInput schema / properties / descarregamentos / type
      Previous value: -"array"New value: +[
      +  "array",
      +  "null"
      +]
    • changedInput schema / properties / identificadorInterno / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / lote / type
      Previous value: -"integer"New value: +[
      +  "integer",
      +  "null"
      +]
    • changedInput schema / properties / numero / type
      Previous value: -"integer"New value: +[
      +  "integer",
      +  "null"
      +]
    • changedInput schema / properties / observacao / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / observacaoFisco / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / percursoUfs / type
      Previous value: -"array"New value: +[
      +  "array",
      +  "null"
      +]
    • changedInput schema / properties / produtoPredominante / properties / cEan / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / produtoPredominante / properties / descricao / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / produtoPredominante / properties / infLotacao / properties / localCarrega / properties / cep / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / produtoPredominante / properties / infLotacao / properties / localCarrega / properties / latitude / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / produtoPredominante / properties / infLotacao / properties / localCarrega / properties / longitude / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / produtoPredominante / properties / infLotacao / properties / localCarrega / type
      Previous value: -"object"New value: +[
      +  "object",
      +  "null"
      +]
    • changedInput schema / properties / produtoPredominante / properties / infLotacao / properties / localDescarrega / properties / cep / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / produtoPredominante / properties / infLotacao / properties / localDescarrega / properties / latitude / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / produtoPredominante / properties / infLotacao / properties / localDescarrega / properties / longitude / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / produtoPredominante / properties / infLotacao / properties / localDescarrega / type
      Previous value: -"object"New value: +[
      +  "object",
      +  "null"
      +]
    • changedInput schema / properties / produtoPredominante / properties / infLotacao / type
      Previous value: -"object"New value: +[
      +  "object",
      +  "null"
      +]
    • changedInput schema / properties / produtoPredominante / properties / ncm / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / produtoPredominante / type
      Previous value: -"object"New value: +[
      +  "object",
      +  "null"
      +]
    • changedInput schema / properties / seguros / items / properties / cnpjSegurador / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / seguros / items / properties / cpfCnpjResponsavel / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / seguros / items / properties / nomeSegurador / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / seguros / items / properties / numeroApolice / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedInput schema / properties / seguros / items / properties / numerosAverbacao / type
      Previous value: -"array"New value: +[
      +  "array",
      +  "null"
      +]
    • changedInput schema / properties / seguros / type
      Previous value: -"array"New value: +[
      +  "array",
      +  "null"
      +]
    • changedInput schema / properties / serie / type
      Previous value: -"integer"New value: +[
      +  "integer",
      +  "null"
      +]
    • changedOutput schema / properties / Avisos / type
      Previous value: -"array"New value: +[
      +  "array",
      +  "null"
      +]
    • changedOutput schema / properties / Error / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedOutput schema / properties / base64DAMDFe / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedOutput schema / properties / base64Xml / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedOutput schema / properties / chave / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedOutput schema / properties / tipoAmbiente / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
  4. First observed

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true, readOnlyHint=false, openWorldHint=true, so the write/irreversibility profile is covered structurally. The description adds the grouping semantics and the legal-obligation context, but says nothing about SEFAZ submission, authorization response, numbering, or what happens on rejection — useful additions beyond annotations are thin.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tight sentences with zero waste; the purpose and the usage condition are front-loaded. Nothing is padded or restated from the title.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a heavy 24-parameter emission tool with nested modal-specific branches, an output schema, and a side-effecting SEFAZ call, a two-sentence description is inadequate. An agent gets no help on which modal object to supply, required field interplay, or what the emission result looks like beyond the schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 24 parameters and only 42% schema description coverage, the description carries a real compensation burden, and it mentions no parameters at all (not modalidade, ufCarregamento, peso, Rodoviario, etc.). The schema does describe many nested fields, but the modal-dependent requirements (Rodoviario when modalidade=1) remain undisclosed in the description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (Emite) and resource (MDF-e), and clarifies the key semantic that it groups multiple CT-e/NF-e into one transport, which distinguishes it from cte_emitir and nfe_emitir. However, it never names those siblings or explicitly contrasts its role with them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The sentence 'Obrigatório para transportadores com vários DFs no mesmo veículo' gives an implied usage condition (multiple fiscal documents, one vehicle). There is no explicit when-to-use vs. alternative routing, no mention of prerequisites, and no exclusions, so guidance is only inferred.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.