Skip to main content
Glama

Hesper Atlas Evidence

Row-level validation evidence

get_heldout_evidence
Read-onlyIdempotent

Use when a user wants to reconstruct or challenge the 152-name static-tail validation headline. Returns the committed row-level artifact, including its content-derived run id, SHA-256 digest, split and execution manifest, aggregate summary, and paged per-symbol engine versus buy-and-hold CAGR and max-drawdown rows. The chronological tail was originally withheld but was reused in later research, so the response labels it validation rather than a pristine unseen test. Backtested signal evidence, not live performance or advice.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoRows to return, default 25, max 100.
offsetNoRows to skip, default 0.
symbolNoTicker symbol, e.g. NVDA. Case-insensitive.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
as_ofNo
sourceNo
caveatsNo
is_liveNo
citationNo
data_typeNo
disclaimerYes
provenanceNo
source_urlNo
last_updatedNo
calculation_versionNo
methodology_versionNo

TDQS

A4.5/5.0
Behavior5/5

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

Despite readOnlyHint and idempotentHint already covering safety, the description adds valuable behavioral context: the artifact is committed, includes a content-derived run id and SHA-256 digest, and the chronological tail was reused in later research so results are labeled validation rather than pristine test. This provenance caveat is exactly the kind of non-obvious behavior an agent needs to know.

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

Conciseness5/5

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

Three dense, purposeful sentences with the trigger use case front-loaded. The long middle sentence enumerates artifact contents without fluff, and the final sentence is a useful caveat. No sentence is wasted.

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?

For a read-only, idempotent retrieval tool with a rich output schema and fully documented parameters, the description covers the use case, response content, provenance caveat, and non-performance disclaimer. Nothing important is missing for an agent to select and invoke the tool correctly.

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 100%, so the schema already documents limit, offset, and symbol with defaults and constraints. The description's mention of 'paged per-symbol' rows loosely reinforces the pagination and filtering semantics, but it does not add meaningful parameter-level detail beyond what the input schema already provides.

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?

The description opens with a specific use case — reconstructing or challenging the 152-name static-tail validation headline — and then names the exact deliverable: the committed row-level artifact. It clearly distinguishes this from a pristine unseen test and from live performance, so an agent can tell it apart from related evidence tools such as get_walk_forward_evidence.

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 explicitly says when to use the tool ('Use when a user wants to reconstruct or challenge...') and gives meaningful exclusions ('not live performance or advice'). However, it does not name sibling alternatives or state when a different evidence tool would be more appropriate, so it stops just short of full alternative 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.

TDQS

A4/5.0
Disambiguation3/5

The five historical-performance tools (get_track_record, get_walk_forward_evidence, get_heldout_evidence, get_ledger_stats, list_closed_trades) occupy heavily overlapping territory, and an agent could easily grab the wrong evidence artifact. The detailed 'use when' openers help considerably, but the boundaries between replay, walk-forward, and validation are subtle enough that misselection risk remains real.

Naming Consistency4/5

All tools follow a clean snake_case verb_noun pattern, with get_ reserved for single artifacts/reports and list_ for enumerable collections. The convention is slightly loose—get_changes_since and get_ledger_stats are more list-like than get_-like, and the verbs don't always signal collection size—but overall the pattern is predictable and readable.

Tool Count4/5

At 15 tools, the server sits at the upper boundary of a well-scoped surface, and each tool does earn its place in the evidence ecosystem (current signal, lists, portfolio, context, diffs, publications, replay, validation, methodology, provenance). It is slightly heavy and could feel daunting, but nothing is redundant.

Completeness4/5

The surface covers the evidence domain thoroughly: current state, forward publication history, performance replays, two distinct validation artifacts, methodology, and hash-level provenance. Minor gaps exist—there is no tool to enumerate the full covered universe or search across tickers, forcing users to arrive with a symbol in mind—but core workflows have no dead ends.

Resources