// documento fiscal como ferramenta de agente
Rejeição chega tarde, custa uma transmissão e vem com mensagem críptica. Boa parte dos motivos é aritmética simples ou campo fora de formato — dá para pegar antes, na sua máquina. Sem certificado, sem cadastro, sem enviar nada para lugar nenhum.
# instala, com a validação por schema XSD oficial pip install "fiscal-mcp[xsd]" # valida — NF-e ou NFS-e, ele descobre sozinho fiscal-mcp validar nota.xml [erro] ibs-cclasstrib-prefixo-cst cClassTrib não corresponde ao CST do item item 2: imposto/IBSCBS/cClassTrib = '000123' não começa por imposto/IBSCBS/CST = '200' → Os três primeiros dígitos do cClassTrib são o CST do item. É o erro mais comum ao ligar o módulo de IBS/CBS num ERP. [erro] schema-elemento-fora-de-ordem cEAN apareceu onde o leiaute espera xProd item 1, linha 62 do XML → O schema da NF-e exige a sequência exata do leiaute — trocar a ordem reprova mesmo com todos os campos presentes. 2 erro(s), 0 aviso(s)
Sai com código 1 quando encontra erro, então serve direto no seu CI. E como servidor MCP, o agente passa a conseguir ler nota fiscal:
pip install "fiscal-mcp[servidor,xsd]"
// no cliente MCP
{ "mcpServers": { "fiscal": { "command": "fiscal-mcp-servidor" } } }
Aí é só perguntar: "esse XML está pronto para transmitir?"
| ferramenta | o que faz |
|---|---|
validar_nfe | schema XSD oficial, regras fiscais (IBS/CBS incluso), totais e chave — com o que fazer em cada achado |
validar_nfse | NFS-e do padrão nacional: estrutura, DPS embutida, prestador, serviço |
explicar_nfeexplicar_nfse | resumo estruturado, em vez do XML inteiro estourando o contexto |
explicar_rejeicao | código da SEFAZ → significado → ação, e se é reversível |
validar_chave_acessovalidar_chave_nfse | decompõe 44 ou 50 dígitos e confere o que dá para conferir |
Nenhuma delas assina, transmite, emite ou cancela documento. Não existe caminho, nesta versão, para causar efeito fiscal — e um teste verifica isso a cada mudança.
[xsd]. Sem ele, o laudo diz que essa camada não
rodou — nunca finge que rodou.O buraco maior é conhecido e está escrito acima: a NF-e nunca foi testada contra uma nota real. Isso não se resolve escrevendo mais código — se resolve com documento de verdade na mão.
Regras são dados, não código: absorver uma nota técnica é editar um YAML. Contribuir não exige entender o projeto inteiro — só conhecer o golpe que a SEFAZ aplicou em você.
// e se você mantém integração fiscal
Estou conversando com quem mantém integração fiscal para entender onde dói mais — nota técnica, homologação, cobertura municipal. Se você vive isso, quero ouvir. São 15 minutos e não é pitch.