Skip to main content
Glama

NCUA credit union data

query_metrics

Constrained table query, one quarter at a time (default latest), federally insured credit unions only. Pick fields to return, optional filters as [{'field':..., 'op': one of = != > >= < <= in contains, 'value':...}], an order_by field and limit (1 to 200). If more rows match than the limit, the last row is {'truncated': true, ...}. No raw SQL. When order_by is set, credit unions under $10M in assets are left out by default, because tiny credit unions produce extreme ratios (a $1M credit union can show a 34% ROA); rows carry assets_floor_applied. Set min_assets (0 to include everyone) to change it. Year-to-date fields (basis year_to_date in list_fields) are cumulative since January; use the *_quarter metrics for single quarters. Ratios are fractions (0.05 = 5%). Example: top 10 by members_per_fte in peer_group 5. Results over limit end with a truncated row giving total_matching and next_offset; pass offset to page. Field names come from list_fields. Metrics: asset_growth_yoy (Total assets versus the same quarter one year earlier); loan_growth_yoy (Total loans versus the same quarter one year earlier); share_growth_yoy (Total shares and deposits versus one year earlier); member_growth_yoy (Members versus one year earlier); auto_loan_growth_yoy (New plus used vehicle loans versus one year earlier); first_lien_growth_yoy (First-lien 1-4 family loans versus one year earlier); loan_to_share (Loans divided by total shares and deposits); loans_to_assets (Loans divided by total assets); net_worth_to_assets (Net worth divided by total assets (1.0 = 100%)); allowance_to_loans (Allowance for credit losses divided by total loans); net_worth_ratio_ex_cecl (Net worth minus the CECL transition provision, over assets); deposit_mix_share_drafts (Share draft (checking) accounts as a share of total shares and deposits); deposit_mix_regular (Regular shares as a share of total shares and deposits); deposit_mix_money_market (Money market shares as a share of total shares and deposits); deposit_mix_certificates (Share certificates as a share of total shares and deposits); deposit_mix_ira_keogh (IRA and Keogh accounts as a share of total shares and deposits); deposit_mix_non_member (Non-member deposits as a share of total shares and deposits); avg_balance_per_listed_account (Total shares and deposits over the count of share draft, certificate, money market, IRA a…); employees_fte_estimate (Full-time employees plus half of part-time employees); members_per_fte (Members per estimated full-time-equivalent employee); assets_per_fte (Assets per estimated full-time-equivalent employee); compensation_per_fte (Annualized employee compensation and benefits per estimated FTE); operating_expense_per_fte (Annualized non-interest expense per estimated FTE); assets_per_branch (Assets per branch); members_per_branch (Members per branch); compensation_share_of_opex (Employee compensation and benefits as a share of non-interest expense); loans_per_member (Average loan dollars per member); shares_per_member (Average shares and deposits per member); mix_auto (New plus used vehicle loans as a share of total loans); mix_residential_real_estate (First lien, junior lien and other real estate loans as a share of total loans); mix_credit_card (Credit card loans as a share of total loans); mix_commercial (Commercial loans as a share of total loans); delinquency_rate (Loans delinquent two or more months divided by total loans); auto_delinquency_rate (Reportable delinquent vehicle loans divided by vehicle loans); credit_card_delinquency_rate (Delinquent credit card loans divided by credit card loans); net_chargeoff_rate ((Charge-offs minus recoveries), annualized from year to date, over year-end loans); net_chargeoff_rate_avg_loans_4q (Net charge-offs annualized from year to date, over the average of the last four quarter-e…); provision_to_loans (Provision (credit loss expense) annualized over year-end loans); roa_year_end_assets (Return on assets: net income annualized from year to date, over year-end assets); roa_avg_assets_4q (Return on assets: net income annualized from year to date, over the average of the last f…); nim_year_end_assets (Net interest margin: (interest income minus interest expense) annualized from year to dat…); nim_avg_assets_4q (Net interest margin (NIM): same, over the four-quarter average of assets); loan_yield (Yield on loans: interest on loans annualized from year to date, over year-end loans); cost_of_shares (Cost of shares: total interest expense annualized from year to date, over shares and depo…); efficiency_ratio (Non-interest expense divided by (net interest income plus non-interest income)); opex_to_assets (Non-interest expense annualized over assets); fee_share_of_non_interest_income (Fee income divided by non-interest income); net_income_quarter (Net income for the single quarter (year-to-date minus prior quarter)); interest_income_quarter (Interest income for the single quarter); interest_expense_quarter (Interest expense for the single quarter); non_interest_expense_quarter (Non-interest expense for the single quarter); provision_quarter (Provision for loan losses for the single quarter); roa_ncua_ytd (Return on average assets on NCUA's basis: year-to-date net income annualized, over the av…); nim_ncua_ytd (Net interest margin (NIM) on NCUA's basis: (interest income minus interest expense) annua…); loan_yield_ncua_ytd (Yield on loans on NCUA's basis: interest on loans annualized from year to date, over the …); cost_of_funds_ncua_ytd (Cost of funds on NCUA's basis: total interest expense annualized from year to date, over …); net_chargeoff_rate_ncua_ytd (Net charge-off rate on NCUA's basis: (charge-offs minus recoveries) annualized from year …); roa_quarterly (Return on assets for the single quarter: the quarter's net income times 4, over the avera…); nim_quarterly (Net interest margin (NIM) for the single quarter: (interest income minus expense) for the…); loan_yield_quarterly (Yield on loans for the single quarter: the quarter's interest on loans times 4, over the …); cost_of_funds_quarterly (Cost of funds for the single quarter: the quarter's interest expense times 4, over the av…); net_chargeoff_rate_quarterly (Net charge-off rate for the single quarter: the quarter's (charge-offs minus recoveries) …); interest_on_loans_quarter (Interest on loans for the single quarter (year-to-date minus prior quarter)); net_chargeoffs_quarter (Charge-offs minus recoveries for the single quarter)

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNo
fieldsYes
offsetNo
filtersNo
quarterNo
order_byNo
quarterlyNo
descendingNo
min_assetsNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedInput schema / properties / offset
      Added value: +{
      +  "default": 0,
      +  "title": "Offset",
      +  "type": "integer"
      +}
    • addedInput schema / properties / quarterly
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "boolean"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "title": "Quarterly"
      +}
  2. Changed1 schema field changed
    • addedInput schema / properties / min_assets
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "number"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "title": "Min Assets"
      +}
  3. First observed

TDQS

A3.7/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does a good job: it discloses that ordering silently excludes sub-$10M credit unions unless min_assets=0, that affected rows carry assets_floor_applied, that over-limit results end in a truncated row with total_matching and next_offset, and that ratios are fractions. It omits auth/permission and rate-limit behavior.

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

Conciseness2/5

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

The operational guidance is front-loaded well, but roughly 80% of the text is a metric glossary that duplicates what the sibling list_fields returns, since the description itself states field names come from list_fields. Truncation behavior is also explained twice in slightly different wording, adding redundancy.

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

Completeness5/5

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

For a 9-parameter analytical query tool with an output schema (so return shape need not be described), the description covers granularity, filtering syntax, ordering side effects, pagination, and field sourcing. Only the two boolean flags and permission requirements are left unaddressed.

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

Parameters4/5

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

Schema description coverage is 0%, so the description must compensate and largely does: it defines filters structurally with the full op enum, limit bounds (1-200), offset paging, quarter granularity, min_assets semantics, and where field names originate. It never explains the descending or quarterly boolean parameters, which is the remaining gap.

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 with scope: a constrained table query over federally insured credit unions, one quarter at a time, no raw SQL. It partially routes to the sibling list_fields for field names, but never distinguishes itself from metric_series or peer_compare, so an agent cannot fully separate the four query-family tools from this text alone.

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

Usage Guidelines3/5

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

Usage context is implied rather than stated: quarter defaults to latest, filters use a documented operator set, order_by changes the asset-exclusion default, and min_assets reverses it. There is no explicit when-to-use-this-vs-metric_series-or-peer_compare guidance and no prerequisite or permission notes.

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.