Unofficial BICE CLI. Manage your BICE accounts via terminal, REST API and more.
BICE CLI exposes 8 banking tools via HTTP REST API. All tools have basic descriptions (10-100 chars), but parameter schemas are severely incomplete. Most tools lack input schema definitions entirely, only get_transactions, get_monthly_summary, get_portfolios_summary, and get_movements declare parameters. No output schemas are documented. Descriptions are generic and lack context for LLM selection (e.g., 'Fetches user information' does not explain when to call get_user vs get_whoami). Parameter descriptions exist but are minimal. No error handling guidance, no idempotency hints, no permission scopes. Tool names follow verb_noun convention (positive), but composition is weak, no chaining IDs returned, no pagination metadata. Security: credentials appear to be loaded server-side (loadConfig), which is correct, but no audit logging visible.
Fetches balance for the linked products
Fetches monthly summary for a given product
Fetches historic account movements for a given month and year
Fetches portfolios summary for a given client and date
Fetches all products for the linked account
Fetches transactions for the linked products
Fetches user information
Fetches session information and products linked to the account
4 of 8 tools (get_user, get_whoami, get_products, get_balance) have NO input schema defined.
No output schemas documented for any tool. LLMs cannot plan downstream calls or extract required fields (e.g., product_id, transaction_id) without knowing response structure.
Descriptions are generic and under 50 chars for most tools (e.g., 'Fetches user information'). They do not explain WHEN to use each tool or how they differ (get_user vs get_whoami distinction unclear).
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 37 | 2026-07-28+ | v2 |
Parameters for get_transactions, get_monthly_summary, get_portfolios_summary, get_movements lack type constraints (min/max for numeric, enum for categorical). 'page' and 'limit' are strings, not integers, no validation rules visible.
No error handling guidance. API returns generic 500 errors with 'Failed to fetch X', does not tell LLM whether to retry, ask user, or abort. No recovery paths documented.