Belvo connects AI agents to financial and government records in Brazil and Mexico, enabling them to retrieve bank account balances, transactions, bills, investments, invoices, tax returns, tax compliance status, and employment records for personal finance analysis and financial planning.
Encrypted at rest, isolated from the model
Resolved from an AES-256-GCM vault at the moment of the call and attached to the request — the model never sees the secrets.
Try asking
Returns connect_url, the page where the user connects a product themselves. This tool does not create a connection: connecting happens only on that page, where the user signs in (or signs up), picks their institution, and grants consent directly to Belvo. The page collects any personal data the institution requires (such as CPF, CNPJ, full name, account or card numbers, or credentials); no tool on this server accepts that data, and the server refuses to create connections on the user's behalf. A connection completed there appears in list_connections. The same page is where connections are managed or removed. connection_type is echoed back; the page lists every product rather than opening a product-specific panel, and list_products returns the full country/product taxonomy.
List the user's connected banks and institutions with their status and last_synced_at. Auto-fetches connections up to the server cap unless cursor is provided; use next_cursor to continue when truncated. When the user has nothing connected yet, the response includes connect_url: the page where they connect a product themselves.
Fetch newer data from the institution for the resources it can retrieve live: Open Finance accounts, transactions, and owners; IMSS and INSS employment; Fiscal invoices, tax status, and the other fiscal resources that have a live retrieve. Open Finance bills and investments, and Mexico Fiscal tax returns, stay as of connection time. Date-ranged resources (transactions, invoices) use a rolling lookback up to today. A refresh can take several minutes. Returns 'completed' with refreshed_at; 'failed' with a reason and completed_resources naming any resources that did refresh before the failure; 'unavailable' when the institution does not support refresh, so the stored data is the latest available; 'skipped' with a reason and retry_after when a per-connection refresh limit was reached and nothing was fetched; or 'mfa_required' when the institution asks for a one-time code, which this server does not accept: resources refreshed before the challenge keep their new data, the rest stay as of the last sync, and the connection can be managed on the page from get_connection_link.
Brazil Open Finance: list accounts across the user's connections, including balance per account. Filter by connection_id, category, or currency. The response's last_synced_at is when the oldest returned account was collected from the institution. Auto-fetches matching stored accounts up to the server cap unless cursor is provided; use next_cursor to continue. Returns stored data as of the connection's last sync; refresh_connection fetches newer data. Only returns rows for connections created with connection_type='ofb'.
Brazil Open Finance: list account owners across the user's connections (name, contact info, and ID document types with numbers masked to the last 2 characters). Filter by connection_id. Returns stored data as of the connection's last sync; refresh_connection fetches newer data. Only returns rows for connections created with connection_type='ofb'.
Brazil Open Finance: list stored transactions. When start_date is omitted it defaults to 30 days before end_date (or before today when end_date is omitted or later). Filter by connection_id, account_id, category, type, and date range. Auto-fetches matching stored transactions up to the server cap unless cursor is provided; use next_cursor to continue. Returns data as of the connection's last sync (it does not reach the institution); refresh_connection fetches newer data. Only returns rows for connections created with connection_type='ofb'.
Brazil Open Finance: search stored transactions by description, amount, or merchant. Same filters as open_finance_list_transactions plus a free-text query. total_count is null when filters are applied (including the free-text query). Auto-fetches matches up to the server cap unless cursor is provided; use next_cursor to continue. Returns data as of the connection's last sync (it does not reach the institution); refresh_connection fetches newer data. Only returns rows for connections created with connection_type='ofb'.
Brazil Open Finance: list credit card bills. Filter by connection_id, account_id, and due-date range. total_count is null when filters are applied (account_id or a due-date range). Auto-fetches matching stored bills up to the server cap unless cursor is provided; use next_cursor to continue. Returns stored data as of connection time. refresh_connection does not retrieve bills. Only returns rows for connections created with connection_type='ofb'.
Brazil Open Finance: list the user's investment portfolio. Filter by connection_id and investment type (BANCARIA, CREDITO, VARIABLE, FUND, BOND). total_count is null when filters are applied (investment type). Auto-fetches matching stored investments up to the server cap unless cursor is provided; use next_cursor to continue. Returns stored data as of connection time. refresh_connection does not retrieve investments. Only returns rows for connections created with connection_type='ofb'.
Brazil INSS: list the user's stored employment records — employer history, occupations, and historical + current salary/contribution data per employer. Filter by connection_id. Auto-fetches records up to the server cap unless cursor is provided; use next_cursor to continue. Returns stored data as of the connection's last sync; refresh_connection fetches newer data. Only returns rows for connections created with connection_type='inss'.
Brazil INSS: list account owners for the user's INSS connections (name, contact info, and ID document types with numbers masked to the last 2 characters). Filter by connection_id. Returns stored data as of the connection's last sync; refresh_connection fetches newer data. Only returns rows for connections created with connection_type='inss'.
Mexico Llave MX: list the user's stored employment records (employer history, salaries, contributions). Filter by connection_id. Auto-fetches records up to the server cap unless cursor is provided; use next_cursor to continue. Returns stored data as of the connection's last sync; refresh_connection fetches newer data. Only returns rows for connections created with connection_type='imss'.
Mexico Llave MX: list the user's current employments (active employer, role, salary). Filter by connection_id. Auto-fetches records up to the server cap unless cursor is provided; use next_cursor to continue. Returns stored data as of the connection's last sync; refresh_connection fetches newer data. Only returns rows for connections created with connection_type='imss'.
Mexico Fiscal/SAT: list the user's stored fiscal invoices (CFDI — issued and received). Filter by connection_id. Auto-fetches invoices up to the server cap unless cursor is provided; use next_cursor to continue. Returns stored data as of the connection's last sync; refresh_connection fetches newer data. Only returns rows for connections created with connection_type='fiscal'.
Mexico Fiscal/SAT: list the user's stored tax returns (declaraciones). Filter by connection_id. Auto-fetches records up to the server cap unless cursor is provided; use next_cursor to continue. Returns stored data as of connection time. refresh_connection does not fetch newer tax returns, because the institution has no live retrieve for them. Only returns rows for connections created with connection_type='fiscal'.
Mexico Fiscal/SAT: list the user's stored tax status documents (Constancia de Situación Fiscal). Filter by connection_id. Auto-fetches records up to the server cap unless cursor is provided; use next_cursor to continue. Returns stored data as of the connection's last sync; refresh_connection fetches newer data. Only returns rows for connections created with connection_type='fiscal'.
Mexico Fiscal/SAT: list the user's stored tax compliance status documents (Opinión de Cumplimiento; outcome POSITIVE/NEGATIVE/NO_OBLIGATIONS). Filter by connection_id. Auto-fetches records up to the server cap unless cursor is provided; use next_cursor to continue. Returns stored data as of the connection's last sync; refresh_connection fetches newer data. Only returns rows for connections created with connection_type='fiscal'.
Mexico Fiscal/SAT: list the user's stored tax retentions (retenciones). Filter by connection_id. Auto-fetches records up to the server cap unless cursor is provided; use next_cursor to continue. Returns stored data as of the connection's last sync; refresh_connection fetches newer data. Only returns rows for connections created with connection_type='fiscal' (not served by the sandbox institution).
Mexico Fiscal/SAT: list the user's stored financial statements (estados financieros). Filter by connection_id. Auto-fetches records up to the server cap unless cursor is provided; use next_cursor to continue. Returns stored data as of the connection's last sync; refresh_connection fetches newer data. Only returns rows for connections created with connection_type='fiscal' (not served by the sandbox institution).
Describe the full country/product taxonomy this server supports: for each country and product, its connection_type (for use with `get_connection_link`), availability, and the data tools that operate on it.
One endpoint, the same key, whichever client you use.
~/Library/Application Support/Claude/claude_desktop_config.json (Mac) · %APPDATA%\Claude\claude_desktop_config.json (Windows)
Replace API_KEY with your own key.
Already have an "mcpServers" section in your config? Just add the server entry inside it.
Discovery, routing, credentials, tool scoping and execution logs all happen at the gateway→connections stay ACTIVE with no work from you
Belvo MCP runs through a gateway that holds the credentials, scopes the access and records every call.
Managed auth, hosted MCP servers, and every Belvo MCP tool your agent needs.
Free to start.