World Monitor
Real-time global intelligence on conflict, markets, energy, trade, shipping and cyber. 104 tools.
MCP server for Brazilian e-invoicing: NF-e and NFC-e (modelo 55/65), schema 4.00, SEFAZ.
Elige la app de IA que usas y copia la configuración.
Pasó 3/3 revisiones · Funciona en tu computadora
Primero: ¿qué IA usas?
Elige tu app y los pasos aparecen abajo.
Funciona con Claude, pero hay que preparar algo antes
Necesitas una clave de MCP Nfe Br (créala en el sitio del autor) · Instala Python (uv) en tu computadora primero (una sola vez) · Solo en la app de Claude para computadora (Windows o Mac), no en la web ni en el móvil
Una sola vez; sirve para todos los servidores que necesitan Python (uv)
Abre el sitio del autor, crea una cuenta y una clave de API para el siguiente paso. Consulta precios y planes gratis en su sitio.
Cómo obtener la clave está en el README del autor, más abajo
SettingsDeveloperEdit Config
Revisando los comandos · los botones de copiar aparecen cuando pasan la revisión
Pega la clave solo en el campo de la app; nunca en un chat ni se la envíes a nadie
Usa MCP Nfe Br y dime qué puedes hacer por mí; luego muéstrame una cosa✓ Si Claude dice que está usando MCP Nfe Br o muestra una herramienta de MCP Nfe Br en la respuesta, ya está conectado
Nombres de menú comprobados con la ayuda de Anthropic el 11 nov 2026 · tu pantalla puede variar un poco según la versión
ChatGPT todavía no puede conectar MCP Nfe Br
MCP Nfe Br se instala en tu computadora, pero ChatGPT solo conecta servidores que funcionan en la web
A · Usa una app que pueda conectar MCP Nfe Br
B · Otros en Otros que funcionan con ChatGPT
Elegidos entre los más usados de la misma categoría, solo los que se conectan con una dirección y sin clave
Funciona con Claude Code, pero hay que preparar algo antes
Necesitas una clave de MCP Nfe Br (créala en el sitio del autor) · Instala Python (uv) en tu computadora primero (una sola vez)
Una sola vez; sirve para todos los servidores que necesitan Python (uv)
Abre el sitio del autor, crea una cuenta y una clave de API para el siguiente paso. Consulta precios y planes gratis en su sitio.
Cómo obtener la clave está en el README del autor, más abajo
Mac: pulsa Command+Espacio y escribe Terminal · Windows: abre PowerShell
Revisando los comandos · los botones de copiar aparecen cuando pasan la revisión
Cambia “your-value” por tu clave antes de pulsar Enter
Pega la clave solo en el campo de la app; nunca en un chat ni se la envíes a nadie
Deberías ver MCP Nfe Br en la lista como conectado
Usa MCP Nfe Br y dime qué puedes hacer por mí; luego muéstrame una cosa✓ Si Claude Code dice que está usando MCP Nfe Br o muestra una herramienta de MCP Nfe Br en la respuesta, ya está conectado
Nombres de menú comprobados con la ayuda de Anthropic el 11 nov 2026 · tu pantalla puede variar un poco según la versión
Funciona con Cursor, pero hay que preparar algo antes
Necesitas una clave de MCP Nfe Br (créala en el sitio del autor) · Instala Python (uv) en tu computadora primero (una sola vez)
Una sola vez; sirve para todos los servidores que necesitan Python (uv)
Abre el sitio del autor, crea una cuenta y una clave de API para el siguiente paso. Consulta precios y planes gratis en su sitio.
Cómo obtener la clave está en el README del autor, más abajo
Revisando los comandos · los botones de copiar aparecen cuando pasan la revisión
En la configuración de MCP Nfe Br, BR_READ_ONLY, BR_CTE_READ_ONLY, LOG_LEVEL está vacío; añade tu clave y guarda
Pega la clave solo en el campo de la app; nunca en un chat ni se la envíes a nadie
Usa MCP Nfe Br y dime qué puedes hacer por mí; luego muéstrame una cosa✓ Si Cursor dice que está usando MCP Nfe Br o muestra una herramienta de MCP Nfe Br en la respuesta, ya está conectado
Nombres de menú comprobados con la ayuda de Cursor el 11 nov 2026 · tu pantalla puede variar un poco según la versión
Funciona con VS Code, pero hay que preparar algo antes
Necesitas una clave de MCP Nfe Br (créala en el sitio del autor) · Instala Python (uv) en tu computadora primero (una sola vez)
Una sola vez; sirve para todos los servidores que necesitan Python (uv)
Abre el sitio del autor, crea una cuenta y una clave de API para el siguiente paso. Consulta precios y planes gratis en su sitio.
Cómo obtener la clave está en el README del autor, más abajo
Revisando los comandos · los botones de copiar aparecen cuando pasan la revisión
En la configuración de MCP Nfe Br, BR_READ_ONLY, BR_CTE_READ_ONLY, LOG_LEVEL está vacío; añade tu clave y guarda
Pega la clave solo en el campo de la app; nunca en un chat ni se la envíes a nadie
Usa MCP Nfe Br y dime qué puedes hacer por mí; luego muéstrame una cosa✓ Si VS Code dice que está usando MCP Nfe Br o muestra una herramienta de MCP Nfe Br en la respuesta, ya está conectado
Nombres de menú comprobados con la ayuda de VS Code el 11 nov 2026 · tu pantalla puede variar un poco según la versión
Otras apps que usan MCP, como Windsurf, Zed o Gemini CLI, añaden servidores de forma distinta. Míralo en la lista de apps
Ver todas las apps que usan MCP →
La configuración JSON está en “Para desarrolladores”, abajo
Claude Code
Revisando los comandos · los botones de copiar aparecen cuando pasan la revisión
Claude Desktop (claude_desktop_config.json)
Revisando los comandos · los botones de copiar aparecen cuando pasan la revisión
Cursor (~/.cursor/mcp.json)
Revisando los comandos · los botones de copiar aparecen cuando pasan la revisión
VS Code (mcp.json)
Revisando los comandos · los botones de copiar aparecen cuando pasan la revisión
BR_READ_ONLY envBR_CTE_READ_ONLY envLOG_LEVEL envEsta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
Según cómo se conecta este servidor y la documentación de cada app, comprobado el 10 nov 2026.
Se ejecutan en tu computadora en
ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast
Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 13 nov 2026
El nombre en el registro se verificó con la cuenta de GitHub cmendezs, dueña del repo
Último cambio de código: hace 2 meses
Usa Apache-2.0
Este se ejecuta en tu computadora; no hay endpoint en internet
Se ejecuta en tu computadora y usa ajustes locales en su lugar
Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet
Pregunta, comparte un consejo o avisa de que no funciona. Ordenado por lo que la gente marcó como útil.
Aún no hay publicaciones. Sé la primera persona en preguntar o compartir.
Lo publicado aquí lo escriben usuarios, no el equipo de PopNx.
Aún no hay reseñas
Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.
Superó 3 de 3 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.
El registro no indica ninguna clave obligatoria, aunque algunos servidores te piden iniciar sesión la primera vez que los usas.
Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).
El repo de GitHub cambió por última vez hace 2 meses, y la última versión (0.9.1) llegó al registro hace 2 meses.
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Python (uv) en tu computadora.
En la misma categoría: World Monitor, Claude Flow, Windmill
Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.
Cómo leer una tarjeta:↓ Descargas por semanai★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi
Real-time global intelligence on conflict, markets, energy, trade, shipping and cyber. 104 tools.
AI orchestration with hive-mind swarms, neural networks, and 87 MCP tools for enterprise dev.
Run Windmill scripts and flows and manage jobs, schedules, resources and variables.
Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.
mcp-nfe-br is an MCP (Model Context Protocol) server providing tools for issuing and validating Brazilian electronic fiscal documents: NF-e (modelo 55), NFC-e (modelo 65), NFS-e Nacional (ADN), and CT-e (modelo 57). This server is part of the mcp-einvoicing-* / mcp-*-* family, built on mcp-einvoicing-core, which provides the base data model, HTTP/OAuth2 utilities, and shared MCP server infrastructure.
Current status (v0.6.5): NF-e/NFC-e (modelo 55/65, schema 4.00) and NFS-e Nacional (ADN, schema v1.01) generation, ICP-Brasil signing, XSD validation, and gated SEFAZ/ADN submission are implemented. NF-e/NFC-e now also covers the 010e_v.1.02 schema delta (DANFE Simplificado Tipo 2 — tpImp=6, cIndOp, ISUFEmit, and the SEFAZ alert-message response group) and the 010f_v.1.04 delta (NT 2026.007 — emit/IE optional for taxpayers exclusively subject to IBS/CBS, produção 2026-11-03) on top of the PL_010d base. CT-e (modelo 57) generation/signing/validation and SEFAZ event submission (cancelamento, Carta de Correção) were added starting v0.6.0 — v1 scope is intentionally narrow: modal rodoviário only, ICMS CST 00 only, and no bundled/verified CT-e webservice endpoint table (every SEFAZ CT-e call requires an explicit endpoint_override). See the "CT-e (modelo 57)" tools section below for the full field-level reference.
mcp-einvoicing-core (installed automatically as a dependency)uv (recommended)uv add mcp-nfe-br
pippip install mcp-nfe-br
git clone https://github.com/cmendezs/mcp-nfe-br.git
cd mcp-nfe-br uv sync --all-extras
This server needs no credentials to run. The environment variables below are optional safety/logging toggles:
| Variable | Description | Default |
|---|---|---|
BR_READ_ONLY | Master switch. Set to 1 to disable write tools across all sub-formats: NF-e/NFC-e (br__submit_nfe, br__distribute_dfe), NFS-e (br__submit_nfse, br__cancel_nfse), and CT-e (br__submit_cte, br__cancel_cte, br__correct_cte). Safe mode for exploration. The SEFAZ environment (production/homologation) is selected per call via the tp_amb argument. | — |
BR_CTE_READ_ONLY | Set to 1 to disable *only* the CT-e write tools (br__submit_cte, br__cancel_cte, br__correct_cte), leaving NF-e/NFS-e writes enabled. Independent of BR_READ_ONLY — either variable set to 1 is sufficient to block CT-e writes; you do not need both. | — |
LOG_LEVEL | Log level: DEBUG, INFO, WARNING, ERROR | INFO |
To use this server with Claude, add this configuration to your claude_desktop_config.json file:
{
"mcpServers": { "nfe-br": { "command": "uvx", "args": ["mcp-nfe-br"] } } }
For a local development install:
{
"mcpServers": { "nfe-br": { "command": "uv", "args": ["run", "mcp-nfe-br"], "cwd": "/path/to/mcp-nfe-br" } } }
Cursor supports MCP servers via stdio. Add the configuration in:
~/.cursor/mcp.json.cursor/mcp.json{
"mcpServers": { "nfe-br": { "command": "uvx", "args": ["mcp-nfe-br"] } } }
Reload the Cursor window (Ctrl+Shift+P then *Reload Window*) to apply the changes.
Kiro supports MCP servers via its dedicated configuration file. Two levels are available:
~/.kiro/settings/mcp.json.kiro/settings/mcp.json{
"mcpServers": { "nfe-br": { "command": "uvx", "args": ["mcp-nfe-br"], "disabled": false, "autoApprove": [] } } }
The file is automatically reloaded on save. You can also open the config via the command palette (Cmd+Shift+P / Ctrl+Shift+P) then *MCP*.
br__validate_cpfValidates a CPF (Cadastro de Pessoas Físicas), the individual taxpayer identification number, using the Receita Federal modulo 11 algorithm.
| Parameter | Type | Required | Description |
|---|---|---|---|
cpf | string | yes | CPF with or without ./- separators |
Returns a TaxIdValidationResult with valid=True and the cleaned value (11 digits) on success, or valid=False with an error message in Portuguese.
br__validate_cnpjValidates a CNPJ (Cadastro Nacional da Pessoa Jurídica), the business taxpayer identification number. Accepts both the traditional numeric format (14 digits) and the alphanumeric format introduced by NT 2026.004 (PL_010d), effective in homologation from 2026-06-01 and in production from 2026-07-01.
| Parameter | Type | Required | Description |
|---|---|---|---|
cnpj | string | yes | CNPJ with or without .///- separators |
Returns a TaxIdValidationResult with valid=True and the cleaned value (14 characters) on success, or valid=False with an error message in Portuguese.
⚠️ [Unverified]: the check-digit algorithm for the alphanumeric CNPJ format was implemented based on secondary sources, as the primary source ("NT Conjunta DFe 2025.001") is not yet available locally.
br__generate_nfeGenerates an unsigned NF-e/NFC-e 4.00 document ( … ) from a BRInvoice object.
| Parameter | Type | Required | Description |
|---|---|---|---|
invoice | object | yes | BRInvoice document (modelo 55 or 65, groups ide/emit/dest/det/total/transp/pag) |
Returns {"xml": ..., "chave_acesso": ..., "warnings": [...]}. The warnings in Portuguese remind that the document is not signed (ICP-Brasil) and was not transmitted to SEFAZ. Both steps are the responsibility of a separate process.
Phase 1 coverage for per-item tax groups:
| Tax | Supported codes | Behavior |
|---|---|---|
| ICMS | CST 00 (normal regime) or CSOSN 102 (Simples Nacional) | other codes raise DocumentGenerationError |
| PIS/COFINS | CST 01/02 (rate-based) or 04-09 (non-taxed) | group omitted if pis_cst/cofins_cst are None |
| IPI | CST 00/49/50/99 (taxed) or other (non-taxed) | group omitted if ipi_cst is None |
[NEED: IBS/CBS/Imposto Seletivo — Grupo UB/W03 (NT 2025.002-RTC) not yet modeled].
br__validate_nfe_xmlValidates an NF-e/NFC-e 4.00 XML document against the official PL_010d XSD, patched with the PL_010e_v.1.02 and PL_010f_v.1.04 deltas (local "unsigned" variant, see note below).
| Parameter | Type | Required | Description |
|---|---|---|---|
xml_content | string | no* | XML as a string |
xml_base64 | string | no* | Base64-encoded XML |
\* Exactly one of xml_content/xml_base64 must be provided.
Returns {"valid": bool, "errors": [...], "metadata": {"schema_version": ...}}.
[Inference]: the official XSD (
nfe_v4.00.xsd/leiauteNFe_v4.00.xsd, PL_010d) requiresas a mandatory child of. Since Phase 1 generates unsigned documents, this tool validates against a local derived copy (nfe_v4.00_unsigned.xsd) wherehas been made optional (minOccurs="0"). Validation of signed documents (future phase) should use the official XSD without modifications.
br__build_access_keyBuilds an access key (chNFe, 44 characters) with a modulo 11 check digit, from the components cUF, dhEmi, issuer CNPJ, model, series, and document number.
| Parameter | Type | Required | Description |
|---|---|---|---|
c_uf | string | yes | IBGE state code (2 digits) |
dh_emi | string | yes | Issue date/time (ISO 8601) |
cnpj | string | yes | Issuer CNPJ (numeric or alphanumeric PL_010d) |
modelo | string | yes | 55 (NF-e) or 65 (NFC-e) |
serie | string | yes | Document series |
nnf | string | yes | Document number |
tp_emis | string | no | Issuance type (default "1") |
c_nf | string | no | Random numeric code (cNF, 8 digits); auto-generated if omitted |
Returns {"chave_acesso": ..., "cnf": ...}.
CT-e (Conhecimento de Transporte Eletrônico) coverage started at v0.6.0. v1 scope is intentionally narrow: modal rodoviário only (other modais raise an error), ICMS CST 00 (tributação normal) only, and no bundled/verified SEFAZ CT-e endpoint table — every SEFAZ call below requires an explicit endpoint_override. Since v0.7.0, br__generate_cte also accepts the Reforma Tributária do Consumo (IBS/CBS) fields introduced by NT 2026.002 — imp/IBSCBS, emit/ISUFEmit, and ide/tpPagAnt+gPagAntecipado — with the NT's self-contained business rules enforced at the model layer; rules that require a live SEFAZ database lookup are not checked.
br__generate_cteGenerates an unsigned CT-e 4.00 document ( … ) from a BRCTeDocument object.
| Parameter | Type | Required | Description |
|---|---|---|---|
cte | object | yes | BRCTeDocument (modelo 57, modal rodoviário, ICMS CST 00) |
Returns {"xml": ..., "chave_acesso": ..., "warnings": [...]}.
br__validate_cte_xmlValidates a CT-e 4.00 XML document against the bundled PL_CTe_400 XSD (auto-selects the unsigned or official signed schema based on presence).
| Parameter | Type | Required | Description |
|---|---|---|---|
xml_content | string | no* | XML as a string |
xml_base64 | string | no* | Base64-encoded XML |
\* Exactly one of xml_content/xml_base64 must be provided.
br__consult_cte_sefaz_statusChecks SEFAZ CT-e webservice availability (CTeStatusServicoV4). Read-only, no confirmation required.
br__consult_cteQueries a CT-e's status by access key (CTeConsultaV4). Read-only, no confirmation required — it queries one already-known document, not a bulk data pull.
br__submit_cteSubmits a signed CT-e to SEFAZ authorization (CTeRecepcaoSincV4, synchronous). The payload is automatically GZip-compressed and Base64-encoded before transmission, per the CT-e MOC. Gated with a two-step confirmation (ConfirmationGate) and BR_CTE_READ_ONLY.
br__cancel_cteRequests cancellation of an authorized CT-e (event 110111, CTeRecepcaoEventoV4). cStat=135 indicates the cancellation was homologated. Gated.
br__correct_cteIssues a Carta de Correção Eletrônica (event 110110, CTeRecepcaoEventoV4). Per Art. 58-B of CONVÊNIO/SINIEF 06/89, a CC-e cannot alter tax values, party registration data, or the issue/departure date. Gated.
Not yet implemented: br__distribute_cte_dfe (CTeDistribuicaoDFe) — the bundled specification confirms the request payload shape but not the webservice's method name, WSDL namespace, or message-wrapper element.
mcp-nfe-br/
├── src/ │ └── mcp_nfe_br/ │ ├── init.py │ ├── server.py # MCP entry point and tool registration │ ├── models/ │ │ ├── init.py │ │ └── invoice.py # BRInvoice, BRInvoiceLine, NFeModelo, TipoOperacao │ ├── standards/ │ │ ├── init.py │ │ └── nfe_generator.py # NFeGenerator — generates unsigned NF-e/NFC-e 4.00 │ ├── validator