Skip to main content
Glama
quantitats

quantitats-mcp

Official
by quantitats

List balances

list_balances
Read-onlyIdempotent

Retrieve account balances across every venue where API keys are held, requiring portfolio:read scope.

Instructions

Balances across every venue the account holds keys for.

Requires the portfolio:read scope.

Rate limit: 60 requests per minute for your key, shared across every tool in the venue-private group. Each of these calls the venue with your own key and spends your allowance there as well as here, so do not poll it. Name a venue when you only need one. For anything you would otherwise poll for, follow the order stream, which reports a fill when it happens instead of being asked whether one has.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already declare read-only, idempotent, non-destructive, open-world behavior, and the description adds substantial context beyond them: the required `portfolio:read` scope, a 60 req/min limit shared across the entire `venue-private` tool group, and the fact that each call also spends the caller's allowance at the upstream venue. That upstream-allowance warning is exactly the kind of behavioral trait annotations cannot convey.

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?

Front-loaded with the resource and scope, then scope/rate-limit/alternative guidance in descending priority. Slightly long and the final 'For anything you would otherwise poll for' sentence is a touch circuitous, but every sentence carries actionable information rather than filler.

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?

With no parameters, no output schema, and annotations covering the safety profile, the remaining burden is prerequisites, throttling, and choosing between sibling endpoints — all of which are addressed. Nothing an agent needs to invoke it correctly is missing.

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?

The tool takes zero parameters, so there is nothing for the description to disambiguate; the baseline for a no-parameter tool applies. No parameter description is needed or possible.

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

Purpose5/5

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

States a specific resource plus its distinguishing scope: balances across EVERY venue the account holds keys for. This directly contrasts with the sibling get_venue_balances via 'Name a venue when you only need one,' so an agent can pick between them without opening either schema.

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

Usage Guidelines5/5

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

Explicitly tells the agent when not to call it ('do not poll it'), what to do instead ('follow the order stream ... reports a fill when it happens'), and the narrower alternative ('Name a venue when you only need one'). This is as close to complete routing guidance as an aggregation endpoint gets.

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