Skip to main content
Glama

BotSpot: AI Trading, Backtests and Bots

Show holdings

show_holdings
Read-onlyIdempotent

Answers "What do I hold?" and "Which positions are winning?" with a holdings table per account (value, unrealized P&L in dollars and percent, weight) and an allocation donut when the total is complete. Fetches the holdings itself; use this first for a general holdings or allocation question across connected accounts, without prefetching get_broker_positions or get_broker_account_snapshot. Paper and live accounts remain separate. Sort by value or pnl. Read-only. Shows an interactive panel in apps that support MCP Apps; always returns a text summary and a botspot.trade link.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "show_holdings"
  }
}

Input Schema

NameRequiredDescriptionDefault
modeNoall
sortByNovalue
brokerCredentialIdNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnly=true, destructive=false, idempotent=true and openWorld=true, so the description does not need to re-establish safety. It adds genuinely new behavior: the tool self-fetches (no prefetch of siblings), paper and live are never merged, and output varies by host (interactive panel in MCP Apps, always a text summary plus a botspot.trade link). It stops short of noting anything about empty accounts, missing broker credentials, or partial/incomplete totals beyond 'when the total is complete'.

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 user questions and the answer shape, followed by routing rules and output behavior. Dense but nearly every clause carries information; the only mild bloat is the 'Read-only' sentence, which duplicates readOnlyHint=true in the annotations.

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 no output schema, the description does its job by describing what comes back (per-account table with three computed columns, allocation donut, text summary, link). For a 3-parameter read tool this is close to sufficient; the one real hole is the unexplained brokerCredentialId parameter.

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?

Schema description coverage is 0%, so the schema names the parameters but explains none of them. The description compensates only partially: it covers sortBy via 'Sort by value or pnl' and implies mode via 'Paper and live accounts remain separate', but never explains brokerCredentialId or the 'all' mode value, leaving an undocumented UUID parameter an agent must guess about.

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?

Names a specific verb+resource ('holdings table per account') and enumerates the returned fields (value, unrealized P&L in dollars and percent, weight), plus the allocation donut. It explicitly distinguishes itself from get_broker_positions and get_broker_account_snapshot, so an agent can select it without opening the 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?

States the exact triggering questions ('What do I hold?', 'Which positions are winning?') and the scoping rule: use this first for a general holdings or allocation question across connected accounts, without prefetching the two named siblings. Adds the account-type caveat that paper and live remain separate, which prevents a common misuse.

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.