Skip to main content
Glama

Fill history for a balance manager

get_bm_fills
Read-onlyIdempotent

Retrieve DeepBook order fills where a BalanceManager was maker or taker in a pool, filtered by role and look-back window, newest first.

Instructions

Fills (OrderFilled) where a given DeepBook BalanceManager was the maker or the taker in one pool, newest first: time, its side, price, qty, fee, tx. Public data; no keys. Education/information only; not financial advice. Read-only public data, may be delayed or wrong.

Input Schema

NameRequiredDescriptionDefault
poolYesDeepBook pool name BASE_QUOTE, e.g. SUI_USDC (case-insensitive; '/' or '-' also accepted)
roleNomaker
hoursNoLook-back window in hours (default 168 = 7 days)
limitNo
balance_manager_idYesDeepBook BalanceManager object id (0x + 64 hex)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.3.3

TDQS

B3.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, openWorldHint, and non-destructive, so the description's 'public data; no keys' is largely confirmatory. However, it adds genuinely new behavioral context: results are newest-first, includes the returned fields (time, side, price, qty, fee, tx), and warns data 'may be delayed or wrong' — useful caveats not in the annotations.

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?

The description is front-loaded with the core purpose and returned fields, then adds compact caveats. The 'Education/information only; not financial advice' sentence is boilerplate but short and possibly compliance-required, so it does not badly hurt concision.

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

Completeness3/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 usefully enumerates the returned fields and ordering, and covers data-reliability caveats. However, it leaves important parameter semantics (role default vs 'maker or taker', hours window, limit) under-explained, so an agent could mis-specify a query.

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

Parameters2/5

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

Schema coverage is 60%, so the description should compensate for the gaps. It only loosely references pool and role, does not explain the role parameter's maker-by-default behavior, and says nothing about the hours look-back or limit parameters (limit has no schema description). The parameter guidance is therefore incomplete relative to the stated coverage 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?

The description states a specific resource (OrderFilled fills) and scope (one pool, given BalanceManager, maker or taker), which lets an agent distinguish this from price/volume/order-book siblings. The wording 'maker or the taker' is slightly at odds with the role parameter's default of maker, introducing a small ambiguity about whether both roles are always returned.

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

Usage Guidelines2/5

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

There is no explicit when-to-use or when-not-to-use guidance, and no sibling alternative is named (e.g., get_recent_trades). The agent must infer from the phrase 'fills history' that this is for per-balance-manager fill queries, which is minimal guidance at best.

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