Skip to main content
Glama

Otto Data — Robinhood Chain

competition_my_portfolio

Read-onlyIdempotent

The competition paper portfolio behind an otto_pk_ key: cash, equity, return %, realized/unrealized P&L, open positions with live prices, recent trades (each tagged with its source: your MCP agent or Otto's hosted gap/narrative engine) and the entry's strategy prefs. Check this before sizing a new competition_paper_trade.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
api_keyYes

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already establish read-only, idempotent, non-destructive behavior. The description adds behavioral context by detailing the return payload: cash, equity, return %, P&L, open positions with live prices, and recent trades with source tags, plus strategy prefs. This goes beyond the annotations to explain what the user will see, but it doesn't cover auth failures, error handling, or rate limits. With annotations covering safety, a 3 is appropriate.

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?

Two sentences with no fluff. The first sentence is a dense list of contents, which is informative but somewhat long; the second is a practical usage directive. Structure is front-loaded and purposeful, earning a 4 rather than a 5 due to the heavy enumeration.

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?

The description thoroughly enumerates the returned fields and explicitly positions the tool in its workflow ('Check this before sizing a new competition_paper_trade'). There is no output schema, so the description has the full burden of conveying return values, which it does well. It doesn't mention pagination or errors, but for a read-only portfolio query, this is acceptable.

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?

The schema only defines 'api_key' as a string with title 'Api Key' and no description (0% coverage). The description references the key companion 'behind an otto_pk_ key', adding that it identifies the portfolio. This gives some semantic meaning but doesn't explain the key's format, how to obtain it, or what happens with an invalid one. Since there is only one parameter, the description partially compensates but not fully.

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 defines the tool's resource as 'The competition paper portfolio behind an otto_pk_ key' and enumerates its contents, making it clear this is a read/query tool for portfolio data. It distinguishes from sibling 'competition_paper_trade' by referencing it as the action to precede. However, it lacks an imperative verb like 'Retrieve' or 'List', which slightly weakens purpose clarity.

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?

The description explicitly directs when to use: 'Check this before sizing a new competition_paper_trade.' This is a clear usage context. It does not explicitly mention when not to use or alternatives like agent_position_book, but the 'competition' scope and otto_pk_ key provide context. Given the explicit check-before instruction, this is strong guidance.

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.

TDQS

A3.6/5.0
Disambiguation4/5

Most tools have clearly distinct purposes, with detailed descriptions that separate e.g. hood_basis_snapshot from hood_basis_history and perp_spot_basis. A few clusters like flow_summary vs token_flows and multiple gap/basis tools could still cause slight ambiguity, but the descriptions are strong enough to guide correct selection.

Naming Consistency5/5

All tool names follow a consistent snake_case pattern with domain prefixes (hood_, agent_, competition_, partner_), and verbs are used predictably (report_, execute_, get_, etc.). There is no mixing of conventions or vague generic names.

Tool Count3/5

39 tools is on the high side, but the server covers a very broad domain (market data, signals, trading execution, competition, partner APIs, agent reporting). While many tools earn their place, a few could be consolidated (e.g., gap/basis variants), making it feel heavier than necessary for typical usage.

Completeness4/5

The surface covers the core lifecycle: market data, signals, paper/real/partner trading, position tracking, and performance reporting. Minor gaps exist (e.g., no explicit wallet balance or order cancellation), but the core workflows are well-covered and derived endpoints fill most needs.

Resources