About mcp-itau
mcp-itau is an MCP server for Itaú Unibanco covering Pix, boleto, bill payments and statements, authenticated with OAuth2 and mTLS. It is an alpha release, and several endpoint paths are not yet verified against the official specification.
Key features
- 01Pix sending, QR charges and DICT key management
- 02Boleto issuance, lookup, PDF download and cancellation
- 03Bill payments, TED and account transfers
- 04Cached OAuth2 client_credentials bearer tokens
- 05mTLS client certificate authentication
- 06Sandbox and production environment switch
Use cases
- 01Merchants issuing Pix charges or refunds from an MCP client
- 02Reviewing account statements and managing boleto status
- 03Giving an agent tools for scheduled payments and bill settlement
MCP support
This project is an MCP server that exposes 22 banking tools to MCP clients.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
npx -y @codespar/mcp-itauITAU_CLIENT_IDItaú OAuth client_id issued via the Developer Portal after contract onboarding.ITAU_CLIENT_SECRETSecretItaú OAuth client_secret.ITAU_CERT_PATHAbsolute path to the mTLS client certificate (.crt or .pem). BACEN mandates mTLS for Pix v2.ITAU_KEY_PATHSecretAbsolute path to the mTLS private key (.key or .pem).ITAU_ENVEnvironment: 'sandbox' or 'production'. Defaults to 'sandbox'.Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.
Tools
22Saved tool list · updated 2w ago
This tool takes no parameters.
Details
From the project README@codespar/mcp-itau
MCP server for Itaú Unibanco — Brazil's largest private bank.
Itaú operates the largest private-bank API surface in the country. Merchants running high-volume Pix, boleto, and cash-management workloads integrate directly instead of going through a PSP.
Status: alpha (0.1.0-alpha.1)
Itaú's Developer Portal is contract-gated — the full OpenAPI specs for Pix, Cobrança, Arrecadação, and Extrato are only visible to onboarded merchants. The endpoint paths in this server are best-guesses based on (a) BACEN Pix v2 standard paths, (b) Itaú's public marketing pages, and (c) conventions shared across Santander / Bradesco / BB. Every unverified path is flagged TODO(verify) in the source.
Pin to exact versions during 0.1.x; paths will be corrected to match the portal spec once an onboarded merchant can validate.
Tools (22)
| Tool | Purpose |
|---|---|
get_oauth_token | Mint or return a cached OAuth2 client_credentials bearer token for the Itaú Developer Portal. |
send_pix | Initiate an outbound Pix payment from the merchant's Itaú account. |
create_pix_qr | Create a dynamic Pix charge with QR code (cob). |
get_pix | Retrieve a Pix transaction by its BCB endToEndId (E). |
resolve_dict_key | Resolve a DICT key (CPF, CNPJ, email, phone, EVP) to the owner's account data before sending a Pix. |
refund_pix | Refund (devolução) a previously received Pix. |
create_boleto | Issue a boleto via Itaú Cobrança. |
get_boleto | Retrieve a boleto by its Itaú identifier (id or nosso_numero). |
cancel_boleto | Cancel (baixa) an outstanding boleto before payment. |
get_statement | Retrieve account statement transactions for a given period. |
arrecadacao_pay | Pay a utility, tax, or concessionária bill via Itaú Arrecadação. |
create_pix_cobv | Create a Pix charge with due date (cobv) — used for boleto-like Pix where the payer can pay at or after a d... |
list_pix_charges | List immediate Pix charges (cob) registered by the merchant within a date range. |
register_pix_key | Register a DICT key (CPF, CNPJ, email, phone, or EVP) on an Itaú account owned by the merchant. |
delete_pix_key | Delete a DICT key owned by the merchant. |
list_pix_keys | List DICT keys currently registered to the merchant's Itaú accounts. |
get_boleto_pdf | Download the PDF of an issued boleto. |
send_ted | Send a TED transfer to an account at another bank. |
transfer_between_accounts | TAA — transfer between two Itaú accounts (owned by the merchant or a counterparty). |
get_tariffs | Query the tariff schedule applicable to the merchant's active contracts (Pix per-transaction, boleto regist... |
list_dda_bills | List bills registered for the merchant under the DDA (Débito Direto Autorizado) enrolment. |
schedule_payment | Schedule a future-dated payment (Pix, boleto, arrecadação, or TED). |
Install
npm install @codespar/[email protected]
Environment
ITAU_CLIENT_ID="..." # OAuth client_id from Itaú's Developer Portal
ITAU_CLIENT_SECRET="..." # OAuth client_secret
ITAU_CERT_PATH="/abs/path/to/client.crt" # mTLS client certificate
ITAU_KEY_PATH="/abs/path/to/client.key" # mTLS private key
ITAU_ENV="sandbox" # or "production" (default: sandbox)
Authentication
Two factors are both required on every call:
- OAuth2
client_credentials— the server calls the token endpoint, caches the bearer until ~60s before expiry, and attachesAuthorization: Bearer <token>to downstream calls. - mTLS — BACEN mandates mutual TLS for Pix v2, and Itaú enforces it across product families. The server loads the client certificate and private key from the paths you set, builds a Node
https.Agent, and routes every request through it.
You obtain the cert + key bundle from the Itaú Developer Portal after your merchant contract is signed. They are distinct from the OAuth credentials.
Run
# stdio (default)
npx @codespar/mcp-itau
# HTTP transport
MCP_HTTP=true MCP_PORT=3000 npx @codespar/mcp-itau
Caveats
- Paths are unverified. See the
TODO(verify)markers insrc/index.ts. Onboarded merchants should validate against their portal-issued OpenAPI spec and open a PR. - Sandbox host is a guess. Itaú issues a sandbox subdomain per merchant; override by editing
BASE_URLif your provisioned sandbox URL differs. - Arrecadação barcode validation is server-side in this alpha — no client-side mod-10 / mod-11 check yet.
Enterprise
Need governance, budget limits, and audit trails for agent payments? CodeSpar Enterprise adds policy engine, payment routing, and compliance templates on top of these MCP servers.
License
MIT
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.