Published prices and licence fit for email verification, sound effect packs and font licences.
Developer ToolsCommunication & messaging
- Passed: Handshake
- Passed: Tools listed
- Passed: Updated recently
Median latency 96 ms · Last checked
Explore
Evidence for your next connection.
Independent measurements of remote MCP servers. Every observation has a timestamp.
Read-only probesMCP server · Communication & messaging
Portfolio and strategy stress diagnostics with hedge-break detection and regime outlook. Free tier.
0 failed · 8 not measured
Median of successful probes over 7 days
Share of countable probes over 30 days, including daily rollups. Auth challenges are excluded.
Tool definitions returned by this server
Independent monitoring
Responded
The server completed its last measured handshake. This is an observation, not a guarantee.
Last checked| Test area | Passed | Failed | Unmeasured |
|---|---|---|---|
ConnectionCan a client connect and discover tools? | 5 | 0 | 0 |
Reliability & speedDoes it respond consistently and quickly? | 0 | 0 | 4 |
Access & authenticationWhat is required to use this server? | 1 | 0 | 2 |
Tool qualityAre the tool definitions usable by an agent? | 4 | 0 | 0 |
Publisher identityCan the publisher be traced to its source? | 4 | 0 | 2 |
Unmeasured means there is not enough evidence to decide. How these checks work
Start using io.github.fnobbe/crashtestyourstrategy
Choose your client, copy the configuration, then enable the server in your client’s MCP settings.
Run this command in your terminal, then restart Claude Code.
Claude Code
claude mcp add --transport http io-github-fnobbe-crashtestyourstrategy https://mcp.crashtestyourstrategy.ai/mcpCapabilities
USE WHEN you have a backtest result (Sharpe, trials tried, window) and want to know whether it is likely overfit. Given an annualized Sharpe, the number of configurations tried and the window (YYYY-MM-DD), returns the DEFLATED Sharpe (the expected maximum Sharpe by chance grows with the trial count: Bailey & Lopez de Prado), which CRISIS regimes the window never contained, and a base-rate caveat. An unknown trial count flags the Sharpe as not-deflatable / UNPROVEN. All inputs optional; give as many as known. Descriptive, not advisory.
DiscoveredFULL TIER ONLY. Use when you want to stress a portfolio of arbitrary tickers, or construct a low-drawdown one from a universe. On this free endpoint the call returns the coded error UPGRADE_REQUIRED with how to get a token. Free alternative: portfolio_stress_test for books made of SPY, TLT, GOLD and BTC.
DiscoveredUSE WHEN you want to know which market regimes break a strategy (buy_and_hold or rsi_30_70) and why. Adversarial evaluation in 3 layers: (1) outcome metrics in the worst regimes, (2) a vulnerability profile over 8 dimensions with severity, (3) the regime descriptors that couple most strongly to failure. Only strategies in the pre-computed outcome matrix can be challenged: 'buy_and_hold' and 'rsi_30_70' ('-' accepted for '_'). `asset` (optional) limits the worst-regime list to one catalogue asset; the vulnerability profile still spans all 63 regimes. Other strategies: tier2_stress_test (full tier, needs an access token). Vocabulary: ontology://strategy-vulnerabilities.
DiscoveredUSE WHEN you want to understand what one named synthetic regime is, and its nearest historical episodes. Single-regime introspection: median behavioural descriptors, z-scores vs the catalogue (what makes THIS regime distinct), an English characterisation, the 2 nearest neighbours, the nearest real historical episodes and a stylized-facts audit against real history. find_similar_regime ranks neighbours of a target; this says what one regime IS.
DiscoveredUSE WHEN you suspect a capital-diversified portfolio hides one dominant risk factor. A portfolio can be capital-diversified while its RISK is dominated by one factor. Returns the Euler risk contribution of each holding (RC_i = w_i*(Sigma*w)_i / w'Sigma*w, summing to 1) beside the capital weights, from the empirical covariance of real returns. Proxies: SPY=equity beta, TLT=duration, GOLD=real asset, BTC=crypto. E.g. a 60/40 is ~83% equity risk, a 50/50 SPY/BTC ~86% BTC risk. Descriptive, not advisory.
DiscoveredUSE WHEN you want the synthetic regimes closest to a profile or to a descriptor target. Nearest-neighbour search over the regime catalogue. Give EITHER reference_profile_hint (that bundle's median descriptors become the target) OR descriptor_target (partial {descriptor: value}; only given dimensions count). `asset_filter` restricts to one asset. Returns top_n matches with similarity (0..1), z-score distance and per-descriptor signed deltas that show WHY it matched. Valid hints and descriptor names: get_started.
DiscoveredUSE WHEN you want one citable record of the diagnostics you ran, with their gate flags. Every enveloped response is recorded by request_id. Give request_ids from your own responses (compiled chronologically) or last_n for your own most recent entries (API token required). Returns the entries with their gate signals (revision_required + grounding_summary) and a ready-to-cite markdown document; the dossier's own revision_required is true when any listed entry carried a gate flag (it does not know whether you later revised). One entry's full payload and call manifest: get_run. A factual record, never advisory.
DiscoveredUSE WHEN you want the full framework, portfolio and stress evidence of one thesis slug. Returns the framework (pillars with [E]/[M]/[K] evidence grades, falsifiers), the rule-based portfolio (asset blocks x conservative/balanced/offensive weights + sizing rationale) and the stress evidence (per-tier backtest, per-regime drawdown, historical episodes, claim verdicts marked by whether their rule was pre-registered, hedge behaviour). Slugs: list_investment_theses. Descriptive, not advisory; the agent decides suitability.
DiscoveredUSE WHEN you want the raw price series behind a synthetic regime or a historical episode, to recompute a claim yourself. source='historical' + ref=<case_id> returns a real-market anchor episode (dates, closes; OHLCV with include_ohlcv) and the descriptors computed on it; source='synthetic' + ref=<profile_hint> [+ seed] returns one cached replica (closes, warmup_index) and its descriptors. An empty ref lists the available ids and sample seeds. Recompute the descriptors from the closes to verify any claim the platform made. Same data as the regime-data:// resources, for clients that cannot read resources.
DiscoveredUSE WHEN you want to see exactly how an earlier result was produced, or reproduce it. Returns the run manifest (tool, the arguments sent, the seed where the result has one, the data window, the release, the schema version) and the stored response of one earlier call, by request_id. Works for MCP and REST calls and needs no API token (a request_id is an unguessable capability). Entries recorded before manifests existed come back with tool and arguments marked unknown. Rerun with the same arguments to reproduce: seeds are fixed, so reruns are identical while the underlying data is unchanged.
DiscoveredUSE WHEN you are new here, or need the valid values and the right tool for a task. Returns, for this deployment's tier: the tools that exist and work, an intent-to-tool map, every valid value for the enumerated inputs (profile hints, strategy slugs, descriptor names, assets per tool, thesis slugs), the Generate/Challenge/Revise/Present workflow, sign and unit conventions, and how to get a full-tier token. Needs no arguments.
DiscoveredFULL TIER ONLY. Use when you want a strategy's rules run on an asset's real price history, with buy-and-hold alongside. On this free endpoint the call returns the coded error UPGRADE_REQUIRED with how to get a token. Free alternative: backtest_integrity to check a backtest you already ran for overfitting.
DiscoveredUSE WHEN you have an Investment Policy Statement (drawdown tolerance, horizon, liquidity need) and want a portfolio checked against it. Flags a violation when the MEDIAN sustained drawdown exceeds max_drawdown_tolerance (a fraction, e.g. 0.15) or the tolerance is breached in a third or more of paths (the worst path and p90 may lie beyond it; see worst_stress); when time_horizon_years < 3 with a median drawdown of 15% or more; or when material holdings are less liquid than liquidity_need. A hard gate, not a score. Descriptive, not advisory.
DiscoveredUSE WHEN you want to browse the investment-thesis case studies. Each entry is a descriptive case study pairing an economic framework with a rule-based portfolio and its stress evidence. Returns one compact summary per thesis (slug, title, one-liner, tags, risk tiers, framework summary, headline finding). Full detail: get_investment_thesis(slug). Descriptive, not advisory; the agent decides suitability.
DiscoveredUSE WHEN you need to know which strategy slugs tier2_stress_test (full tier, needs an access token) accepts, with their rules and intended asset. Returns each catalogue slug with its plain-language rules, stop, take-profit, direction and the asset it is defined for (null = any ticker). Needs no arguments.
DiscoveredUSE WHEN you want multi-year wealth paths for a savings plan or a withdrawal plan. Distribution of multi-year wealth paths for a savings plan (monthly_contribution) or a withdrawal plan (monthly_withdrawal, inflation-indexed by default) on a SPY/TLT/GOLD/BTC portfolio. Multi-year paths chain ~2y model blocks (block-bootstrap); long-run drift is RE-ANCHORED to stated round-number assumptions (overridable via long_run_drift; see assumptions.long_run_drift) while the model's path shape is kept; both are echoed. Costs are ON by default. Returns terminal-wealth quantiles (nominal + real), ruin/shortfall probabilities, a sequence-of-returns diagnosis and a drift sensitivity (assumptions - 2pp). Descriptive, not advisory; no rate, allocation or product is recommended.
DiscoveredUSE WHEN you want to know what the market is doing now across 18 category proxies. One call, 18 category proxies (US large-cap + tech, 9 SPDR sectors, developed ex-US, emerging markets, long Treasuries, high-yield credit, gold, oil, Bitcoin): the operational regime, model-conditional regime probabilities on trading day 5 or 21, stress probability vs its baseline, a descriptive forward-return distribution conditional on the regime label, and an equity-factor commonality flag (US sectors re-express one factor). Per cell, only the tier that passed the preregistered out-of-sample rule ships (raw p<0.05, see tier_pvalues; tier_correction shows which survive a multiple-testing correction). No directional forecast. For one asset with as_of support: regime_outlook. Descriptive, not advisory.
DiscoveredUSE WHEN you revised a portfolio and want to know whether the revision made the tail better or worse. Compares A (reference) with B (candidate) on IDENTICAL simulated paths, so every delta is attributable to the weights, not seed noise. Returns drawdown-distribution deltas, probability-weighted scenario summaries, per-scenario deltas, the risk-concentration shift and which diversification failures B introduces or resolves. revision_required flags a B that deepens the worst-path drawdown or adds a failure. Provide holdings_a and holdings_b as [{asset, weight}]. Descriptive, not advisory; neither portfolio is ranked.
DiscoveredFULL TIER ONLY. Use when you want the whole return-versus-drawdown trade-off map for a set of tickers. On this free endpoint the call returns the coded error UPGRADE_REQUIRED with how to get a token. Free alternative: portfolio_compare for two SPY/TLT/GOLD/BTC books on identical paths.
DiscoveredUSE WHEN you want to stress a portfolio of SPY, TLT, GOLD and BTC across cross-asset regimes. Provide `holdings` as [{asset, weight}] (weights normalised; GLD accepted for GOLD, BTC-USD for BTC). Returns per regime (baseline / risk_off_crisis / rate_shock): return, worst-episode drawdown, per-leg decomposition and a cross_asset_finding (diversification_intact / hedge_holds / hedge_breaks / shared_drawdown / concentrated_loss), plus sustained drawdowns over the simulated paths. The joint correlation structure, including the bond hedge that can break under rate shocks, comes from a pre-computed substrate, so the call is instant. Optional `costs` ({rebalance: none|daily|monthly|quarterly|band, annual_costs: {asset: fraction}, transaction_cost_bps}) adds a cost_impact block paired on identical paths. Other tickers: build_portfolio (full tier, needs an access token) in assess mode (portfolios={name:{ticker:weight}}). Descriptive, not advisory.
DiscoveredUSE WHEN you want the probability that SPY, QQQ, GLD or TLT is in each market regime on trading day 5 or 21. Model-conditional probabilities of BULL / SIDEWAYS / BEAR / CRISIS (operational trailing-vol/drift labels) on trading day 5 or 21, not at any point before it: stress tools answer 'what happens GIVEN regime X', this answers 'how likely is X from today's state'. Uses the preregistered covariate logit; persistence and unconditional baselines are reported beside it. On GLD at 21 days it did not beat persistence (p=0.64), so that cell uses persistence, as market_regime_map does; model.tier says which. Assets: SPY, QQQ, GLD, TLT (GOLD accepted for GLD). Optional as_of (YYYY-MM-DD) evaluates a past date. Class membership on a future day, not a forecast of returns or direction, not advisory.
DiscoveredUSE WHEN you want buy-and-hold stressed against one named synthetic regime. Returns a 0-100 robustness score, failure-behaviour classification with confidence and the resolved regime parameters. Evaluates buy-and-hold only and takes exactly one argument, profile_hint (valid values: get_started); for other strategies use challenge_strategy or tier2_stress_test (full tier, needs an access token). Descriptive, not advisory.
DiscoveredUSE WHEN something in a response was wrong, unclear or missing and you want to tell the operator. Persists structured feedback on a previous response: your agent identity, the request_id, and items {category, severity, observation, suggested_action?, agent_confidence 0..1}. Aggregates are readable at feedback://insights.
DiscoveredFULL TIER ONLY. Use when you want to stress a strategy (a catalogue slug or an inline rule set) on any ticker. On this free endpoint the call returns the coded error UPGRADE_REQUIRED with how to get a token. Free alternative: challenge_strategy (buy_and_hold, rsi_30_70 across the regime catalogue) or run_stress_test (buy-and-hold on one cached regime).
DiscoveredRecent measurements
| Checked | Result | Response | Tools |
|---|---|---|---|
| Connected | 125 ms | 24 |