プロトタイプ · プレビュー版:公式レジストリのすべてのサーバーを掲載し、30分ごとに同期しています。レビューとアカウント機能は今後のステップで始まります。
PopNx MCPAIを使う人のためのMCPサーバー · やさしい言葉で解説

Openfinance Br MCP

作者:brunoviccoバージョン 0.2.0i★ –iパソコンで動く
レジストリ名io.github.brunovicco/openfinance-br-mcp

インストール

概要

作者による説明(英語の原文)

Secure Open Finance Brasil MCP server with typed tools and a credential-free mock mode

PopNx MCPの3つの柱

この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。

できること

このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。

  • 接続方法: パソコンで動く
  • トランスポート: stdio
  • カテゴリ: 会計・財務・税務
  • 入力が必要なもの:REDIS_URL, ANTHROPIC_API_KEY

インストール

使っているAIアプリを選んで、設定をコピーしてください。

インストールの前に

  • 基本チェック:1項目中1項目に合格
  • あなたのパソコンで、あなたのユーザーと同じ権限(ファイル、ネットワーク、アプリ)で動きます。
  • 自分で入力するもの: ENVIRONMENT, CLIENT_ID, PRIVATE_KEY_PATH, PRIVATE_KEY_KID, MTLS_CERT_PATH, MTLS_KEY_PATH, REDIS_URL, ANTHROPIC_API_KEY

「秘密」と表示された値は、あなたのアカウントの鍵です。絶対に人に教えたり、チャットに貼り付けたりしないでください。

必要なもの

  • PyPIPythonのuvのインストール(uvxコマンドに必要)

どのアプリを使っていますか?

上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。

Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます

{
  "mcpServers": {
    "openfinance-br": {
      "command": "uvx",
      "args": [
        "openfinance-br-mcp"
      ],
      "env": {
        "ENVIRONMENT": "your-value",
        "CLIENT_ID": "your-value",
        "PRIVATE_KEY_PATH": "your-value",
        "PRIVATE_KEY_KID": "your-value",
        "MTLS_CERT_PATH": "your-value",
        "MTLS_KEY_PATH": "your-value",
        "REDIS_URL": "your-value",
        "ANTHROPIC_API_KEY": "your-value"
      }
    }
  }
}

ターミナルでこれを実行します

claude mcp add openfinance-br --env ENVIRONMENT=your-value --env CLIENT_ID=your-value --env PRIVATE_KEY_PATH=your-value --env PRIVATE_KEY_KID=your-value --env MTLS_CERT_PATH=your-value --env MTLS_KEY_PATH=your-value --env REDIS_URL=your-value --env ANTHROPIC_API_KEY=your-value -- uvx openfinance-br-mcp

動かす前に、空欄の値を入力してください。

Cursorで開く

または、設定を自分でコピーする

プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます

{
  "mcpServers": {
    "openfinance-br": {
      "command": "uvx",
      "args": [
        "openfinance-br-mcp"
      ],
      "env": {
        "ENVIRONMENT": "your-value",
        "CLIENT_ID": "your-value",
        "PRIVATE_KEY_PATH": "your-value",
        "PRIVATE_KEY_KID": "your-value",
        "MTLS_CERT_PATH": "your-value",
        "MTLS_KEY_PATH": "your-value",
        "REDIS_URL": "your-value",
        "ANTHROPIC_API_KEY": "your-value"
      }
    }
  }
}

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

VS Codeで開く

または、設定を自分でコピーする

プロジェクトの .vscode/mcp.json に貼り付けます

{
  "servers": {
    "openfinance-br": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "openfinance-br-mcp"
      ],
      "env": {
        "ENVIRONMENT": "your-value",
        "CLIENT_ID": "your-value",
        "PRIVATE_KEY_PATH": "your-value",
        "PRIVATE_KEY_KID": "your-value",
        "MTLS_CERT_PATH": "your-value",
        "MTLS_KEY_PATH": "your-value",
        "REDIS_URL": "your-value",
        "ANTHROPIC_API_KEY": "your-value"
      }
    }
  }
}

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。

選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。

自分で入力する値

  • ENVIRONMENT env
    'mock' (default, no credentials needed - runs entirely in-memory), 'sandbox', or 'production'
  • CLIENT_ID env
    Client ID registered with the participating institution. Required unless ENVIRONMENT=mock
  • PRIVATE_KEY_PATH env
    Path to the RSA private key used for private_key_jwt and JAR signing outside mock mode
  • PRIVATE_KEY_KID env
    Key ID matching the registered client JWKS entry outside mock mode
  • MTLS_CERT_PATH env
    Path to the client mTLS certificate used outside mock mode
  • MTLS_KEY_PATH env
    Path to the client mTLS private key used outside mock mode
  • REDIS_URL 秘密 env
    Optional Redis connection URL for persistent consent and token state
  • ANTHROPIC_API_KEY 秘密 env
    Required only when calling list_transactions with categorize=true (DSPy transaction categorization)

この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。

できること

パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。

基本チェックi

誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月7日にチェック

  • ✓ 合格

    作者とリポジトリが一致

    レジストリ名は、リポジトリを所有するGitHubアカウント brunovicco で確認済みです

  • … 未チェック

    今もメンテナンスされている

    このリポジトリはまだGitHubから読み取っていません

  • … 未チェック

    ライセンスがある

    このリポジトリはまだGitHubから読み取っていません

  • – 対象外

    エンドポイントが応答する

    これはパソコンで動くため、インターネット上のエンドポイントはありません

  • – 対象外

    OAuthでサインイン

    パソコンで動き、代わりにローカルの設定を使います

  • … 未チェック

    ツールの説明に隠れた指示がない

    パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです

会計・財務・税務のほかのサーバーとの比較i

  • このカテゴリのほかの2903件のうち0%よりスターが多い
  • このカテゴリのほかの2903件のうち21%より最近レジストリに公開
  • 基本チェックの結果が、このカテゴリのほかの2903件のうち100%と同じかそれ以上

レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。

よくある質問

Openfinance Br MCPは安全ですか?

当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。

どんなキーやコードが必要ですか?

入力が必要なもの:REDIS_URL, ANTHROPIC_API_KEY

パソコンで動きますか、それともクラウドですか?

あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。

今もメンテナンスされていますか?

GitHubリポジトリの最終更新は–、最新バージョン(0.2.0)がレジストリに届いたのは4 か月前です。

どのアプリで使えますか?

Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにPython (uv)も必要です。

代わりに使えるものは?

同じカテゴリには:Finance Toolkit, SolidInvoice, Korea Tax Calculator

代わりの候補

同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。

カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i

Finance Toolkit

作者:JerBouma

500+ transparent financial methods calculated from raw statements, not third-party endpoints.

パソコンでもクラウドでも★ 5,496MIT昨日更新
インストール

SolidInvoice

作者:SolidInvoice

Create and send invoices and quotes, manage clients, and track payments in SolidInvoice.

クラウドで動く★ 981MIT8 日前更新
インストール

作者のREADME

READMEを開く

作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。

English · Português

openfinance-br-mcp

Experimental MCP server for Open Finance Brasil, with a complete mock

environment and evolving FAPI-BR integration. It is not certified or

validated against real institutions; see VALIDATION.md

before using it outside environment=mock.


What it is

An MCP Server that abstracts away the complexity of Open Finance Brasil (FAPI 1.0 Advanced, OAuth2, consent, mTLS) and exposes simple tools to Claude:

Claude → "how much did I spend on food in March?"

Claude uses list_transactions(bank=nubank, categorize=true, date_from=2024-03-01) Claude → "You spent R$ 847.30 on food in March..."

Supported banks

The mock environment simulates Nubank, Sicoob, Caixa, Banco do Brasil, Bradesco, Itaú, Santander, XP, PicPay, and BTG Pactual with in-memory data and no network access. These are simulations, not certified integrations.

Real adapters and the Payments API journey are experimental and unvalidated. Payments use the v5 payments-consents/payments-pix Directory families, dedicated per-consent tokens, verified response JWS, PAR/JAR, consent-payload binding, and persistent idempotency. list_pix_keys is a demonstration extension rather than a standardized Open Finance Brasil endpoint. See VALIDATION.md for the exact scope.

Available MCP tools

The server exposes 18 tools grouped by journey:

  • Accounts: list_accounts, get_balance, list_transactions
  • Cards: list_credit_cards, get_credit_card_bills
  • Investments: list_investments, list_funds, list_variable_incomes, list_treasure_titles
  • PIX: list_pix_keys, initiate_pix
  • Data consent: start_consent, complete_consent, check_consent_status, revoke_consent
  • Payment consent: start_payment_consent, complete_payment_consent, check_payment_consent_status

It also exposes the openfinance://banks/ resource, the analyze_monthly_spending prompt, and optional URL elicitation when starting an authorization flow.

Quick start

Prerequisites
  • Python 3.12 or 3.13
  • uv installed
# Run the published release in credential-free mock mode

uvx --from openfinance-br-mcp==0.2.0 openfinance-mcp

From source
git clone https://github.com/brunovicco/openfinance-br-mcp.git

cd openfinance-br-mcp

Optional: needed only for sandbox/production or DSPy categorization

cp .env.example .env

Install dependencies

uv sync

Run the server

uv run openfinance-mcp

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{

"mcpServers": { "openfinance-br": { "command": "uvx", "args": ["--from", "openfinance-br-mcp==0.2.0", "openfinance-mcp"] } } }

Development

# Install with dev-dependencies

uv sync

Run the tests

uv run pytest tests/ -v

Lint and formatting

uv run ruff check src/ tests/ uv run black src/ tests/

Type check

uv run mypy src/

Containers and Kubernetes

docker compose up openfinance-mcp

docker compose --profile test up

The k8s/ directory contains a two-replica Streamable HTTP example with Redis-backed state. Replace every credential, signing-key, OAuth issuer, resource-server, and domain placeholder before applying it. The server fails closed when HTTP is exposed outside loopback without MCP client OAuth.

Architecture

Claude (MCP Client)

│ stdio or streamable-http ▼ openfinance-br-mcp (MCP Server) ├── Auth + Consent (FAPI-BR 2.2.0: private_key_jwt, PAR/JAR, PKCE, mTLS) ├── MCP Primitives (18 tools + 1 resource + 1 prompt) │ ├── Pydantic v2 input/output schemas │ ├── Optional URL elicitation for bank authorization │ └── Categorizer (DSPy + Claude for transaction classification) ├── Bank Adapters (10 banks - extensible) └── Directory Client (resolves real bank endpoints from the BCB Directory of Participants) │ HTTPS/mTLS ▼ Open Finance BR (BCB) - Directory of Participants │ ▼ Nubank · Sicoob · Caixa · + 100 participating institutions

Environment variables

VariableRequiredDescription
ENVIRONMENT❌mock (default, no credentials needed), sandbox, or production
CLIENT_ID⚠️ non-mockClient ID registered with the institution
PRIVATE_KEY_PATH⚠️ non-mockRSA private key for private_key_jwt/JAR signing
PRIVATE_KEY_KID⚠️ non-mockkid matching the registered client JWKS
MTLS_CERT_PATH⚠️ prodPath to the mTLS certificate
MTLS_KEY_PATH⚠️ prodmTLS private key
ANTHROPIC_API_KEY⚠️ DSPyRequired for categorize=true
REDIS_URL❌Shares TokenStore/ConsentManager state across replicas
MCP_TRANSPORT❌stdio (default) or streamable-http
MCP_HTTP_ALLOWED_ORIGINS⚠️ remote HTTPRequired allowlist for any non-loopback bind
LANGFUSE_OTLP_ENDPOINT❌Enables tracing to Langfuse (with LANGFUSE_PUBLIC_KEY/LANGFUSE_SECRET_KEY)
LOG_LEVEL❌INFO, DEBUG, WARNING (default: INFO)
LOG_FORMAT❌json or console (default: json)

See .env.example for the full list.

Documentation

  • Authorization - the two token universes and why they can never cross
  • Contributing - dev setup, CI checks, and adding an adapter
  • Security - scope, disclaimer, and vulnerability reporting
  • Sources - specifications and RFCs followed by the implementation
  • Validation - what has and has not been validated
  • Changelog - release history
  • Releasing - maintainer release procedure

License

MIT

PopNxに聞く