Experimental MCP server for Open Finance Brasil with typed tools and secure consent flows
Strong foundation with 18 well-named tools following verb_noun convention (list_, get_, initiate_, start_, complete_, check_, revoke_). All tools have descriptions (avg ~50 chars, within baseline 34-392). Input schemas present with typed parameters and descriptions. Risk annotations (READ_ONLY, DESTRUCTIVE, WRITE) are valuable. However, descriptions are terse (many under 50 chars), output schemas are not documented in source, and error handling guidance is absent. No pagination support visible for list tools despite financial data context. Sensitive PII (CPF/subject_id) is exposed as required parameters without clear server-side handling notes.
Check the status of a consent
Check the status of a payment consent
Complete a consent flow after customer authorization
Complete a payment consent flow
Get account balance for a specific account
Get credit card bills for a specific credit card
Initiate a PIX payment transaction
List accounts consented by the customer
Output schemas not documented. Tool descriptions state what they do but do not specify return structure (fields, types, pagination). LLMs cannot plan downstream calls or extract required data without knowing response shape.
No pagination support visible for list_* tools. Financial data (transactions, investments) can be large; returning all results risks context window exhaustion. Missing limit, offset, page_size, or cursor parameters.
PII (subject_id as CPF) exposed as required parameter. No documentation of server-side encryption, masking, or audit trail. Sensitive identifiers in tool parameters risk logging in traces and prompt history.
Inferred effective spec: 2026-07-28+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 57 | 2026-07-28+ | v2 |
List credit cards consented by the customer
List investment funds held by the customer
List investments held by the customer
List PIX keys registered for the customer
List transactions for a specific account
List treasure titles (government bonds) held by the customer
List variable income investments held by the customer
Revoke a previously granted consent
Start a consent flow for accessing customer data
Start a payment consent flow
Error handling guidance absent. No documentation of what errors each tool can return, whether they are retryable, or what the LLM should do next. E.g., initiate_pix (DESTRUCTIVE) has no dry-run or confirmation step.
Descriptions are terse (avg ~50 chars). Many lack context on WHEN to use the tool vs similar ones, or what prerequisites exist. E.g., 'List accounts consented by the customer' does not explain that consent must be granted first or how to initiate it.