Skip to main content
Glama

BotSpot: AI Trading, Backtests and Bots

Inspect reusable analysis data and semantic elements

inspect_analysis_artifact
Read-onlyIdempotent

Read the durable datasets, stable semantic element IDs, and view bindings from one completed analysis run in the current conversation. Use this before resolving any chart-derived value or condition. The response exposes schemas, stable IDs, and derivations, not full row dumps. For a follow-up chart edit, request includeProgram=true to retrieve the exact saved code and revision linkage. Set displaySavedChart=true to reopen the unchanged saved chart inline without a new program, broker read or runtime execution. It retains its original data timestamps; it does not refresh prices. Each dataset has an inputId for internal_data.get. Reuse full calculation history for the same source and period; fetch missing periods or refreshed data when needed. This tool is generic and does not infer behavior from indicator names, labels, or user wording.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "analysisRunId": "<analysisRunId>"
    },
    "name": "inspect_analysis_artifact"
  }
}

Input Schema

NameRequiredDescriptionDefault
analysisRunIdYes
includeProgramNoReturn the original code, capabilities and revision linkage for a chart edit. Omit for dataset or semantic inspection.
displaySavedChartNoReopen the original saved chart without recomputing or refreshing data. Returns its original result and observation timestamps.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.2/5.0
Behavior5/5

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

Annotations already cover the safety profile, yet the description still adds substantial non-obvious behavior: the payload exposes 'schemas, stable IDs, and derivations, not full row dumps,' the saved-chart path performs 'no new program, broker read or runtime execution,' and the data keeps 'original data timestamps; it does not refresh prices.' The staleness caveat and the dataset-to-`internal_data.get` linkage are exactly the kind of context structured fields cannot carry.

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?

Seven sentences, front-loaded with the core read operation before the conditional parameter advice and the staleness caveat. Each sentence carries distinct information with no filler, though the run-on sentence around displaySavedChart could be split for faster scanning.

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 must explain the return, and it does so at the right altitude: schemas, stable IDs, derivations, timestamps, and inputId handoff. For a three-parameter, non-nested read tool with full annotation coverage, an agent has everything needed to call it correctly; only the sibling routing remains thin.

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?

Schema coverage is 67% and both optional booleans already have schema descriptions, yet the prose adds real meaning: includeProgram is tied to chart edits and revision linkage, and displaySavedChart is characterized by what it avoids (no recompute, no broker read) and what it preserves (original result and observation timestamps). The required `analysisRunId` is never discussed in the description, though its UUID format makes it self-evident.

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 opening sentence gives a specific verb plus a concrete resource triple ('durable datasets, stable semantic element IDs, and view bindings') scoped to 'one completed analysis run in the current conversation.' That is far more informative than the title alone. It stops short of naming a sibling (e.g., resolve_analysis_reference) as the alternative, so the boundary with adjacent tools is only implied.

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 states sequencing explicitly: 'Use this before resolving any chart-derived value or condition,' and it gives conditional routing for each optional parameter ('For a follow-up chart edit, request includeProgram=true', 'Set displaySavedChart=true to reopen...'). It also advises reusing full calculation history unless periods or refreshed data are missing. There is no explicit statement of when NOT to use it or which sibling to call instead.

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.