Skip to main content
Glama

finance

Accounts: Create account

create_account
    Create a new financial account.

    Args:
        name: Account name (e.g., "Chase Checking", "Visa Credit Card")
        account_type: One of: checking, savings, cash, credit_card, loan, mortgage,
                     student_loan, heloc, arm, investment, other_asset, other_debt
        balance: Opening balance (default: 0.00, can be negative for debt accounts)
        institution: Bank or financial institution name
        institution_login_url: Where the user logs in at this institution
            (https only, e.g. "https://chase.com"; bare domains are
            normalized to https). Optional; intended for a URL the user
            provided, not a guessed or invented one. Plaid-linked accounts
            get one automatically.
        currency: Currency code. App is locked to USD pre-launch — any other
            value is rejected. (See docs/CURRENCY_RESTORE_TODO.md to re-enable
            multi-currency.)
        interest_rate: Annual interest rate as percentage (0-100). For HELOC, this
            is the draw-phase rate. For ARM, this is the initial fixed rate.
        credit_limit: Credit limit (for credit card accounts)
        minimum_payment: Minimum monthly payment (for debt accounts)
        term_months: Original loan term in months (e.g. 360 for a 30-year mortgage)
        loan_start_date: Loan origination date (YYYY-MM-DD)
        loan_end_date: Loan payoff target date (YYYY-MM-DD)
        original_balance: Original loan/debt amount when first taken out
        monthly_escrow_tax: Monthly property-tax escrow (mortgage only)
        monthly_escrow_insurance: Monthly insurance escrow (mortgage only)
        draw_period_months: Number of months in the HELOC draw-down phase
        draw_amount_per_month: Monthly draw amount during HELOC draw-down phase
        rate_2: 2nd-term annual interest rate as percentage — HELOC repayment
            rate or ARM adjusted rate
        term_2_months: 2nd-term duration in months — HELOC repayment term or
            ARM remaining term after the adjustment
        arm_initial_period_months: Fixed-rate period in months before ARM
            adjustment (e.g. 60 for a 5/1 ARM)
        include_in_debt_paydown: Whether this debt is part of the payoff
            calculator and the dashboard payoff card (default True). Set
            False for a debt you pay in full every month (e.g. a credit
            card that carries no balance month to month) so it doesn't distort the
            plan. Ignored for asset accounts; does NOT affect net worth,
            total debt, or the balance sheet.
        low_balance_alert_threshold: Per-account low-balance alert
            threshold in dollars (checking/savings/cash only). Omit to use
            the monitoring plan's global threshold.
        mute_low_balance_alerts: Suppress low-balance alerts on this account
            (daily brief + notifications). For accounts the user
            intentionally keeps low. Default False.

    Returns:
        Created account details
    

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYes
rate_2No
balanceNo
currencyNoUSD
institutionNo
term_monthsNo
account_typeYes
credit_limitNo
interest_rateNo
loan_end_dateNo
term_2_monthsNo
loan_start_dateNo
minimum_paymentNo
original_balanceNo
draw_period_monthsNo
monthly_escrow_taxNo
draw_amount_per_monthNo
institution_login_urlNo
include_in_debt_paydownNo
mute_low_balance_alertsNo
monthly_escrow_insuranceNo
arm_initial_period_monthsNo
low_balance_alert_thresholdNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint=false, destructiveHint=false, idempotentHint=false, openWorldHint=false; the description does not contradict these and adds genuinely useful behavior: currency is hard-locked to USD and other values are rejected, bare domains in institution_login_url are normalized to https, Plaid-linked accounts get a login URL automatically, and include_in_debt_paydown explicitly does NOT affect net worth, total debt, or the balance sheet. It stops short of explaining duplicate-account behavior or what happens on partial failure, which would be relevant given idempotentHint=false.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Long, but each parameter entry earns its place given 23 undocumented-in-schema fields, and the one-line purpose statement is front-loaded. The trailing 'Returns: Created account details' is near-vacuous but minor. Some entries (currency's docs-file reference) are slightly noisy but still informative.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 23-parameter creation tool with no output schema and only hint-level annotations, this is close to complete: it covers defaults, valid ranges, enum values, and cross-parameter applicability rules. Remaining gaps are return-shape detail (addressed minimally), duplicate/idempotency behavior, and error conditions like invalid account_type values, which matter given idempotentHint=false.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and there are 23 parameters, so the description carries the full burden — and it largely does. It enumerates all 11 valid account_type values (the schema has no enum), gives examples and units for name, balance, interest_rate (0-100 annual %), term_months (360 = 30-year mortgage), dates in YYYY-MM-DD, and scopes conditional parameters (escrow fields = mortgage only, draw fields = HELOC only, low-balance fields = checking/savings/cash only). This is meaning far beyond what the bare typed schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Create a new financial account'), which distinguishes it from sibling creators like create_transaction, create_goal, or create_hard_asset by resource type. It does not explicitly name those alternatives, but the resource noun plus the account_type enumeration makes the scope unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this versus import_accounts, create_hard_asset, or list_accounts-then-act workflows. There is also no mention of prerequisites (e.g. whether the account must be linked to a Plaid item afterward). The description moves straight into parameter documentation with no usage context at all.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources