Control the PriceSentinel3000 app for automated trading simulation and market data analysis. Supports Replay and PaperTrader modes with access to strategy execution, candle data, indicators, events, and immutable market data libraries.
PriceSentinel3000 demonstrates solid tool design with consistent naming (verb_noun pattern), comprehensive descriptions (avg 180 chars), and explicit parameter types. All 16 tools have descriptions and input schemas. However, output schemas are undocumented, LLMs cannot predict response structure for downstream chaining. Parameter descriptions are strong but lack explicit constraints (ranges, enums, format patterns). Error handling guidance is absent. Tool composition is excellent: single responsibility, clear sequencing (configure→start→pause→resume→stop), and session IDs enable result correlation. Security is well-considered (no secrets exposed, read-only hints present). Naming is precise (status, list_strategies, configure, start, pause, resume, step, stop, run_to_end, results, candles, indicators, events, capture_chart, library_datasets, library_candles) with clear verb-noun structure. Pagination is implemented (afterSequence, limit, nextOffset patterns) but not fully documented in descriptions.
Read exact numeric prices and UTC timestamps for already-processed Replay or Paper data. Strategy returns finalized script candles; source returns observed market records, including Replay OHLC with its actual source interval and closing-time availability. Pages expose retention and cursors; future Replay history is never returned.
Capture a PNG image of the visible app's chart at the current or specified simulation time. Returns a base64-encoded PNG; the app must be visible and not minimized.
Apply a validated partial settings patch and optional Replay or PaperTrader mode to the idle visible app. Returns effective settings; omitted fields retain their current values.
Read a bounded page of strategy decisions, fills, and other events from the current or most recent simulation. Pages expose retention and cursors; future history is never returned.
Read the retained simulation's latest actual strategy evaluation and current warmup state. Includes named indicator values evaluated by the script; unavailable values are null. Readouts do not reevaluate the strategy or imply that the chart RSI uses the script's interval.
Output schemas undocumented. Tools like 'results', 'candles', 'indicators', 'events' return structured data but LLMs cannot predict field names, types, or nesting. This breaks downstream tool chaining and forces agents to guess response structure.
Parameter constraints not formalized. 'limit' params accept 1-100 but no enum/min/max in schema. 'offset' and 'afterSequence' lack bounds. 'datasetHash' requires 64-char lowercase but no regex pattern. LLMs cannot validate before calling.
No error recovery guidance. Tools like 'configure' and 'start' can fail (invalid strategy, missing data, auth errors) but descriptions lack actionable recovery hints. LLMs cannot self-correct without explicit guidance.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 67 | 2026-07-28+ | v2 |
Read a bounded page of original candles from one immutable local dataset hash, without Replay or network access. Returns UTC boundaries, source interval, adjustment provenance, exact decimal strings, and null for unknown volume. Missing or invalid hashes never fall back to another dataset.
List validated immutable datasets in the app's configured local market-data library. Works offline without an active Replay or broker login. Returns bounded metadata and diagnostics; no file paths or private watchlist configuration. These archived data are distinct from already-processed simulation observations.
List built-in and installed strategies. Refresh reloads the app's installed strategy catalog while idle.
Pause an active Replay at the next fully processed observation boundary.
Read a bounded summary of the current or most recent simulation: account, provenance, journal summary, recent decisions and fills.
Resume a paused Replay. Optional limits count additional observations or completed strategy bars from this point. Inspect status for progress.
Clear Replay pause limits and run to the end without playback delays. Returns promptly; poll status, then inspect results.
Start the selected Replay or PaperTrader session in the visible app. Returns promptly with operation state. PaperTrader follows the app connection and authentication flow if needed; omit all Replay-only parameters for PaperTrader.
Read the visible app's mode, settings, session and operation IDs, operation errors, run state, and processed counts.
Process exactly one more source observation in a paused Replay, without playback delay, ending paused unless the replay is exhausted.
Stop the current Replay or PaperTrader session and retain its results for inspection.
Mutually exclusive parameters not clearly documented. 'start' and 'resume' have pauseAfterObservations vs pauseAfterStrategyBars marked mutually exclusive in descriptions, but no formal constraint (oneOf schema). LLMs may pass both.
Pagination cursor semantics unclear. 'library_datasets' uses catalogHash as a consistency check but LLMs may not understand when to include it. 'candles' and 'events' use nextSequence but no explicit guidance on when pagination ends.