io.github.fnobbe/crashtestyourstrategy

io.github.fnobbe/crashtestyourstrategy · v1.0.1 · communication

io.github.fnobbe/crashtestyourstrategy is healthy: it completed an MCP handshake in 2990 ms and exposes 16 tools. It scores 60/100.

Portfolio and strategy stress diagnostics with hedge-break detection and regime outlook. Free tier.

Endpoint: https://mcp.crashtestyourstrategy.ai/mcp (streamable-http)

Repository · Website · JSON · Add to my inventory

Score 60/100

health17 / 25
authEase15 / 15
toolQuality15 / 15
maintenance5 / 15
adoption0 / 10
usage0 / 10
security8 / 10

Scoring v0.3, computed 2026-10-15T03:50:56.764Z.

Health history

Checked (UTC)StatusLatencyError
2026-10-15T03:50:49.733ZHealthy2990

Tools (16)

run_stress_testRun a buy-and-hold backtest against the synthetic stress regime identified by profile_hint. Returns a structured diagnostic: robustness score (0-100), per-FM-bucket failure-behavior classification with confidence + context, and the resolved regime parameters that were actually evaluated. v1 supports
portfolio_stress_testStress a multi-asset portfolio across cross-asset regimes (baseline / risk_off_crisis / rate_shock). Provide `holdings` as a list of {asset, weight}; weights are normalised. Returns, per regime: portfolio return, worst-episode drawdown, a per-leg decomposition, and a cross_asset_finding (diversifica
find_similar_regimeNearest-neighbour retrieval over the cached regime catalogue. Provide EITHER a reference_profile_hint (use that bundle's median descriptors as target) OR a descriptor_target dict (partial spec, missing dimensions are ignored — only the provided ones contribute to distance). Optional asset_filter res
describe_regimeSingle-regime introspection: returns the median behavioural descriptors of a known regime, the z-scores vs the catalogue population (so you can see what makes THIS regime distinct from the average), an English characterisation generated from the most extreme descriptors, and the top 2 nearest neighb
portfolio_compareCompare two portfolios (A = reference, B = candidate revision) on IDENTICAL simulated substrate paths — a paired design, so every delta is attributable to the weights, not seed noise. Returns drawdown-distribution deltas (median/worst/quantiles), probability-weighted scenario summaries, per-scenario
get_dossierCompile recorded diagnostic responses into ONE citable record — a proper process documents itself. Every envelope response (MCP and REST) is recorded automatically, keyed by its request_id. Provide explicit request_ids (compiled chronologically) or last_n for the most recent entries. Returns the ent
long_horizon_stressDistribution of multi-year wealth paths for a savings plan (monthly_contribution) or a withdrawal plan (monthly_withdrawal, inflation-indexed by default) on a portfolio from the substrate universe. Multi-year paths chain ~2y model blocks (block-bootstrap, disclosed); long-run drift is RE-ANCHORED to
regime_outlookModel-conditional probabilities that an asset is in each market regime (BULL / SIDEWAYS / BEAR / CRISIS, operational trailing-vol/drift labels) after a 5- or 21-trading-day horizon — the probability complement to the conditional stress tools: stress tools answer 'what happens GIVEN regime X', this a
market_regime_mapCompressed cross-category map of the current market state in ONE call: for 18 category proxies (US large-cap + tech, the 9 SPDR sectors, developed ex-US, emerging markets, long Treasuries, high-yield credit, gold, oil, Bitcoin) the operational regime (BULL/SIDEWAYS/BEAR/CRISIS), model-conditional re
challenge_strategyAdversarial-evaluation primitive — the semantic integration layer of the platform. Given a strategy identifier, returns a 3-layer analysis: (1) outcome metrics in the worst regimes the strategy was evaluated against, (2) vulnerability profile in the 8-dimension strategy vulnerability ontology with s
factor_decompositionReveal HIDDEN risk concentration: a portfolio can be capital-diversified while its RISK is dominated by one factor. Returns the Euler risk-contribution decomposition (RC_i = w_i*(Sigma*w)_i / w'Sigma*w, summing to 1) alongside the capital weights, using the empirical covariance of real returns. For
ips_gateCheck a portfolio against an Investment Policy Statement BEFORE accepting it — the planning step a proper process does FIRST (CFA). Provide holdings + IPS constraints (max_drawdown_tolerance as a fraction e.g. 0.15, time_horizon_years, liquidity_need 'low'|'medium'|'high'). Runs the stress test inte
backtest_integrityConfront a backtest claim with its over-optimism failure modes before trusting it. Given an annualized Sharpe + the number of configurations tried + the backtest window (YYYY-MM-DD), returns: the DEFLATED Sharpe — the expected MAXIMUM Sharpe achievable by chance grows with the trial count, so a high
submit_feedbackPersist structured improvement feedback about a previous tool response. Provide your agent identity, the request_id you are commenting on, and one or more feedback items each carrying category (from the FeedbackCategory ontology), severity, observation, optional suggested_action, and agent_confidenc
list_investment_thesesDiscover the investment-thesis catalog. Each entry is a descriptive case study that pairs an economic framework with a rule-based portfolio and the synthetic + historical stress evidence for that allocation. Returns one compact summary per thesis (slug, title, one-liner, tags, risk tiers, framework
get_investment_thesisReturn the complete thesis for `slug`: the economic framework (pillars with [E]/[M]/[K] evidence grades, falsifiers and a deep-dive), the rule-based portfolio (asset blocks × conservative/balanced/offensive weights + sizing rationale), and the stress evidence (per-tier backtest, per-regime median dr