openfinance-br-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| CLIENT_ID | Yes | Client ID registrado na IF | |
| LOG_LEVEL | No | INFO, DEBUG, WARNING (padrão: INFO) | INFO |
| LOG_FORMAT | No | json ou console (padrão: json) | json |
| CLIENT_SECRET | Yes | Client secret | |
| MTLS_KEY_PATH | No | Chave privada mTLS (requerido em produção) | |
| MTLS_CERT_PATH | No | Caminho do certificado mTLS (requerido em produção) | |
| ANTHROPIC_API_KEY | No | Necessário para categorização DSPy (categorize=true) |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_accountsA | Lists all bank accounts (checking, savings, prepaid) of a user at an institution participating in Open Finance Brasil. Args: subject_id: User's CPF (digits only) or internal ID. bank: Identifier of the participating bank. ctx: MCP request context, providing access to shared adapters. Returns: The user's accounts at the given bank. |
| get_balanceA | Returns the available, blocked, and automatically invested balance of a specific bank account on Open Finance Brasil. Args: subject_id: User's CPF. bank: Identifier of the participating bank. account_id: Account ID returned by list_accounts. ctx: MCP request context, providing access to shared adapters. Returns: The account's current balance. |
| list_transactionsA | Returns the bank statement of an account on Open Finance Brasil with date and type filters. Supports automatic transaction categorization via AI (categorize=true, requires ANTHROPIC_API_KEY). Args: subject_id: User's CPF. bank: Identifier of the participating bank. account_id: Account ID returned by list_accounts. ctx: MCP request context, providing access to shared adapters and the categorizer. date_from: Start date of the period. date_to: End date of the period. credit_debit_type: Restrict to credits or debits only. page: Page number (1-based). page_size: Records per page (1-1000). categorize: If true, categorizes each transaction via AI. Returns: The account's transactions for the requested period. |
| list_credit_cardsA | Lists all credit card accounts of a user at an institution participating in Open Finance Brasil, including available and total credit limit. Args: subject_id: User's CPF. bank: Identifier of the participating bank. ctx: MCP request context, providing access to shared adapters. Returns: The user's credit card accounts at the given bank. |
| get_credit_card_billsA | Returns the bills (open and past) of a credit card via Open Finance Brasil, including total amount, minimum payment, and due date. Args: subject_id: User's CPF. bank: Identifier of the participating bank. credit_card_account_id: ID returned by list_credit_cards. ctx: MCP request context, providing access to shared adapters. Returns: The bills of the given credit card account. |
| list_pix_keysA | Lists the PIX keys (CPF, email, phone, EVP) registered to a bank account via Open Finance Brasil. Only available in environment='mock' - see module docstring. Args: subject_id: User's CPF. bank: Identifier of the participating bank. account_id: Account ID. ctx: MCP request context, providing access to shared adapters. Returns: The PIX keys registered to the given account. |
| initiate_pixA | Initiates a PIX payment via Open Finance Brasil. Requires an active payment consent. The idempotency_key field prevents duplicate charges on retries. Outside Args:
subject_id: Payer's CPF.
bank: Identifier of the participating bank.
amount: Canonical amount in BRL (e.g. Returns: Status of the initiated (or previously cached) payment. |
| list_investmentsA | Lists a user's bank fixed-income investments (CDB, LCI, LCA, RDB) via Open Finance Brasil Fase 4, including gross amount, net amount, contracted rate, and indexer. Args: subject_id: User's CPF. bank: Participating bank. ctx: MCP request context, providing access to shared adapters. Returns: The user's fixed-income investments and aggregate totals. |
| list_fundsA | Lists a user's investment fund positions via Open Finance Brasil Fase 4 (P1.3), including quota quantity/price and gross/net amount. Args: subject_id: User's CPF. bank: Participating bank. ctx: MCP request context, providing access to shared adapters. Returns: The user's investment funds and aggregate totals. |
| list_variable_incomesA | Lists a user's variable income asset positions (stocks, ETFs, and other exchange-traded assets) via Open Finance Brasil Fase 4 (P1.3), including quantity, closing price, and gross amount. No net_amount is returned here (unlike list_investments/list_funds/ list_treasure_titles): the real Variable Incomes spec's balance data only publishes a gross amount - taxes/fees on these assets are reported per-transaction (broker notes), not as a running net position. Args: subject_id: User's CPF. bank: Participating bank. ctx: MCP request context, providing access to shared adapters. Returns: The user's variable income assets and an aggregate gross total. |
| list_treasure_titlesA | Lists a user's treasury bond (Tesouro Direto) positions via Open Finance Brasil Fase 4 (P1.3), including quantity, updated unit price, and gross/net amount. Args: subject_id: User's CPF. bank: Participating bank. ctx: MCP request context, providing access to shared adapters. Returns: The user's treasury bonds and aggregate totals. |
| start_consentA | Starts the Open Finance Brasil consent flow for a user at a bank. Creates a consent resource at the bank, then builds a FAPI-BR
compliant (PAR + JAR) authorization URL. The user must open this
URL in a browser, log in, and authorize the requested scopes at
the bank. Once redirected back, call Args: subject_id: User's CPF (digits only) or internal ID. bank: Identifier of the participating bank. scopes: Desired data-sharing scopes, e.g. ['accounts', 'balances', 'transactions', 'overdraft_limits', 'credit_card_accounts', 'credit_card_limits', 'credit_card_bills', 'credit_card_transactions', 'bank_fixed_incomes', 'funds', 'variable_incomes', 'treasure_titles']. Does NOT include 'pix'/payments - payment initiation uses a separate, dedicated payment consent (Payments API), not this data-sharing consent; see tools/pix.py. ctx: MCP request context, providing access to shared dependencies. request_url_elicitation: Ask a compatible MCP client to open the bank authorization URL using URL-mode elicitation. The URL is always returned as well, so clients without elicitation support can continue with the existing copy-and-open flow. Returns: The consent ID and the URL the user must open to authorize it. |
| complete_consentA | Completes a consent flow using the URL the bank redirected the user to after they finished logging in and authorizing. Because FAPI-BR mandates response_mode=fragment, that URL's parameters live after a '#', not a '?' - copy the complete address bar contents after being redirected, not just the query string. Args: callback_url: The full URL the user's browser landed on after authorizing (or denying) consent at the bank. ctx: MCP request context, providing access to shared dependencies. Returns: The final consent status after completing the exchange. |
| check_consent_statusA | Checks the current status of a user's consent at a bank. Args: subject_id: User's CPF or internal ID. bank: Identifier of the participating bank. ctx: MCP request context, providing access to shared dependencies. Returns: The consent's current status. |
| revoke_consentA | Revokes a user's consent at a bank and forgets the local token. Args: subject_id: User's CPF or internal ID. bank: Identifier of the participating bank. ctx: MCP request context, providing access to shared dependencies. Returns: Confirmation that the consent was revoked. |
| start_payment_consentA | Starts the Open Finance Brasil Payments API consent flow for one specific PIX payment. Creates a payment consent describing exactly this payment, then
builds a FAPI-BR compliant (PAR + JAR) authorization URL. The user
must open this URL, log in, and authorize this specific payment at
the bank. Once redirected back, call Args: subject_id: Payer's CPF (digits only) or internal ID. bank: Identifier of the participating bank. amount: Payment amount in BRL (e.g. '150.00'). creditor_key: PIX key of the recipient. creditor_key_type: Type of the recipient's key. debtor_account_id: ID of the account to debit. ctx: MCP request context, providing access to shared dependencies. description: Payment description/reason (max 140 chars). request_url_elicitation: Ask a compatible MCP client to open the bank authorization URL using URL-mode elicitation. The URL is still returned for clients that use the manual flow. Returns: The payment consent ID and the URL the user must open to authorize it. |
| complete_payment_consentA | Completes a payment consent flow using the URL the bank redirected the user to after authorizing (or denying) the payment. Args: callback_url: The full URL the user's browser landed on after authorizing (or denying) the payment consent at the bank. ctx: MCP request context, providing access to shared dependencies. Returns: The final payment consent status after completing the exchange. |
| check_payment_consent_statusA | Checks the current status of an exact payment consent journey. Args: subject_id: Payer's CPF or internal ID. bank: Identifier of the participating bank. consent_id: Exact payment consent journey to query. ctx: MCP request context, providing access to shared dependencies. Returns: The payment consent's current status. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| analyze_monthly_spending | Guide the model through a categorized transaction analysis for a bank and date range. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| supported_banks | Banks known by the server and how availability is determined in the current environment. |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/brunovicco/openfinance-br-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server