Skip to main content
Glama

opf-br-mcp

License: MIT npm

MCP server local que dá a agentes de codificação (Claude Code, GitHub Copilot) acesso token-eficiente às regras do Open Finance Brasil.

Domínios disponíveis

Domínio

Fonte

Conteúdo

pcm-additional-info

Confluence público OFB

Regras de obrigatoriedade do additionalInfo (PCM)

payments-v4-openapi

GitHub OpenBanking-Brasil/all-services-repo

Spec OpenAPI 4.1.0 da API de Pagamentos

payments-v5-openapi

GitHub OpenBanking-Brasil/all-services-repo

Spec OpenAPI 5.0.0 da API de Iniciação de Pagamentos (consentimentos + Pix)

payments-v5-business-rules

Confluence público OFB (Serviços - SV)

Regras de negócio da API de Pagamentos 5.0.0 (Escopo, Máquina de Estados, Diagrama de Sequência, Validação no DICT, Adaptações 4.0.1→5.0.0) — item por seção

enrollments-v2-openapi

GitHub OpenBanking-Brasil/all-services-repo

Spec OpenAPI 2.3.0 da API de Vínculo de Dispositivo (Enrollments, FIDO, Pix Automático)

enrollments-v2-business-rules

Confluence público OFB (Serviços - SV)

Regras de negócio do Vínculo de Dispositivo 2.2.0 (Máquina de estados, Edição do vínculo, FAQ - JSR) — item por seção

automatic-payments-v2-openapi

GitHub OpenBanking-Brasil/all-services-repo

Spec OpenAPI 2.2.0 da API de Pagamentos Automáticos (Pix Automático e Transferências Inteligentes)

automatic-payments-v2-business-rules

Confluence público OFB (Serviços - SV)

Regras de negócio de Pagamentos Automáticos 2.2.0 (Máquina de Estados, Edição do consentimento, Tentativas Intradia/Extradia, Adaptações 1.0.0→2.2.0) — item por seção

payments-common-rules

Confluence público OFB (Serviços - SV)

Conteúdo comum aos produtos de Iniciação de Pagamentos (atores, Idempotência, Como Assinar o Payload, Convenções de data/fuso, Polling) — item por seção

payments-implementation-guides

Confluence público OFB (Serviços - SV)

Guias de Implementação (Pix Automático, Agendamento Recorrente, Transferências Inteligentes, Liquidação de QR Codes) — item por seção

consents-v3-openapi

GitHub Pages openbanking-brasil.github.io

Spec OpenAPI 3.3.1 da API de Consentimentos (Dados Cadastrais e Transacionais)

resources-v3-openapi

GitHub Pages openbanking-brasil.github.io

Spec OpenAPI 3.1.0 da API de Recursos (GET /resources: status dos recursos compartilhados)

resources-v3-business-rules

Confluence público OFB (Dados - DC)

Regras de negócio da API de Recursos 3.1.0 (Informações Gerais, Orientações) — item por seção

accounts-v2-openapi

GitHub Pages openbanking-brasil.github.io

Spec OpenAPI 2.4.2 da API de Contas (listagem, saldos, transações, limites de cheque especial)

accounts-v2-business-rules

Confluence público OFB (Dados - DC)

Regras de negócio da API de Contas 2.4.2 (Informações Gerais, Orientações — contraparte/IN BCB nº 371) — item por seção

pcm-openapi

GitHub OpenBanking-Brasil/pcm-specs

Spec OpenAPI da PCM (reportes, hybrid-flow, opendata, consents/stock, credit-portabilities, payments/status)

pcm-business-rules

Confluence público OFB

Regras de negócio da PCM (Reporte, Processamento, Divergências, Especificação Técnica, Manual de Integração) — item por seção

jornada-otimizada

Confluence público OFB

Regras da Jornada Otimizada (Orientações Gerais, Transferências Inteligentes, Jornada sem Redirecionamento) — item por seção

mqd

Confluence público OFB

Motor de Qualidade de Dados (Especificação Técnica, Arquitetura, Documentação da API, Manual de Instalação, Endpoints Validados, FAQ, Troubleshooting) — item por seção

webhook-v1-openapi

GitHub OpenBanking-Brasil/all-services-repo

Spec OpenAPI 1.3.0 da API de Webhook (notificações de mudança de estado: pagamentos, enrollments, pagamentos automáticos)

seguranca

Confluence público OFB

Segurança do Open Finance Brasil (Perfil de Segurança, FAPI, DCR, CIBA, Padrão de Certificados, Assinaturas, Casos de Erro, Redirecionamento App-to-App, Glossário, Versionamento) — item por seção

requisitos-nao-funcionais

Confluence público OFB (Manual de APIs)

Requisitos não funcionais de todas as APIs (Desempenho, Disponibilidade, Timeout, Limites de tráfego, Limites operacionais, Indisponibilidade Programada) — item por seção

limites-por-endpoint

Confluence público OFB (Manual de APIs)

SLA (p95), timeout, TPM, TPS e limite operacional de cada endpoint de todas as famílias de API — um item por endpoint

participantes

Diretório OFB (data.directory.openbankingbrasil.org.br)

Organizações participantes, marcas (authorisation servers) e famílias de API suportadas com versões — um item por organização

portal

Confluence público OFB (busca ao vivo)

Busca CQL em todo o Portal do Desenvolvedor (espaço OF) — sem cache, query obrigatória; fallback quando os domínios específicos não cobrem o assunto

Related MCP server: ContextualAgentRulesHub

Tools

  • list_domains() — descoberta: domínios, filtros, versão da spec de origem e estado do cache

  • search(domain, query?, filters?, limit?, offset?) — busca filtrada, retorno compacto

  • get_item(domain, id) — registro completo

  • refresh(domain?) — força re-extração das fontes. Prefira passar domain: sem ele o server atualiza o que couber em 45s (o timeout padrão do cliente MCP é 60s) e devolve o restante em pendentes, para o agente retomar um a um

Fluxo recomendado para o agente: list_domainssearchget_item.

Qual versão estou usando?

list_domains devolve server: { name, version } junto do catálogo, então o agente descobre a versão do server na mesma chamada com que descobre os domínios. Cada domínio que embrulha uma spec traz também o seu specVersion.

Pela linha de comando:

npx opf-br-mcp --version

Domínios marcados como live (ex.: portal) consultam a fonte a cada chamada: não têm cache nem refresh, e search exige query. Quando um search em domínio comum retorna 0 resultados, a resposta inclui um hint sugerindo o portal.

Progressive disclosure (por que economiza contexto)

O problema que este servidor resolve: uma spec Swagger/OpenAPI inteira não cabe bem na janela de contexto de um agente, e despejá-la desperdiça tokens. A solução é revelação progressiva — o agente nunca recebe a spec completa de uma vez, apenas o mínimo necessário em cada etapa do funil:

  1. list_domains — catálogo barato: quais domínios e filtros existem. Os filtros idênticos a uma família inteira de domínios (os 9 *-openapi, os 12 de seções do Confluence) saem uma única vez em filterSets; cada domínio traz filterSet e só lista inline o que é próprio dele (em *-openapi, apenas path, cujo exemplo varia por API). Os filtros aceitos por um domínio são a união dos dois.

  2. search — índice pesquisável e resumido. Cada resultado traz só os campos leves (id, type, path, method, summary/name, required, in); o nó pesado da spec (detail) e a lista refs são removidos do resumo, e o retorno ainda é compactado (omite null e arrays vazios).

  3. get_item — só aqui o nó integral da spec é entregue, e apenas para o id que o agente escolheu.

Como o Swagger/OpenAPI vira dados pesquisáveis: o parser "achata" a spec em itens com id estável — um por endpoint (type: operation, ex. payments-v4:POST /pix/payments) e um por component reutilizável: type: schema (payments-v4:schema:PixPayment), type: response (webhook:response:202Webhook), type: parameter (webhook:parameter:xWebhookInteractionId) e type: header (payments:header:X-V). O JSON completo de cada nó fica retido em detail até um get_item explícito. Os ids não são adivinháveis: sempre vêm de um search. Assim o agente localiza o endpoint/schema certo pagando poucos tokens e só "paga" o payload integral quando pede um item nomeado.

Os $ref não são expandidos em linha (medimos 3–7x mais tokens por operação): em vez disso, o get_item de um item traz refs com os ids dos components que ele referencia — todos resolvíveis por get_item. Resolver responses.202.$ref: '#/components/responses/202Webhook' é uma chamada a mais, não uma ida ao YAML da fonte.

Dados: extraídos das fontes públicas na primeira consulta (lazy), cache em ~/.cache/opf-br-mcp/ com TTL de 72h. Sem rede, serve cache expirado com aviso.

Instalação

Requer Node >= 20. O servidor roda via npx, sem clone nem build.

Claude Code — .mcp.json na raiz do projeto consumidor:

{ "mcpServers": { "opf-br": { "command": "npx", "args": ["-y", "opf-br-mcp"] } } }

GitHub Copilot (VS Code) — .vscode/mcp.json:

{ "servers": { "opf-br": { "command": "npx", "args": ["-y", "opf-br-mcp"] } } }

Claude Desktop — claude_desktop_config.json (Settings → Developer → Edit Config):

{ "mcpServers": { "opf-br": { "command": "npx", "args": ["-y", "opf-br-mcp"] } } }

Windows

No Windows, o client não consegue executar npx diretamente (é o shim npx.cmd) e acaba abrindo um cmd.exe interativo, cujo banner (Microsoft Windows [Version ...]) vaza para o canal stdio e corrompe o protocolo JSON-RPC — o servidor falha na conexão com erros de JSON inválido. Envolva o comando em cmd /c para rodá-lo sem shell interativo:

{ "mcpServers": { "opf-br": { "command": "cmd", "args": ["/c", "npx", "-y", "opf-br-mcp"] } } }

Vale para qualquer client no Windows (Claude Desktop, Claude Code, VS Code) — ajuste apenas a chave externa (mcpServers ou servers).

Uso local (a partir do fonte)

git clone https://github.com/jrogeriosilva/opf-br-mcp.git && cd opf-br-mcp
npm install && npm run build

E aponte o client para o build local:

{ "mcpServers": { "opf-br": { "command": "node", "args": ["/caminho/para/opf-br-mcp/dist/index.js"] } } }

Adicionando um domínio novo

  1. Criar src/domains/<id>/index.ts exportando um objeto Domain (src/core/types.ts): extract() busca e estrutura os dados; search/getItem consultam; filters documenta os filtros.

  2. Registrar em src/core/registry.ts.

  3. Adicionar fixture e builder em test/contract.test.ts — a suíte de conformidade valida o contrato automaticamente.

Desenvolvimento

npm test           # vitest (fixtures locais, sem rede)
npm run typecheck  # tsc --noEmit
npm run build      # tsup → dist/
Install Server
A
license - permissive license
A
quality
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    An MCP server that provides tools for exploring large OpenAPI schemas without loading entire schemas into LLM context. Perfect for discovering and analyzing endpoints, data models, and API structure efficiently.
    9
    14
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    An MCP server giving coding agents context-window-aware code search and safe, atomic multi-file edits — built to cut token usage on large codebases without sacrificing correctness.
    3
    198
    5
    MIT
  • A
    license
    -
    quality
    B
    maintenance
    MCP Server for accessing 36 Brazilian public data sources and 1 agent, enabling AI agents to query government data on economy, legislation, transparency, judiciary, elections, environment, health, and more.
    MIT

View all related MCP servers

Related MCP Connectors

  • Agent-native MCP server over the public saagarpatel.dev corpus. Read-only, stateless.

  • MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.

  • Augments MCP Server - A comprehensive framework documentation provider for Claude Code

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/jrogeriosilva/opf-br-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server