Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}

Tools

Functions exposed to the LLM to take actions

NameDescription
check_environmentA

What this interpreter can do with AADC and the Tracer, measured: installed packages and versions, platform, licence state, an engine self-test (record, replay, reverse: dz/dx = 6 at x = 3), a tracing self-test (one traced QuantLib call must attribute leaves to QuantLib's C++), and findings with the pip command that fixes each. Call it first; call it again after installing anything.

trace_scriptA

Run a Python script with tracing on and keep the record (tape) it leaves. The script needs no changes: it runs in its own directory with AADC_TRACE=1, so every calculation through aadc types or an AADC-built library such as aadc-quantlib-tracing is recorded with its source coordinates. Returns tape_id, the script's stdout and stderr, the engine's census (frozen branch sites, outputs) and stats. A script that records itself and ends with f.save_tape() writes to AADC_TRACE_OUT; mark its first line with 'mode=explicit'. outputs: optional AADC_TRACE_OUTPUTS entries, e.g. ['value=123.45'] or ['pricer.py:42'], to name the program's results on the tape. python: another interpreter to run under (the one where the user's packages live). This runs the user's own code on the user's own machine; it is not a sandbox.

inspect_tapeB

Ask the tape one question in the engine's own grammar and get its text answer plus the parsed header. Verbs: 'stats' | 'leaves [kind=input|constant] [by=leaf] [limit=N]' | 'branches order=margin [limit=N]' | 'sites [file=NAME] [limit=N]' | 'at FILE:LINE [context=N]' (source with the recorded values; hash=ok means the file shown is the one compiled) | 'find value=X' (where a printed number was computed) | 'origin #N' (the formula behind a value) | 'uses #N' | 'cone #N' (which leaves can move a value, by derivative or only by a branch) | 'source root=COMPILED=LOCAL' (map compiled paths to a local source tree) | 'replay ...' (prefer the replay tool). Ids are #N from earlier answers. A malformed request answers status=error in the header, never an exception.

replayA

Re-evaluate the tape at new inputs without re-running the model. assignments: '#12=101' or '#12=101,#15=0.21' (leaf ids from 'leaves kind=input' or 'leaves by=leaf'); out: the output id from 'find value='. survives=true: the recorded path holds and value is exact (equal to a fresh run to the last digit). survives=false: WITHHELD; flipped names the decision (file:line, decided true -> false) and unchecked the conversions the tape cannot check. There is no value to quote in that case. A tape read back from a file keeps no operand for a counted conversion, so on most QuantLib tapes a replay is withheld with unchecked naming the line (often errorfunction.cpp:200); say so and re-run the script at the new inputs for the price. path_recorded=true returns the recorded path's value labelled as such, for comparison only.

set_source_rootA

Map the compiled source prefix recorded on the tape (for aadc-quantlib-tracing 1.41 it is /project/work/QLAADC/ql) to a local directory holding that source, so 'at FILE:LINE' and 'origin' can show the code. Later answers say hash=ok when the local file is the one the library was compiled from and hash=MISMATCH when it is not; a mismatch is reported, never silent. Remembered for this tape.

load_tapeA

Register an existing .tape file written earlier (by trace_script, by a script's own save_tape(), or downloaded from a report) and return its tape_id and stats.

list_tapesB

The tapes this server holds: id, file, size, the script that produced each, and the source roots applied.

list_examplesB

Bundled scripts to start from: plain AADC (any platform), and unmodified QuantLib pricers that aadc-quantlib-tracing records (Linux x86-64, macOS arm64). mode=auto scripts are traced as they are; mode=explicit scripts record themselves and print sensitivities. Each is a starting point to copy and edit.

get_exampleC

The source of one bundled example, to read, copy or adapt.

run_exampleA

Copy one bundled example into the server's working folder, run it with tracing on and return its tape_id, its printed output and the tape's stats. Then question the tape with inspect_tape and replay.

Prompts

Interactive templates invoked by user choice

NameDescription
get_started
validate_pricer
add_sensitivities

Resources

Contextual data attached and managed by the client

NameDescription
aadc-agent-guideaadc.llms_txt() from the installed wheel, so it describes the version actually imported.
get-started
inspect-verbs
versions
tracing-for-agents
tracing-for-humans
model-validation
how-it-works
aadc-howtoSix runnable snippets with the rules that keep the numbers right; the package's tests execute them.
tracer-howtoWhen a replay is exact and when it is withheld; what to ask first; runnable snippets.
release-notesaadc.release_notes() from the installed wheel: what changed, version by version.

TDQS

A3.5/5.0

Scored across 10 tools

Disambiguation4/5

Most tools have clearly distinct purposes across the tracing lifecycle: environment check, trace/run, load/list, inspect, replay, source mapping, and examples. Minor overlap exists because inspect_tape supports a 'replay' verb despite a dedicated replay tool, and run_example and trace_script both run code and produce tapes, though their scopes are clearly differentiated.

Naming Consistency4/5

Names are consistently snake_case and mostly follow a verb_noun pattern such as check_environment, trace_script, inspect_tape, load_tape, and set_source_root. The only notable deviation is the bare verb 'replay', which is still clear but breaks the otherwise predictable pattern.

Tool Count5/5

Ten tools is well-scoped for a tracing, inspection, and replay server. Each tool corresponds to a meaningful stage or object in the workflow, with no obviously redundant or trivial tools.

Completeness4/5

The surface covers the core lifecycle: environment validation, tracing scripts and examples, loading and listing tapes, inspecting and replaying tapes, source-root mapping, and example discovery. Minor gaps remain around tape cleanup/removal or export, but agents can work around them for the stated tracing and debugging purpose.

Maintenance

ActivityMaintained
ResponsivenessNo issues