Skip to main content
Glama

Client Liquidity

get_client_liquidity
Read-onlyIdempotent

Use for connected-account balances, not a whole-household financial picture. For a whole-household question, also read authorized property, alternatives, private holdings and loan records using the capabilities available on this connection. Get connected-account liquidity broken out by entity for your own record or an assigned client: cash, investments, debt, and net connected value per entity (Personal, each LLC or trust) plus a household total, each tied to connected-account sources. Buckets use the same entity spine as the ledger, so the numbers match what the member sees. Connected accounts only in the totals, not full net worth. documentBacked separately lists what X1 read from mortgage statements, property tax bills, bank statements, and promissory notes you can see (balances, rates, payments, assessed values, as of statement date, never live; account and loan numbers as last four only). Members may omit clientId to read their own record. Professionals must pass clientId unless X1 already supplied a client-scoped context. Scoped specialists are excluded.

Input Schema

NameRequiredDescriptionDefault
clientIdNoAssigned client or member user ID. Members may omit it for their own record; professionals must pass it unless X1 already supplied a client-scoped context.

Output Schema

NameRequiredDescriptionDefault
messageNo
liquidityYes
accessRoleYes
provenanceYes
documentBackedYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / properties / liquidity / anyOf
      Previous value: -[
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "asOf": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "entities": {
      -        "items": {
      -          "additionalProperties": false,
      -          "properties": {
      -            "accountsCount": {
      -              "maximum": 9007199254740991,
      -              "minimum": -9007199254740991,
      -              "type": "integer"
      -            },
      -            "cash": {
      -              "type": "number"
      -            },
      -            "currency": {
      -              "anyOf": [
      -                {
      -                  "type": "string"
      -                },
      -                {
      -                  "type": "null"
      -                }
      -              ]
      -            },
      -            "debt": {
      -              "type": "number"
      -            },
      -            "investments": {
      -              "type": "number"
      -            },
      -            "key": {
      -              "type": "string"
      -            },
      -            "label": {
      -              "type": "string"
      -            },
      -            "mixedCurrency": {
      -              "type": "boolean"
      -            },
      -            "netConnectedValue": {
      -              "type": "number"
      -            },
      -            "scope": {
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "accountsCount",
      -            "cash",
      -            "currency",
      -            "debt",
      -            "investments",
      -            "key",
      -            "label",
      -            "mixedCurrency",
      -            "netConnectedValue",
      -            "scope"
      -          ],
      -          "type": "object"
      -        },
      -        "type": "array"
      -      },
      -      "household": {
      -        "additionalProperties": false,
      -        "properties": {
      -          "accountsCount": {
      -            "maximum": 9007199254740991,
      -            "minimum": -9007199254740991,
      -            "type": "integer"
      -          },
      -          "cash": {
      -            "type": "number"
      -          },
      -          "currency": {
      -            "anyOf": [
      -              {
      -                "type": "string"
      -              },
      -              {
      -                "type": "null"
      -              }
      -            ]
      -          },
      -          "debt": {
      -            "type": "number"
      -          },
      -          "investments": {
      -            "type": "number"
      -          },
      -          "mixedCurrency": {
      -            "type": "boolean"
      -          },
      -          "netConnectedValue": {
      -            "type": "number"
      -          }
      -        },
      -        "required": [
      -          "accountsCount",
      -          "cash",
      -          "currency",
      -          "debt",
      -          "investments",
      -          "mixedCurrency",
      -          "netConnectedValue"
      -        ],
      -        "type": "object"
      -      }
      -    },
      -    "required": [
      -      "asOf",
      -      "entities",
      -      "household"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "asOf": {
      +        "anyOf": [
      +          {
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "entities": {
      +        "items": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "accountsCount": {
      +              "maximum": 9007199254740991,
      +              "minimum": -9007199254740991,
      +              "type": "integer"
      +            },
      +            "cash": {
      +              "type": "number"
      +            },
      +            "currency": {
      +              "anyOf": [
      +                {
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ]
      +            },
      +            "debt": {
      +              "type": "number"
      +            },
      +            "incompleteCategories": {
      +              "items": {
      +                "enum": [
      +                  "cash",
      +                  "investments",
      +                  "debt"
      +                ],
      +                "type": "string"
      +              },
      +              "type": "array"
      +            },
      +            "investments": {
      +              "type": "number"
      +            },
      +            "key": {
      +              "type": "string"
      +            },
      +            "label": {
      +              "type": "string"
      +            },
      +            "missingBalanceCount": {
      +              "maximum": 9007199254740991,
      +              "minimum": 0,
      +              "type": "integer"
      +            },
      +            "mixedCurrency": {
      +              "type": "boolean"
      +            },
      +            "netConnectedValue": {
      +              "type": "number"
      +            },
      +            "scope": {
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "accountsCount",
      +            "cash",
      +            "currency",
      +            "debt",
      +            "investments",
      +            "key",
      +            "label",
      +            "mixedCurrency",
      +            "netConnectedValue",
      +            "scope"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "household": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "accountsCount": {
      +            "maximum": 9007199254740991,
      +            "minimum": -9007199254740991,
      +            "type": "integer"
      +          },
      +          "cash": {
      +            "type": "number"
      +          },
      +          "currency": {
      +            "anyOf": [
      +              {
      +                "type": "string"
      +              },
      +              {
      +                "type": "null"
      +              }
      +            ]
      +          },
      +          "debt": {
      +            "type": "number"
      +          },
      +          "incompleteCategories": {
      +            "items": {
      +              "enum": [
      +                "cash",
      +                "investments",
      +                "debt"
      +              ],
      +              "type": "string"
      +            },
      +            "type": "array"
      +          },
      +          "investments": {
      +            "type": "number"
      +          },
      +          "missingBalanceCount": {
      +            "maximum": 9007199254740991,
      +            "minimum": 0,
      +            "type": "integer"
      +          },
      +          "mixedCurrency": {
      +            "type": "boolean"
      +          },
      +          "netConnectedValue": {
      +            "type": "number"
      +          }
      +        },
      +        "required": [
      +          "accountsCount",
      +          "cash",
      +          "currency",
      +          "debt",
      +          "investments",
      +          "mixedCurrency",
      +          "netConnectedValue"
      +        ],
      +        "type": "object"
      +      }
      +    },
      +    "required": [
      +      "asOf",
      +      "entities",
      +      "household"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
  2. First observed

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already cover read-only, idempotent, non-destructive behavior, so the description's added value is in scoping: connected accounts only in the totals (not full net worth), documentBacked figures are as-of statement date and never live, account/loan numbers shown as last four only, and scoped specialists are excluded. These are useful constraints beyond what annotations disclose.

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

Conciseness3/5

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

The opening sentence front-loads usage, which is good, but the body is a dense, run-on block mixing output scope, documentBacked details, and role rules. Several clauses are redundant with each other and with the schema, so it is longer than it needs to be.

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?

With an output schema present, return values need not be explained, and the description covers inclusion/exclusion scope, data freshness, and invocation rules adequately. It is essentially complete for an agent to call correctly, with only minor redundancy.

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

Parameters3/5

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

There is one parameter with 100% schema description coverage, so the schema already documents clientId. The description largely restates the same member-omit/professional-pass rule, adding only minor nuance ('unless X1 already supplied a client-scoped context'). Baseline 3 is appropriate when the schema carries the semantics.

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?

The description names a specific verb and resource (get connected-account liquidity broken out by entity: cash, investments, debt, net connected value, plus a household total) and explicitly distinguishes it from a whole-household financial picture. It is clear what the tool returns, though the signal is somewhat buried under dense surrounding text.

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

Usage Guidelines4/5

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

It states when to use it ('connected-account balances, not a whole-household financial picture') and points elsewhere for whole-household questions (authorized property, alternatives, private holdings, loan records). It also gives role-based invocation rules for clientId. The alternatives are described by category rather than named sibling tools, so it stops short of explicit tool routing.

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