World Monitor
Real-time global intelligence on conflict, markets, energy, trade, shipping and cyber. 102 tools.
MCP server for Brazilian e-invoicing: NF-e and NFC-e (modelo 55/65), schema 4.00, SEFAZ.
使っているAIアプリを選んで、設定をコピーしてください。
チェック 3/3 合格 · あなたのパソコンで動きます · ✓ コマンド確認済み 2026年11月13日
まず:どの AI を使っていますか?
使っているアプリを選ぶと、下に手順が表示されます。
Claude につなげますが、先に準備が必要です
MCP Nfe Br のキーが必要です(提供元のサイトで作成) · 先にパソコンへ Python (uv) を入れてください(1 回だけ) · パソコン版 Claude アプリ(Windows または Mac)のみ。Web やスマホでは使えません
提供元のサイトで登録し、次の手順で使う API キーを作ります。料金や無料プランは提供元のサイトで確認してください。
キーの取り方は下の提供元 README にあります
SettingsDeveloperEdit Config
{
"mcpServers": {
"nfe-br": {
"command": "uvx",
"args": [
"mcp-nfe-br"
],
"env": {
"BR_READ_ONLY": "your-value",
"BR_CTE_READ_ONLY": "your-value",
"LOG_LEVEL": "your-value"
}
}
}
}キーはアプリの入力欄にだけ貼り付け、チャットに貼ったり人に送ったりしないでください
MCP Nfe Br を使って、私に何ができるか教えて、1 つやってみせて✓ Claude が MCP Nfe Br を使っていると言うか、回答に MCP Nfe Br のツール名が出れば接続成功です
メニュー名は 2026年11月11日 に Anthropic のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります
ChatGPT はまだ MCP Nfe Br につなげません
MCP Nfe Br はパソコンに入れて使うものですが、ChatGPT は Web 上で動くサーバーにしかつなげません
A · MCP Nfe Br につなげるアプリを使う
B · その他 の中で ChatGPT につなげる別のサーバー
同じカテゴリでよく使われているものから、キーなしでアドレスだけでつなげるものを選びました
Claude Code につなげますが、先に準備が必要です
MCP Nfe Br のキーが必要です(提供元のサイトで作成) · 先にパソコンへ Python (uv) を入れてください(1 回だけ)
提供元のサイトで登録し、次の手順で使う API キーを作ります。料金や無料プランは提供元のサイトで確認してください。
キーの取り方は下の提供元 README にあります
Mac:Command+スペースで Terminal と入力 · Windows:PowerShell を開く
claude mcp add --scope user nfe-br --env BR_READ_ONLY=your-value --env BR_CTE_READ_ONLY=your-value --env LOG_LEVEL=your-value -- uvx mcp-nfe-brEnter の前に「your-value」を自分のキーに書き換えてください
キーはアプリの入力欄にだけ貼り付け、チャットに貼ったり人に送ったりしないでください
MCP Nfe Br が一覧にあり、接続済みと表示されれば OK です
MCP Nfe Br を使って、私に何ができるか教えて、1 つやってみせて✓ Claude Code が MCP Nfe Br を使っていると言うか、回答に MCP Nfe Br のツール名が出れば接続成功です
メニュー名は 2026年11月11日 に Anthropic のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります
Cursor につなげますが、先に準備が必要です
MCP Nfe Br のキーが必要です(提供元のサイトで作成) · 先にパソコンへ Python (uv) を入れてください(1 回だけ)
提供元のサイトで登録し、次の手順で使う API キーを作ります。料金や無料プランは提供元のサイトで確認してください。
キーの取り方は下の提供元 README にあります
MCP Nfe Br の設定で BR_READ_ONLY, BR_CTE_READ_ONLY, LOG_LEVEL が空です。自分のキーを入れて保存します
キーはアプリの入力欄にだけ貼り付け、チャットに貼ったり人に送ったりしないでください
MCP Nfe Br を使って、私に何ができるか教えて、1 つやってみせて✓ Cursor が MCP Nfe Br を使っていると言うか、回答に MCP Nfe Br のツール名が出れば接続成功です
メニュー名は 2026年11月11日 に Cursor のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります
VS Code につなげますが、先に準備が必要です
MCP Nfe Br のキーが必要です(提供元のサイトで作成) · 先にパソコンへ Python (uv) を入れてください(1 回だけ)
提供元のサイトで登録し、次の手順で使う API キーを作ります。料金や無料プランは提供元のサイトで確認してください。
キーの取り方は下の提供元 README にあります
MCP Nfe Br の設定で BR_READ_ONLY, BR_CTE_READ_ONLY, LOG_LEVEL が空です。自分のキーを入れて保存します
キーはアプリの入力欄にだけ貼り付け、チャットに貼ったり人に送ったりしないでください
MCP Nfe Br を使って、私に何ができるか教えて、1 つやってみせて✓ VS Code が MCP Nfe Br を使っていると言うか、回答に MCP Nfe Br のツール名が出れば接続成功です
メニュー名は 2026年11月11日 に VS Code のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります
Windsurf、Zed、Gemini CLI など MCP を使える他のアプリは追加方法がそれぞれ違います。アプリ一覧で確認してください
JSON 設定は下の「開発者向け」にあります
Claude Code
claude mcp add --scope user nfe-br --env BR_READ_ONLY=your-value --env BR_CTE_READ_ONLY=your-value --env LOG_LEVEL=your-value -- uvx mcp-nfe-brClaude Desktop (claude_desktop_config.json)
{
"mcpServers": {
"nfe-br": {
"command": "uvx",
"args": [
"mcp-nfe-br"
],
"env": {
"BR_READ_ONLY": "your-value",
"BR_CTE_READ_ONLY": "your-value",
"LOG_LEVEL": "your-value"
}
}
}
}Cursor (~/.cursor/mcp.json)
{
"mcpServers": {
"nfe-br": {
"command": "uvx",
"args": [
"mcp-nfe-br"
],
"env": {
"BR_READ_ONLY": "your-value",
"BR_CTE_READ_ONLY": "your-value",
"LOG_LEVEL": "your-value"
}
}
}
}VS Code (mcp.json)
{
"servers": {
"nfe-br": {
"type": "stdio",
"command": "uvx",
"args": [
"mcp-nfe-br"
],
"env": {
"BR_READ_ONLY": "your-value",
"BR_CTE_READ_ONLY": "your-value",
"LOG_LEVEL": "your-value"
}
}
}
}BR_READ_ONLY envBR_CTE_READ_ONLY envLOG_LEVEL envこの設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
このサーバーのつなぎ方と、各アプリの公式ドキュメントに基づきます。2026年11月10日に確認。
パソコン上で動かせるアプリ
ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月13日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント cmendezs で確認済みです
コードの最終更新:2 か月前
Apache-2.0を使用
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
質問、コツの共有、使えないことの報告ができます。「役に立った」の多い順です。
まだレビューはありません
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック3項目のうち3項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は2 か月前、最新バージョン(0.9.1)がレジストリに届いたのは2 か月前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにPython (uv)も必要です。
同じカテゴリには:World Monitor, Claude Flow, Windmill
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:↓ 週あたりのダウンロードi★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
Real-time global intelligence on conflict, markets, energy, trade, shipping and cyber. 102 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.
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
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