Alpaca Trading API integration for Model Context Protocol (MCP)
Crashtestyourstrategy is installed from its publisher's own source and answers where it runs, so this marketplace is not in the path of a single call. There is no address here to send one to, and a panel that pretended otherwise would be showing you an answer we made up. Install it and call it from your own client — the Installation tab has the entry for each one.
What it does
Portfolio and strategy stress diagnostics with hedge-break detection and regime outlook. Free tier.
Quickstart
# 1 — add it to Claude Code
claude mcp add --scope user --transport http crashtestyourstrategy-mcp https://mcp.crashtestyourstrategy.ai/mcp
# 2 — ask your agent for something these tools do
# run_stress_test, portfolio_stress_test, find_similar_regime and 13 more
Crashtestyourstrategy costs nothing on mcprush: there is no plan to choose here, no cap to set and nothing mcprush can bill you for.
Collected from a public index. Nobody has claimed this account, so nothing here was written by its author — claim it if it is yours.
Where are you running it?
Every route below installs the same thing and ends at the same approval screen. Nothing here runs on your machine and nothing runs on ours: this server answers at its publisher’s own address, and what you install is the connection straight to it.
This is a public server: it answers at its publisher’s own address and this marketplace is not in the path. Claude Code registers it in one command; --scope user makes it available in every project. The transport below is http, as the publisher's own manifest declares it.
claude mcp add --scope user --transport http crashtestyourstrategy-mcp https://mcp.crashtestyourstrategy.ai/mcpReconnect, or start a new session, and the tools appear in the model’s tool list.
One config entry pointing straight at the publisher’s own address — this marketplace is not in the path, and nothing from this listing executes on your machine.
16 tools, with what each one reads, writes and reaches shown before you agree — the same list on every route above. Read the tool surface.
Tool surface
What the model actually sees. Descriptions are diffed on every release — see version history.
Run 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 only buy-and-hold. To discover available regime profile_hints, read the regimes://available resou
| Parameter | Type | Required | Notes |
|---|---|---|---|
| profile_hint | string | yes | Synthetic stress-regime identifier, e.g. 'whipsaw_synthetic_spy'. Discover valid values via the regimes://available resource. |
Stress 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 (diversification_intact / hedge_holds / hedge_breaks / shared_drawdown) describing how the holdings behaved TOGE
| Parameter | Type | Required | Notes |
|---|---|---|---|
| holdings | array | yes | Portfolio legs: list of {asset, weight} objects, e.g. [{'asset': 'SPY', 'weight': 0.6}, {'asset': 'TLT', 'weight': 0.4}]. Weights are normalised to sum to 1; assets must be in the substrate universe. |
| costs | no | Optional cost model: {'rebalance': 'monthly', 'transaction_cost_bps': float, 'annual_costs': {ASSET: annual fraction}}. Omit for the frictionless default. |
Nearest-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 restricts to one asset. Returns top_n matches with similarity_score (0..1), euclidean distance in z-sco
| Parameter | Type | Required | Notes |
|---|---|---|---|
| reference_profile_hint | no | Use this catalogue bundle's median descriptors as the search target (mutually exclusive with descriptor_target). | |
| descriptor_target | no | Partial target spec {descriptor_name: value}; only the provided dimensions contribute to the distance. Definitions: ontology://regime-descriptors. | |
| asset_filter | no | Restrict matches to one asset (e.g. 'SPY', 'BTC'). | |
| top_n | integer | no | Number of nearest regimes to return. |
Single-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 neighbours as a preview. Complements find_similar_regime: that tool ranks neighbours of a target, this too
| Parameter | Type | Required | Notes |
|---|---|---|---|
| profile_hint | string | yes | Synthetic stress-regime identifier, e.g. 'whipsaw_synthetic_spy'. Discover valid values via the regimes://available resource. |
Compare 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 outcome deltas, risk-concentration shift (Euler decomposition), and which diversification failures
| Parameter | Type | Required | Notes |
|---|---|---|---|
| holdings_a | array | yes | Reference portfolio A. Portfolio legs: list of {asset, weight} objects, e.g. [{'asset': 'SPY', 'weight': 0.6}, {'asset': 'TLT', 'weight': 0.4}]. Weights are normalised to sum to 1; assets must be in t |
| holdings_b | array | yes | Candidate revision B, same shape — evaluated on paths identical to A's, so every delta is attributable to the weights. |
Compile 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 entries with their gate signals (revision_required + grounding_summary each) plus a ready-to-cite markd
| Parameter | Type | Required | Notes |
|---|---|---|---|
| request_ids | no | Explicit request_ids to compile chronologically (take them from previous responses' request_id fields). | |
| last_n | integer | no | Alternatively: compile the N most recent recorded entries (ignored when request_ids is given). |
Distribution 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 stated capital-market assumptions (overridable via long_run_drift; the substrate's raw stress drift
| Parameter | Type | Required | Notes |
|---|---|---|---|
| holdings | array | yes | Portfolio legs: list of {asset, weight} objects, e.g. [{'asset': 'SPY', 'weight': 0.6}, {'asset': 'TLT', 'weight': 0.4}]. Weights are normalised to sum to 1; assets must be in the substrate universe. |
| horizon_years | number | yes | Plan horizon in years (multi-year paths are chained from ~2-year model blocks). |
| initial_investment | number | no | Starting capital (account currency). |
| monthly_contribution | number | no | Fixed monthly savings contribution (savings-plan mode). |
| monthly_withdrawal | number | no | Monthly withdrawal (withdrawal-plan mode); inflation-indexed when withdrawal_inflation_indexed is true. |
| target_amount | no | Optional wealth target; the output reports the probability of reaching it. | |
| annual_inflation | number | no | Annual inflation assumption for indexing and real-value reporting (fraction, default 0.02). |
| withdrawal_inflation_indexed | boolean | no | Index the monthly withdrawal to inflation. |
| rebalance | string | no | Rebalancing frequency: 'daily' | 'monthly' | 'quarterly'. |
| long_run_drift | no | Override the re-anchored long-run drift per asset: {ASSET: annual drift fraction}; omit for the stated capital-market assumptions. |
Model-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 answers 'how likely is regime X from today's observable state'. Ships only the preregistered, out-of-
| Parameter | Type | Required | Notes |
|---|---|---|---|
| asset | string | no | One of the out-of-sample-validated assets: 'SPY', 'QQQ', 'GLD', 'TLT'. |
| horizon_days | integer | no | Validated horizons only: 5 or 21 trading days. |
| as_of | string | no | Optional historical evaluation date (YYYY-MM-DD); empty = latest data. |
Compressed 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 regime probabilities over a 5- or 21-trading-day horizon, stress probability vs its unconditional base
| Parameter | Type | Required | Notes |
|---|---|---|---|
| horizon_days | integer | no | Validated horizons only: 5 or 21 trading days. |
Adversarial-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 severity classification, (3) descriptor attribution showing which regime descriptors most strongly co
| Parameter | Type | Required | Notes |
|---|---|---|---|
| strategy_id | string | no | Strategy identifier; v1 supports only 'buy_and_hold'. |
Reveal 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 this universe each asset proxies a factor (SPY=equity-beta, TLT=duration, GOLD=real-asset, BTC=crypt
| Parameter | Type | Required | Notes |
|---|---|---|---|
| holdings | array | yes | Portfolio legs: list of {asset, weight} objects, e.g. [{'asset': 'SPY', 'weight': 0.6}, {'asset': 'TLT', 'weight': 0.4}]. Weights are normalised to sum to 1; assets must be in the substrate universe. |
Check 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 internally and flags where the proposal VIOLATES the stated policy: worst stress drawdown exceeds tolera
| Parameter | Type | Required | Notes |
|---|---|---|---|
| holdings | array | yes | Portfolio legs: list of {asset, weight} objects, e.g. [{'asset': 'SPY', 'weight': 0.6}, {'asset': 'TLT', 'weight': 0.4}]. Weights are normalised to sum to 1; assets must be in the substrate universe. |
| max_drawdown_tolerance | no | IPS drawdown tolerance as a fraction, e.g. 0.15 = a -15% maximum acceptable drawdown. | |
| time_horizon_years | no | Investment horizon stated in the IPS; short horizons cannot absorb deep drawdowns. | |
| liquidity_need | no | 'low' | 'medium' | 'high' — violated when material holdings are less liquid than the stated need. |
Confront 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 in-sample Sharpe is a selection artifact (Bailey & López de Prado); which CRISIS REGIMES were ABSEN
| Parameter | Type | Required | Notes |
|---|---|---|---|
| annualized_sharpe | no | The claimed annualized Sharpe ratio of the backtest. | |
| n_trials | no | Number of configurations tried before selecting this backtest — drives the deflated-Sharpe correction. Unknown → the claim is flagged UNPROVEN. | |
| backtest_start | no | Backtest window start (YYYY-MM-DD) — used to detect crisis regimes the window never contained. | |
| backtest_end | no | Backtest window end (YYYY-MM-DD). | |
| frequency | number | no | Return observations per year (252 = daily bars). |
| skew | number | no | Skewness of the strategy's returns (0 = symmetric). |
| kurt | number | no | Kurtosis of the strategy's returns (3 = normal). |
| asset | no | Asset context for the regime-coverage check (default: SPY as the equity-crisis reference). |
Persist 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_confidence (0..1). Read feedback://insights to see aggregated cross-agent feedback.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| agent_name | string | yes | Your agent identity (model or product name). |
| feedback_items | array | yes | One or more items, each {category (FeedbackCategory ontology), severity, observation, suggested_action?, agent_confidence (0..1)}. |
| overall_confidence | number | yes | Overall confidence in this feedback, 0..1. |
| request_id | no | request_id of the response this feedback refers to. | |
| agent_vendor | no | Vendor of the submitting agent (e.g. 'Anthropic', 'OpenAI'). | |
| session_context | no | Optional free-text context of the session/workflow the feedback arose in. | |
| platform_version_evaluated | no | Schema/platform version the feedback refers to (e.g. 'ctys-agent-v1'). |
Discover 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 summary, headline finding). Call get_investment_thesis(slug) for the full framework / portfolio / st
No parameter schema on file.
Return 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 drawdown, real historical episodes, pre-registered claim verdicts, and the hedge hold/break behaviour)
| Parameter | Type | Required | Notes |
|---|---|---|---|
| slug | string | yes | Thesis slug — discover valid values via list_investment_theses(). |
- Every tool — any call limit is its publisher’s, not ours
- No card, and mcprush charges nothing for it
- Runs at its publisher’s own address — this marketplace is not in the path
- Nothing to cap, because mcprush bills nothing
What counts against your monthly calls
| Tool | Unit | Calls used | Out of the allowance |
|---|
Nothing here is billable: mcprush charges nothing to install Crashtestyourstrategy or to call it, at any volume.
Two independent axes, because powerful and malicious are different questions. The grade is threat only. The capability level is blast radius, and it is never a penalty on the grade — it is priced as one subtract-only term in the score, where you can see it.
This listing is an address its publisher runs, and you connect to it directly — this marketplace is not in the path. The scanner reads packages and public source, and an address is neither: the repository linked on this page is where this record was collected from, not a copy of what the address serves, so it is not graded in its place. So there is no grade — not a withheld one, an unmeasured one.
Release history
This is an address its publisher runs: which release it serves is theirs to choose, so there is nothing here to pin. The history below is for reading; the current release on file is 1.0.1.
No release note was published with this version.
One review per account, from a signed-in account that does not publish this listing. Nothing else is asked — you can say what you think before you install it. Publishers can reply once per review, and a review can be edited or deleted by whoever wrote it.
Any signed-in account that does not publish Crashtestyourstrategy can review it, once — before installing it or after. A review from an account that has installed it is marked as one.
Nobody has reviewed this listing. The rating on the card is the mean of the reviews written here and nothing else, so there is no rating until somebody writes the first — which takes a signed-in account that does not publish it, and nothing else.