{"schema_version":"verify.report.v1","generated_at":"2026-08-15T02:28:31.323866+00:00","snapshot_id":"trustsnap_5112ad1d9bc1acb4","server":{"namespace":"ai.quantifyme","name":"quantifyme","title":"ai.quantifyme/quantifyme","description":"Describe a trading strategy in plain English and deploy a live signal model in one call. No signup.","homepage_url":"https://quantifyme.ai","docs_url":null,"icon_url":null,"support_url":null,"remote_url":"https://mcp.quantifyme.ai/mcp","server_card_url":null,"latest_version":"1.0.0","current_status":"failing","current_score":null,"transport_type":"streamable-http","has_oauth":false,"has_dcr":false,"has_prompts":false,"tool_count":0,"current_validation_schema_version":"8058defc70ca932c","last_validated_at":"2026-08-15T01:44:49.659415+00:00","registry_source":"official_registry","registry_identifier":"ai.quantifyme/quantifyme","canonical_identifier":null,"current_score_components":{"auth_operability_score":2.0,"error_contract_score":0.0,"rate_limit_semantics_score":2.0,"schema_completeness_score":0.0,"backward_compatibility_score":4.0,"slo_health_score":0.0,"security_hygiene_score":0.0,"task_success_score":0.0,"trust_confidence_score":1.0,"prompt_contract_score":0.0,"resource_contract_score":0.0,"discovery_metadata_score":2.0,"registry_consistency_score":2.0,"installability_score":1.0,"session_semantics_score":1.0,"tool_surface_design_score":0.0,"result_shape_stability_score":0.0,"oauth_interop_score":0.0,"recovery_semantics_score":0.0,"maintenance_signal_score":3.0,"adoption_signal_score":2.0,"freshness_confidence_score":1.0,"transport_fidelity_score":4.0,"spec_recency_score":2.0,"session_resume_score":4.0,"step_up_auth_score":0.0,"transport_compliance_score":3.0,"utility_coverage_score":0.0,"advanced_capability_coverage_score":0.0,"connector_publishability_score":0.0,"tool_snapshot_churn_score":0.0,"connector_replay_score":0.0,"request_association_score":0.0,"interactive_flow_safety_score":0.0,"official_registry_presence_score":4.0,"safety_transparency_score":2.0,"tool_capability_clarity_score":0.0,"data_exfiltration_resilience_score":0.0,"dependency_supply_chain_signal_score":1.0,"input_sanitization_safety_score":0.0,"tool_namespace_clarity_score":0.0},"capability_taxonomy":[],"machine_summary":{},"taxonomy_tags":[],"score_decomposition":[],"validation_diff":null,"tool_snapshot_diff":null,"connector_replay":{},"request_association":{},"production_readiness":{"code":"failing","label":"Failing","reason":"The latest validation run was attempted but did not complete successfully.","badge":"score-low"},"recommended_for":[],"history_summary":{},"validation_timeline":[],"evidence_confidence":{"score":null,"label":"not_assessed","reason":"No evidence-bearing validation runs exist yet (6 captured checks, validation age 0.7 hours). Confidence cannot be computed.","live_check_count":6,"validation_age_hours":0.73,"basis":{"evidence_bearing_validations":0,"affirmative_live_check_count":6,"validation_age_hours":0.73,"freshness_threshold_hours":24}},"incident_feed":[],"disputes":[],"remediations":[],"client_remediation_modes":[],"client_profiles":[],"client_readiness_verdicts":[],"publishability_policy_profiles":[],"compatibility_fixtures":[],"install_snippets":{},"aliases":[],"raw_evidence":{"checks":{"probe_noise_resilience":{"status":"ok","latency_ms":450.12,"details":{"url":"https://mcp.quantifyme.ai/robots.txt","http_status":200,"headers":{"content-type":"text/plain; charset=utf-8"},"validation_disallowed":false,"consent_error":null}},"server_card":{"status":"error","latency_ms":345.71,"details":{"url":"https://mcp.quantifyme.ai/.well-known/mcp/server-card.json","error":"Client error '404 Not Found' for url 'https://mcp.quantifyme.ai/.well-known/mcp/server-card.json'\nFor more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/404"}},"oauth_protected_resource":{"status":"error","latency_ms":361.28,"details":{"url":"https://mcp.quantifyme.ai/.well-known/oauth-protected-resource","error":"Client error '404 Not Found' for url 'https://mcp.quantifyme.ai/.well-known/oauth-protected-resource'\nFor more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/404"}},"oauth_authorization_server":{"status":"missing","latency_ms":null,"details":{"reason":"no_authorization_server"}},"openid_configuration":{"status":"missing","latency_ms":null,"details":{"reason":"no_authorization_server"}},"initialize":{"status":"ok","latency_ms":921.75,"details":{"url":"https://mcp.quantifyme.ai/mcp","payload":{"jsonrpc":"2.0","id":1,"result":{"protocolVersion":"2025-03-26","capabilities":{"experimental":{},"prompts":{"listChanged":false},"resources":{"subscribe":false,"listChanged":false},"tools":{"listChanged":false}},"serverInfo":{"name":"quantifyme","version":"0.1.0"},"instructions":"QuantifyMe is a no-code quant trading platform. A trial API key is created automatically for this session — no signup. TO DEPLOY: call `one_shot` EXACTLY ONCE, passing the user's request as `prompt` (their words) plus `symbol`/`timeframe` if given. Do NOT pre-decide presets or community strategies, and do NOT ask the user 'existing or custom?' first — the platform routes automatically: a VAGUE request ('deploy a 15min EURUSD model', 'generate a strat') deploys a proven COMMUNITY strategy; a SPECIFIC rule-based description ('buy when RSI < 30') generates a fresh one. NEVER call one_shot more than once for one request (extra calls create duplicate deploy cards). `one_shot` returns a job_token immediately and the LIVE CARD then streams progress and renders the backtest chart by itself. After it returns, call `get_deploy_result(job_token)` ONCE to get the final stats as text so you can summarize — you do NOT need `get_model_chart` (the live card already shows the chart). If `get_deploy_result` returns source='community', tell the user it deployed a PRE-EXISTING strategy by @<author> (built by an AI agent or user), share the live_url as the Live dashboard link, and ASK whether they'd like to GENERATE A CUSTOM strategy instead (only then call one_shot again, with their rules as the prompt). Use `list_models` / `list_deployed` to inspect state; `find_strategy` is available if a user explicitly wants to browse for a match."}},"http_status":200,"headers":{"content-type":"text/event-stream","mcp-session-id":"d59869b94c0b4429a84793bad8fe1f82"}}},"protocol_version_probe":{"status":"warning","latency_ms":null,"details":{"claimed_version":"2025-03-26","validator_protocol_version":"2025-03-26","latest_known_version":"2025-11-25","releases_behind":2,"lag_days":244}},"tools_list":{"status":"error","latency_ms":459.0,"details":{"url":"https://mcp.quantifyme.ai/mcp","error":"Client error '400 Bad Request' for url 'https://mcp.quantifyme.ai/mcp'\nFor more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/400","http_status":400,"payload":{},"headers":{"content-type":"application/json","mcp-session-id":"7cb6391a1c86479eb4997cd4e0c0f8d8"}}},"prompts_list":{"status":"missing","latency_ms":209.15,"details":{"url":"https://mcp.quantifyme.ai/mcp","error":"Client error '400 Bad Request' for url 'https://mcp.quantifyme.ai/mcp'\nFor more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/400","http_status":400,"payload":{},"headers":{"content-type":"application/json","mcp-session-id":"eb454eaec2154d4f859eca02a374c5ae"},"reason":"not_advertised"}},"prompt_get":{"status":"missing","latency_ms":null,"details":{"reason":"not_advertised"}},"resources_list":{"status":"missing","latency_ms":137.69,"details":{"url":"https://mcp.quantifyme.ai/mcp","error":"Client error '400 Bad Request' for url 'https://mcp.quantifyme.ai/mcp'\nFor more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/400","http_status":400,"payload":{},"headers":{"content-type":"application/json","mcp-session-id":"3a7635dbb01542ca86af642179942460"},"reason":"not_advertised"}},"resource_read":{"status":"missing","latency_ms":null,"details":{"reason":"not_advertised"}},"determinism_probe":{"status":"missing","latency_ms":null,"details":{"reason":"tools_list_unavailable"}},"instruction_tool_reference_probe":{"status":"not_assessed","latency_ms":null,"details":{"reason":"initialize_or_tools_unavailable"}},"session_resume_probe":{"status":"ok","latency_ms":246.33,"details":{"url":"https://mcp.quantifyme.ai/mcp","payload":{"jsonrpc":"2.0","id":301,"result":{"tools":[{"name":"one_shot","title":"Deploy Strategy (generate + backtest + go live)","description":"End-to-end deploy: generate strategy → train → deploy live.\n\n    One of `prompt` (free-form NL), `preset` (curated winning strategy), or\n    `community_id` (copy a published community strategy) is required. If more\n    than one is passed, precedence is community_id > preset > prompt.\n\n    Args:\n      prompt: Natural-language strategy description (e.g. \"Buy when RSI < 30, sell > 70\").\n      symbol: Currency pair to backtest on. One of: EURUSD, USDJPY, GBPUSD,\n        USDCHF, USDCAD, AUDUSD, NZDUSD. Default EURUSD.\n      timeframe: Candle granularity. One of: 1min, 5min, 15min, 1h. Default 15min.\n      claude_model: Which Claude variant to use for code generation.\n        \"sonnet\" (default — best quality, 1/day free) or \"haiku\" (faster, 3/day free).\n        Ignored when `preset` is set (no generation needed).\n      preset: Curated winning-strategy slug. Skips Claude generation entirely\n        — deploys a pre-saved strategy known to backtest well on the chosen\n        symbol. Available slugs: ema_cross_fast, momentum, scalper_stack,\n        sma_only, trend_ema, volatility, bb_squeeze, all_mix, pivot_kid_ema.\n        Not every slug exists for every symbol — call list_models afterwards\n        to confirm what deployed.\n      community_id: Copy-trade a published community strategy. Pass the `id`\n        of an entry from `browse_community`. Loads that exact strategy code,\n        skips Claude generation, then trains + deploys it. `symbol`/`timeframe`\n        still apply to the backtest+deploy.\n      webhook_url: Optional webhook to receive live signals.\n      telegram_chat_id: Optional Telegram chat ID for signal delivery.\n\n    Returns IMMEDIATELY (the deploy runs in the background so the live card can\n    stream progress) with:\n        - job_token (str): pass to get_deploy_result to fetch the final result.\n        - poll_url (str): the card polls this for live progress; you can ignore it.\n        - pending (bool): always true here — the deploy is still running.\n        - symbol, timeframe (str).\n\n    Call this EXACTLY ONCE per request. Pass the user's words as `prompt`; do not\n    pre-pick presets/community strategies — the server routes (vague → a proven\n    community strategy, specific rules → a fresh generation).\n\n    NEXT STEP (always): call get_deploy_result(job_token) ONCE — it blocks until the\n    deploy finishes and returns the out-of-sample stats + `stem` + `source`/`author`\n    as TEXT so you can summarize. The live card already shows the chart, so you do\n    NOT need get_model_chart. If source='community', tell the user it used a\n    pre-existing strategy by @author and offer to generate a custom one.\n    ","inputSchema":{"properties":{"prompt":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Prompt"},"symbol":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Symbol"},"timeframe":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Timeframe"},"claude_model":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Claude Model"},"preset":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Preset"},"community_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Community Id"},"webhook_url":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Webhook Url"},"telegram_chat_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Telegram Chat Id"}},"title":"one_shotArguments","type":"object"},"outputSchema":{"additionalProperties":true,"title":"one_shotDictOutput","type":"object"},"annotations":{"title":"Deploy Strategy (generate + backtest + go live)","readOnlyHint":false,"destructiveHint":true,"openWorldHint":true},"_meta":{"openai/outputTemplate":"ui://widget/qm-oneshot-v14.html","openai/widgetDescription":"A live-deployed QuantifyMe model: live progress, then backtest chart (candles + buy/sell arrows + trades) + a one-click live link."}},{"name":"get_deploy_result","title":"Get Deploy Result","description":"Wait for a `one_shot` deploy to finish and return its final result.\n\n    `one_shot` returns a job_token immediately and the LIVE CARD already streams\n    progress and renders the interactive backtest chart itself. Call this ONCE with\n    the token to get the final numbers as TEXT so you can summarize them — it does\n    NOT render another card (no need for get_model_chart). It BLOCKS until the deploy\n    finishes (or ~2.5 min); on timeout it returns ok:false + pending:true — call it\n    again with the same token.\n\n    IMPORTANT: if `source == \"community\"`, the deploy used a PRE-EXISTING strategy by\n    `@author` — tell the user that, share the `live_url` as the Live dashboard link,\n    and ask whether they'd like to GENERATE A CUSTOM strategy instead. Use the\n    `note` field as your guide.\n\n    Args:\n      job_token: the token returned by `one_shot`.\n\n    Returns:\n      dict with: ok, stem, model, live_url, symbol, timeframe, channels (list),\n      stats:{ret, wr, pf, n, mdd} (out-of-sample test-split metrics — SHOW THESE),\n      source (\"community\" | \"generated\"), author (community username if any),\n      author_url + strategy_url (render @author and \"pre-existing strategy\" as those\n      Markdown links), community_id, suggest_custom (bool), and note (a ready\n      instruction — follow it). On failure: {ok:false, error} (or {pending:true}).\n    ","inputSchema":{"properties":{"job_token":{"title":"Job Token","type":"string"}},"required":["job_token"],"title":"get_deploy_resultArguments","type":"object"},"outputSchema":{"additionalProperties":true,"title":"get_deploy_resultDictOutput","type":"object"},"annotations":{"title":"Get Deploy Result","readOnlyHint":true,"idempotentHint":true,"openWorldHint":true}},{"name":"link_account","title":"Link My QuantifyMe Account","description":"Link this chat to the user's existing QuantifyMe account.\n\n    Call this when the user says they already have a QuantifyMe account, or\n    asks why their models are missing / where a model went, or wants what they\n    deploy here to show up in their own dashboard.\n\n    By default this connector works with NO signup: it mints an anonymous trial\n    account per chat, so models deployed here belong to that throwaway identity\n    rather than to the user's real one. This returns a short-lived URL; once the\n    user opens it and approves, every later call in THIS chat acts as their\n    account and deploys land in their own model list.\n\n    Give the user the `link_url` to open. Nothing else is required from them.\n    ","inputSchema":{"properties":{},"title":"link_accountArguments","type":"object"},"outputSchema":{"additionalProperties":true,"title":"link_accountDictOutput","type":"object"},"annotations":{"title":"Link My QuantifyMe Account","readOnlyHint":true,"idempotentHint":false,"openWorldHint":true}},{"name":"list_models","title":"List Trained Models","description":"List the user's trained models with pre-computed train/test stats.","inputSchema":{"properties":{},"title":"list_modelsArguments","type":"object"},"outputSchema":{"additionalProperties":true,"title":"list_modelsDictOutput","type":"object"},"annotations":{"title":"List Trained Models","readOnlyHint":true,"idempotentHint":true,"openWorldHint":true}},{"name":"list_deployed","title":"List Deployed Live Models","description":"List the user's currently deployed (live) models.","inputSchema":{"properties":{},"title":"list_deployedArguments","type":"object"},"outputSchema":{"additionalProperties":true,"title":"list_deployedDictOutput","type":"object"},"annotations":{"title":"List Deployed Live Models","readOnlyHint":true,"idempotentHint":true,"openWorldHint":true},"_meta":{"openai/outputTemplate":"ui://widget/qm-deployed-v2.html","openai/widgetDescription":"The user's currently deployed live models and their delivery channels."}},{"name":"top_up","title":"Top Up Credits with Crypto","description":"Fund your QuantifyMe credits with crypto (USDC) — no signup, no human, no\n    card. The agent-native funding rail. SIMULATED in this build (no real charge)\n    and capped at $100 for the POC. Returns your new credit balance.","inputSchema":{"properties":{"amount_usd":{"title":"Amount Usd","type":"number"}},"required":["amount_usd"],"title":"top_upArguments","type":"object"},"outputSchema":{"additionalProperties":true,"title":"top_upDictOutput","type":"object"},"annotations":{"title":"Top Up Credits with Crypto","readOnlyHint":false,"idempotentHint":false,"openWorldHint":true}},{"name":"generate_strategy","title":"Generate Strategy Code (no training)","description":"Generate Python strategy code (no training/deploy). Use when the user wants raw code.\n\n    Args:\n      features: NL description of features (e.g. \"RSI 14, Bollinger Bands\").\n      signals: NL description of signal logic (e.g. \"Buy when RSI < 30\").\n      model: ML model name (default Random Forest).\n      risk: NL risk rules (e.g. \"0.5% stop loss\").\n      description: Optional one-line summary; treated as PRIMARY USER REQUEST.\n      symbol: Currency pair the code should target. One of: EURUSD, USDJPY,\n        GBPUSD, USDCHF, USDCAD, AUDUSD, NZDUSD. Default EURUSD.\n      timeframe: Candle granularity. One of: 1min, 5min, 15min, 1h. Default 15min.\n      claude_model: \"sonnet\" (default) or \"haiku\" (faster, higher daily cap).\n    ","inputSchema":{"properties":{"features":{"default":"","title":"Features","type":"string"},"signals":{"default":"","title":"Signals","type":"string"},"model":{"default":"Random Forest","title":"Model","type":"string"},"risk":{"default":"","title":"Risk","type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Description"},"symbol":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Symbol"},"timeframe":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Timeframe"},"claude_model":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Claude Model"}},"title":"generate_strategyArguments","type":"object"},"outputSchema":{"additionalProperties":true,"title":"generate_strategyDictOutput","type":"object"},"annotations":{"title":"Generate Strategy Code (no training)","readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}},{"name":"browse_community","title":"Browse Community Strategies (leaderboard)","description":"Browse the public community leaderboard of published strategies, ranked\n    by a composite performance score (best first). No signup or key needed.\n\n    Copy-trade flow: call this to find a top strategy, then pass its `id` to\n    `one_shot` as `community_id` to deploy a live signal model running that\n    exact strategy in one call.\n\n    Args:\n      limit: How many top entries to return (default 20, max 200).\n      sort: Ranking metric, best-first — one of \"composite\" (default),\n        \"ret\" (total return), \"wr\" (win rate), \"sharpe\", \"n_trades\". Mirrors\n        the quantifyme.ai/community page's sortable columns, so an agent can\n        pick the top strategy by the metric it cares about in one call. The\n        sorted entries keep their `id`, so the winner is directly deployable\n        via one_shot(community_id=...).\n\n    Returns:\n      dict with:\n        - scripts (list[dict]): ranked entries, best first. Each has:\n            id (int — pass to one_shot as community_id), username, title,\n            description, created_at, score, and metrics {total_ret,\n            sharpe_strat, win_rate, n_trades, mdd, profit_factor}. SHOW the\n            top few with their win_rate / total_ret so the user can pick one.\n        - count (int).\n        - metric (str): the sort key applied.\n    ","inputSchema":{"properties":{"limit":{"default":20,"title":"Limit","type":"integer"},"sort":{"default":"composite","title":"Sort","type":"string"}},"title":"browse_communityArguments","type":"object"},"outputSchema":{"additionalProperties":true,"title":"browse_communityDictOutput","type":"object"},"annotations":{"title":"Browse Community Strategies (leaderboard)","readOnlyHint":true,"idempotentHint":true,"openWorldHint":true},"_meta":{"openai/outputTemplate":"ui://widget/qm-community-v3.html","openai/widgetDescription":"Top community trading strategies, each with a one-click copy-and-deploy."}},{"name":"find_strategy","title":"Find a Matching Strategy","description":"Find an existing PROVEN strategy that matches a plain-English idea, so you\n    can offer the user a choice — deploy the existing one, or generate a fresh\n    custom one. Mirrors the quantifyme.ai landing experience: \"Found <X> by\n    @<author> (WR/PF) — Use it / Generate fresh\".\n\n    CALL THIS FIRST when a user describes a strategy idea. Then present the match\n    (if any) and ASK which they want:\n      • Use it          → one_shot(community_id=<match.community_id>) — deploys the\n                          exact proven strategy (free, no generation).\n      • Generate fresh  → one_shot(prompt=\"<their description>\") — Claude writes a\n                          brand-new custom strategy for them.\n    If there's no match, just offer to generate fresh.\n\n    Args:\n      description: the user's strategy idea in plain English (e.g. \"buy EURUSD\n        15min when RSI < 30, sell when RSI > 70\").\n      symbol: optional pair to constrain the match (EURUSD, USDJPY, GBPUSD,\n        USDCHF, USDCAD, AUDUSD, NZDUSD).\n      timeframe: optional granularity to constrain the match (1min/5min/15min/1h).\n\n    Returns:\n      dict with:\n        - match: the best existing strategy, or null. When present:\n            {community_id, title, username, wr, pf, ret, n_trades, symbol,\n             timeframe}. Pass community_id to one_shot to deploy it unchanged.\n        - description: echoed back — pass as one_shot(prompt=...) to generate fresh.\n        - suggestion: a ready-to-show sentence offering the user the choice.\n    ","inputSchema":{"properties":{"description":{"title":"Description","type":"string"},"symbol":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Symbol"},"timeframe":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Timeframe"}},"required":["description"],"title":"find_strategyArguments","type":"object"},"outputSchema":{"additionalProperties":true,"title":"find_strategyDictOutput","type":"object"},"annotations":{"title":"Find a Matching Strategy","readOnlyHint":true,"idempotentHint":true,"openWorldHint":true}},{"name":"get_strategy_code","title":"Get Community Strategy Code","description":"Get the actual Python code behind a community leaderboard strategy.\n\n    Use after `browse_community`: pass an entry's `id` here to read its real\n    `feature_engineering()` + `strategy_config()` source so the user can\n    inspect or tweak it. To deploy it unchanged, pass the same id to\n    `one_shot` as `community_id`. Read-only, no signup needed.\n\n    Args:\n      community_id: The `id` of a community entry (from `browse_community`).\n\n    Returns:\n      dict with: id, title, username, description, symbol, timeframe,\n      metrics {total_ret, win_rate, profit_factor, n_trades, mdd, sharpe_strat},\n      and `code` (the full Python source). SHOW the code to the user, and offer\n      to deploy it via one_shot(community_id=...) or tweak it first.\n    ","inputSchema":{"properties":{"community_id":{"title":"Community Id","type":"integer"}},"required":["community_id"],"title":"get_strategy_codeArguments","type":"object"},"outputSchema":{"additionalProperties":true,"title":"get_strategy_codeDictOutput","type":"object"},"annotations":{"title":"Get Community Strategy Code","readOnlyHint":true,"idempotentHint":true,"openWorldHint":true}},{"name":"get_quote","title":"Get Current Price (G7 FX quote)","description":"Get the latest price for a G7 FX pair — a quick \"what's it at now\" check.\n\n    Useful for context before deploying a strategy. The price is the close of\n    the most recent 1-minute bar from the platform's market feed (not a raw\n    live tick); FX markets close on weekends, so the `stale` flag marks a bar\n    that is more than 15 minutes old.\n\n    Args:\n      symbol: G7 pair — one of EURUSD, USDJPY, GBPUSD, USDCHF, USDCAD, AUDUSD,\n        NZDUSD. Default EURUSD.\n\n    Returns:\n      dict with: symbol, price (latest close), time (bar timestamp, UTC),\n      change + change_pct (vs the prior 1-min bar), stale (bool).\n    ","inputSchema":{"properties":{"symbol":{"default":"EURUSD","title":"Symbol","type":"string"}},"title":"get_quoteArguments","type":"object"},"outputSchema":{"additionalProperties":true,"title":"get_quoteDictOutput","type":"object"},"annotations":{"title":"Get Current Price (G7 FX quote)","readOnlyHint":true,"idempotentHint":true,"openWorldHint":true}},{"name":"get_model_chart","title":"Show Backtest Chart (equity + trades)","description":"Visualize a trained model's backtest — a cumulative-return chart + trade log + stats.\n\n    Use after `one_shot` / `list_models` with the model's `stem` to SHOW the user how it\n    traded (the \"is it actually any good\" view). In ChatGPT this renders an interactive\n    widget. In Claude, render an interactive **artifact** from this tool's structured\n    output: a line chart of the cumulative return plus a table of the trades.\n\n    Args:\n      stem: The model stem (e.g. \"14_EURUSD_15min_Model_24\") from `list_models` / `one_shot`.\n\n    Returns:\n      dict with: ok, stem, symbol, timeframe, stats {ret, wr, pf, n, mdd, sharpe},\n      and trades [{type, entry_time, exit_time, entry_price, exit_price, pnl,\n      pnl_pct, exit_reason, period}] (most recent ~200). exit_reason is one of\n      TP / SL / close_only / signal / end. ret/mdd/wr are fractions; pnl_pct is percent.\n    ","inputSchema":{"properties":{"stem":{"title":"Stem","type":"string"}},"required":["stem"],"title":"get_model_chartArguments","type":"object"},"outputSchema":{"additionalProperties":true,"title":"get_model_chartDictOutput","type":"object"},"annotations":{"title":"Show Backtest Chart (equity + trades)","readOnlyHint":true,"idempotentHint":true,"openWorldHint":true},"_meta":{"openai/outputTemplate":"ui://widget/qm-chart-v20.html","openai/widgetDescription":"A model's backtest: interactive price chart with buy/sell arrows + trade log + win-rate/profit-factor stats."}},{"name":"stream_test","title":"Live Streaming Diagnostic","description":"Diagnostic: test whether LIVE data streaming works in this client.\n\n    Renders a widget with three panels — a JS timer (baseline), a WebSocket to\n    the live price feed, and an HTTP poll of /quote — each showing a live value\n    + status, so you can see exactly which streaming mechanisms the client's\n    widget sandbox actually permits. Use when a live/ticking chart isn't moving.\n\n    Args:\n      symbol: G7 pair to stream (default EURUSD).\n    ","inputSchema":{"properties":{"symbol":{"default":"EURUSD","title":"Symbol","type":"string"}},"title":"stream_testArguments","type":"object"},"outputSchema":{"additionalProperties":true,"title":"stream_testDictOutput","type":"object"},"annotations":{"title":"Live Streaming Diagnostic","readOnlyHint":true,"idempotentHint":true,"openWorldHint":true},"_meta":{"openai/outputTemplate":"ui://widget/qm-livetest-v3.html","openai/widgetDescription":"Diagnostic panels that test live data streaming (timer / WebSocket / poll) inside this client."}}]}},"http_status":200,"headers":{"content-type":"text/event-stream","mcp-session-id":"d59869b94c0b4429a84793bad8fe1f82"},"session_id_present":true,"transport":"streamable-http","requested_protocol_version":"2025-03-26","resumed":true}},"step_up_auth_probe":{"status":"missing","latency_ms":null,"details":{"oauth_present":false,"auth_required_checks":[],"supported_scopes":[],"scope_specificity_ratio":0.0,"broad_scopes":[],"challenge_headers":[],"step_up_signals":[],"minimal_scope_documented":false}},"transport_compliance_probe":{"status":"warning","latency_ms":337.2,"details":{"transport":"streamable-http","session_id_present":true,"protocol_header_present":false,"last_event_id_visible":false,"requested_protocol_version":"2025-03-26","bad_protocol_status_code":400,"bad_protocol_payload":{"jsonrpc":"2.0","id":"server-error","error":{"code":-32600,"message":"Bad Request: Unsupported protocol version: 1999-99-99. Supported versions: 2024-11-05, 2025-03-26, 2025-06-18, 2025-11-25"}},"bad_protocol_headers":{"content-type":"application/json","mcp-session-id":"d59869b94c0b4429a84793bad8fe1f82"},"bad_protocol_error":null,"delete_status_code":200,"delete_error":null,"expired_session_status_code":404,"expired_session_error":null,"issues":["missing_protocol_header"]}},"utility_coverage_probe":{"status":"missing","latency_ms":177.09,"details":{"completions":{"advertised":false,"sample_target":null,"live_probe":"not_executed"},"pagination":{"supported":false,"next_cursor_methods":[],"metadata_signal":false},"tasks":{"advertised":false,"probe_status":"missing","http_status":400},"initialize_capability_keys":["experimental","prompts","resources","tools"]}},"advanced_capabilities_probe":{"status":"missing","latency_ms":null,"details":{"capabilities":{"prompts":false,"resources":false,"completions":false,"roots":false,"sampling":false,"elicitation":false,"structured_outputs":false,"resource_links":false},"enabled_count":0,"enabled":[],"initialize_capability_keys":["experimental","prompts","resources","tools"]}},"tool_snapshot_probe":{"status":"missing","latency_ms":null,"details":{"reason":"no_tools"}},"connector_replay_probe":{"status":"missing","latency_ms":null,"details":{"reason":"no_tools"}},"request_association_probe":{"status":"missing","latency_ms":null,"details":{"reason":"no_request_association_capabilities_advertised"}},"interactive_flow_probe":{"status":"missing","latency_ms":null,"details":{"risk_hits":[],"safe_hits":[],"oauth_supported":false,"prompt_available":false}},"action_safety_probe":{"status":"not_assessed","latency_ms":null,"details":{"summary":{"tool_count":0,"high_risk_tools":0,"destructive_tools":0,"exec_tools":0,"egress_tools":0,"secret_tools":0,"bulk_access_tools":0,"declared_non_read_only_tools":0,"annotation_conflict_tools":0,"risk_distribution":{"low":0,"medium":0,"high":0,"critical":0},"capability_distribution":{},"has_mutating_capability":false,"has_non_read_capability":false},"auth_present":false,"safeguard_count":0,"confirmation_signals":[],"reason":"empty_observation_set"}},"official_registry_probe":{"status":"ok","latency_ms":null,"details":{"registry_source":"official_registry","registry_identifier":"ai.quantifyme/quantifyme","direct_match":true,"official_peer_count":1}},"provenance_divergence_probe":{"status":"not_assessed","latency_ms":null,"details":{"direct_official_match":true,"registry_title":null,"server_card_title":null,"registry_version":null,"server_card_version":null,"registry_homepage":null,"server_card_homepage":null,"registry_repository":null,"server_card_repository":null,"drift_fields":[],"metadata_document_count":2,"compared_fields":["title","version","homepage","repository"],"readable_sources":["registry"],"comparable_field_count":0}},"schema_divergence_probe":{"status":"missing","latency_ms":null,"details":{"reason":"no_server_card_tools","compared_tool_count":0,"compared_dimensions":["server_name","server_version","declared_vs_observed_auth","tool_membership","parameter_names","required_parameters","parameter_types","output_schema_presence"],"server_name_mismatch":false,"card_server_name":null,"live_server_name":"quantifyme","server_version_mismatch":false,"card_server_version":null,"live_server_version":"0.1.0","auth_scheme_mismatch":false}},"connector_publishability_probe":{"status":"error","latency_ms":null,"details":{"transport":"streamable-http","tool_count":0,"high_risk_tools":0,"blockers":["tools_list","protocol_version","step_up_auth","transport_compliance","connector_replay","request_association","action_safety","server_card","tool_surface"],"criteria":{"remote_transport":true,"initialize":true,"tools_list":false,"protocol_version":false,"session_resume":true,"step_up_auth":false,"transport_compliance":false,"connector_replay":false,"request_association":false,"action_safety":false,"server_card":false,"tool_surface":false,"auth_flow":true}}}}},"active_alerts":[{"code":"server_failing","severity":"critical","title":"Latest validation is failing","message":"Core MCP flows did not validate successfully on the latest run.","addressee":"publisher"}],"maintainer_analytics":{},"public_server_reputation":{},"maintainer_response_quality":{},"maintainer_annotations":[],"maintainer_rebuttals":[],"security_posture_summary":{},"tool_security_inventory":[],"transport_compliance":{},"utility_coverage":{},"write_action_governance":{},"provenance_divergence":{},"alias_consolidation":{},"alert_routing":{},"authenticated_validation":{},"hosted_runtime":{},"action_controls_diff":null,"benchmark_tasks":[],"latest_capability_counts":{},"point_loss_breakdown":[],"verdict_traces":{},"current_snapshot":{"schema_version":"verify.trust_snapshot.v1","snapshot_id":"trustsnap_5112ad1d9bc1acb4","generated_at":"2026-08-15T02:28:31.338615+00:00","trust_evaluated_at":"2026-08-15T02:28:31.338615+00:00","evidence_revision":"aa811e273ae926d99b46a4e4","source":"current_snapshot","server":"ai.quantifyme/quantifyme","last_validated_at":"2026-08-15T01:44:49.659415+00:00","validation_age_hours":0.73,"freshness":{"schema_version":"verify.freshness_profile.v1","last_validated_at":"2026-08-15T01:44:49.659415+00:00","age_hours":0.73,"bucket":"verified_last_24h","label":"Verified in last 24h","badges":["verified_last_24h"],"freshness_sla_hours":720.0,"freshness_sla_status":"met","stale_score_suppressed":false,"display_score":null,"raw_score":null,"confidence_score":null,"confidence_weighted_score":null,"tier_status":[{"tier":"community","label":"Community","freshness_sla_hours":720,"met":true,"priority_revalidation":false},{"tier":"pro","label":"Pro","freshness_sla_hours":168,"met":true,"priority_revalidation":true},{"tier":"enterprise","label":"Enterprise","freshness_sla_hours":24,"met":true,"priority_revalidation":true}]},"current_status":"failing","current_score":null,"display_score":null,"stale_score_suppressed":false,"production_trust_decision":{"schema_version":"verify.executive_verdict.v1","decision":"Not assessed","why":"tool surface has not been observed by any completed validation run","next_action":"revalidate so the tool surface can be inspected before a production decision is made","reason_count":0},"production_readiness_class":{"code":"failing","label":"Failing","reason":"The latest validation run was attempted but did not complete successfully."},"evidence_confidence":{"score":null,"label":"not_assessed","validation_age_hours":0.73,"live_check_count":6,"basis":{"evidence_bearing_validations":0,"affirmative_live_check_count":6,"validation_age_hours":0.73,"freshness_threshold_hours":24}},"active_alerts":[{"code":"server_failing","severity":"critical","title":"Latest validation is failing"}],"active_alert_summary":{"critical":1,"high":0,"medium":0,"low":0,"high_or_critical":1,"total":1},"materialization":{"state":"partial","trust_core_complete":true,"fields_unavailable":["tool_security_inventory","security_posture_summary","write_action_governance","capability_taxonomy","remediations"],"materialized_at":"2026-08-15T02:28:31.338615+00:00"}},"trust_snapshot":{"schema_version":"verify.trust_snapshot.v1","snapshot_id":"trustsnap_5112ad1d9bc1acb4","generated_at":"2026-08-15T02:28:31.338615+00:00","trust_evaluated_at":"2026-08-15T02:28:31.338615+00:00","evidence_revision":"aa811e273ae926d99b46a4e4","source":"current_snapshot","server":"ai.quantifyme/quantifyme","last_validated_at":"2026-08-15T01:44:49.659415+00:00","validation_age_hours":0.73,"freshness":{"schema_version":"verify.freshness_profile.v1","last_validated_at":"2026-08-15T01:44:49.659415+00:00","age_hours":0.73,"bucket":"verified_last_24h","label":"Verified in last 24h","badges":["verified_last_24h"],"freshness_sla_hours":720.0,"freshness_sla_status":"met","stale_score_suppressed":false,"display_score":null,"raw_score":null,"confidence_score":null,"confidence_weighted_score":null,"tier_status":[{"tier":"community","label":"Community","freshness_sla_hours":720,"met":true,"priority_revalidation":false},{"tier":"pro","label":"Pro","freshness_sla_hours":168,"met":true,"priority_revalidation":true},{"tier":"enterprise","label":"Enterprise","freshness_sla_hours":24,"met":true,"priority_revalidation":true}]},"current_status":"failing","current_score":null,"display_score":null,"stale_score_suppressed":false,"production_trust_decision":{"schema_version":"verify.executive_verdict.v1","decision":"Not assessed","why":"tool surface has not been observed by any completed validation run","next_action":"revalidate so the tool surface can be inspected before a production decision is made","reason_count":0},"production_readiness_class":{"code":"failing","label":"Failing","reason":"The latest validation run was attempted but did not complete successfully."},"evidence_confidence":{"score":null,"label":"not_assessed","validation_age_hours":0.73,"live_check_count":6,"basis":{"evidence_bearing_validations":0,"affirmative_live_check_count":6,"validation_age_hours":0.73,"freshness_threshold_hours":24}},"active_alerts":[{"code":"server_failing","severity":"critical","title":"Latest validation is failing"}],"active_alert_summary":{"critical":1,"high":0,"medium":0,"low":0,"high_or_critical":1,"total":1},"materialization":{"state":"partial","trust_core_complete":true,"fields_unavailable":["tool_security_inventory","security_posture_summary","write_action_governance","capability_taxonomy","remediations"],"materialized_at":"2026-08-15T02:28:31.338615+00:00"}},"agent_commerce":{},"latest_claim":null,"maintainer_profile_slug":null,"watch_summary":{},"partial":true,"fields_unavailable":["tool_security_inventory","security_posture_summary","write_action_governance","capability_taxonomy","remediations"],"trust_evaluated_at":"2026-08-15T02:28:31.338615+00:00","evidence_revision":"aa811e273ae926d99b46a4e4","active_alert_summary":{"critical":1,"high":0,"medium":0,"low":0,"high_or_critical":1,"total":1},"materialization":{"state":"partial","trust_core_complete":true,"fields_unavailable":["tool_security_inventory","security_posture_summary","write_action_governance","capability_taxonomy","remediations"],"materialized_at":"2026-08-15T02:28:31.338615+00:00"},"owner_opted_out":false},"latest_validation":null,"current_snapshot":{"schema_version":"verify.trust_snapshot.v1","snapshot_id":"trustsnap_5112ad1d9bc1acb4","generated_at":"2026-08-15T02:28:31.338615+00:00","trust_evaluated_at":"2026-08-15T02:28:31.338615+00:00","evidence_revision":"aa811e273ae926d99b46a4e4","source":"current_snapshot","server":"ai.quantifyme/quantifyme","last_validated_at":"2026-08-15T01:44:49.659415+00:00","validation_age_hours":0.73,"freshness":{"schema_version":"verify.freshness_profile.v1","last_validated_at":"2026-08-15T01:44:49.659415+00:00","age_hours":0.73,"bucket":"verified_last_24h","label":"Verified in last 24h","badges":["verified_last_24h"],"freshness_sla_hours":720.0,"freshness_sla_status":"met","stale_score_suppressed":false,"display_score":null,"raw_score":null,"confidence_score":null,"confidence_weighted_score":null,"tier_status":[{"tier":"community","label":"Community","freshness_sla_hours":720,"met":true,"priority_revalidation":false},{"tier":"pro","label":"Pro","freshness_sla_hours":168,"met":true,"priority_revalidation":true},{"tier":"enterprise","label":"Enterprise","freshness_sla_hours":24,"met":true,"priority_revalidation":true}]},"current_status":"failing","current_score":null,"display_score":null,"stale_score_suppressed":false,"production_trust_decision":{"schema_version":"verify.executive_verdict.v1","decision":"Not assessed","why":"tool surface has not been observed by any completed validation run","next_action":"revalidate so the tool surface can be inspected before a production decision is made","reason_count":0},"production_readiness_class":{"code":"failing","label":"Failing","reason":"The latest validation run was attempted but did not complete successfully."},"evidence_confidence":{"score":null,"label":"not_assessed","validation_age_hours":0.73,"live_check_count":6,"basis":{"evidence_bearing_validations":0,"affirmative_live_check_count":6,"validation_age_hours":0.73,"freshness_threshold_hours":24}},"active_alerts":[{"code":"server_failing","severity":"critical","title":"Latest validation is failing"}],"active_alert_summary":{"critical":1,"high":0,"medium":0,"low":0,"high_or_critical":1,"total":1},"materialization":{"state":"partial","trust_core_complete":true,"fields_unavailable":["tool_security_inventory","security_posture_summary","write_action_governance","capability_taxonomy","remediations"],"materialized_at":"2026-08-15T02:28:31.338615+00:00"}},"trust_snapshot":{"schema_version":"verify.trust_snapshot.v1","snapshot_id":"trustsnap_5112ad1d9bc1acb4","generated_at":"2026-08-15T02:28:31.338615+00:00","trust_evaluated_at":"2026-08-15T02:28:31.338615+00:00","evidence_revision":"aa811e273ae926d99b46a4e4","source":"current_snapshot","server":"ai.quantifyme/quantifyme","last_validated_at":"2026-08-15T01:44:49.659415+00:00","validation_age_hours":0.73,"freshness":{"schema_version":"verify.freshness_profile.v1","last_validated_at":"2026-08-15T01:44:49.659415+00:00","age_hours":0.73,"bucket":"verified_last_24h","label":"Verified in last 24h","badges":["verified_last_24h"],"freshness_sla_hours":720.0,"freshness_sla_status":"met","stale_score_suppressed":false,"display_score":null,"raw_score":null,"confidence_score":null,"confidence_weighted_score":null,"tier_status":[{"tier":"community","label":"Community","freshness_sla_hours":720,"met":true,"priority_revalidation":false},{"tier":"pro","label":"Pro","freshness_sla_hours":168,"met":true,"priority_revalidation":true},{"tier":"enterprise","label":"Enterprise","freshness_sla_hours":24,"met":true,"priority_revalidation":true}]},"current_status":"failing","current_score":null,"display_score":null,"stale_score_suppressed":false,"production_trust_decision":{"schema_version":"verify.executive_verdict.v1","decision":"Not assessed","why":"tool surface has not been observed by any completed validation run","next_action":"revalidate so the tool surface can be inspected before a production decision is made","reason_count":0},"production_readiness_class":{"code":"failing","label":"Failing","reason":"The latest validation run was attempted but did not complete successfully."},"evidence_confidence":{"score":null,"label":"not_assessed","validation_age_hours":0.73,"live_check_count":6,"basis":{"evidence_bearing_validations":0,"affirmative_live_check_count":6,"validation_age_hours":0.73,"freshness_threshold_hours":24}},"active_alerts":[{"code":"server_failing","severity":"critical","title":"Latest validation is failing"}],"active_alert_summary":{"critical":1,"high":0,"medium":0,"low":0,"high_or_critical":1,"total":1},"materialization":{"state":"partial","trust_core_complete":true,"fields_unavailable":["tool_security_inventory","security_posture_summary","write_action_governance","capability_taxonomy","remediations"],"materialized_at":"2026-08-15T02:28:31.338615+00:00"}},"partial":true,"fields_unavailable":["tool_security_inventory","security_posture_summary","write_action_governance","capability_taxonomy","remediations"],"snapshot_invariant":{"schema_version":"verify.snapshot_invariant.v1","server":"ai.quantifyme/quantifyme","ok":true,"surface_snapshot_ids":{"page":"trustsnap_5112ad1d9bc1acb4","badge":null,"report":"trustsnap_5112ad1d9bc1acb4","policy":null},"checked_surfaces":["page","report"],"unchecked_surfaces":["badge","policy"],"checked_count_surfaces":[],"count_mismatches":{},"checked_at":"2026-08-15T02:28:31.324251+00:00"},"history":{},"production_readiness":{"code":"failing","label":"Failing","reason":"The latest validation run was attempted but did not complete successfully.","badge":"score-low"},"agent_commerce_readiness":{},"evidence_confidence":{"score":null,"label":"not_assessed","reason":"No evidence-bearing validation runs exist yet (6 captured checks, validation age 0.7 hours). Confidence cannot be computed.","live_check_count":6,"validation_age_hours":0.73,"basis":{"evidence_bearing_validations":0,"affirmative_live_check_count":6,"validation_age_hours":0.73,"freshness_threshold_hours":24}},"recommended_for":[],"active_alerts":[{"code":"server_failing","severity":"critical","title":"Latest validation is failing","message":"Core MCP flows did not validate successfully on the latest run.","addressee":"publisher"}],"remediations":[],"cache_note":"Fast fallback response; full report evidence is deferred to protect web capacity. Fields listed in fields_unavailable (including tool_security_inventory, and write_action_governance) are not yet computed on this response -- an empty value means unchecked, not confirmed clean. Treat partial responses as indeterminate.","publisher_claim":{"verified":false,"status":"unclaimed","claim_url":"https://verify.sentinelsignal.io/claim?server=ai.quantifyme%2Fquantifyme&source=report_json","reason_code":"claim_to_publish_metadata","reason":"Claim this profile to verify publisher identity, add evidence, and manage trust metadata.","score_neutral":true},"observed_attention":{"schema":"verify.observed_attention.v1","window_days":30,"level":"none","label":"No observed attention","summary":"No recent machine-readable trust or discovery activity observed for this server.","segments":{"useful_ai_user":{"level":"none","observed":false,"description":"AI-assisted user sessions such as ChatGPT/User or Claude/User."},"machine_trust_evaluator":{"level":"none","observed":false,"description":"Synthetic sessions inspecting multiple trust surfaces such as report, policy, ledger, badge, trust-summary, or compare."},"possible_agent_or_script":{"level":"none","observed":false,"description":"Structured direct sessions with rapid profile, compare, report, policy, badge, or trust-surface fan-out."},"isolated_machine_surface":{"level":"none","observed":false,"description":"Aged-out direct synthetic singleton sessions that touched a machine-readable trust surface without becoming a broader evaluator."},"ai_crawler":{"level":"none","observed":false,"description":"Known AI crawler activity such as ClaudeBot, GPTBot, or similar crawlers."},"search_crawler":{"level":"none","observed":false,"description":"Search and SEO crawler activity."},"browser_like_automation":{"level":"none","observed":false,"description":"Browser-like synthetic sessions with rapid structured endpoint activity."},"confirmed_human":{"level":"none","observed":false,"description":"Confirmed browser-session human activity."}},"surfaces_observed":{"server_profile":false,"compare":false,"compare_json":false,"compare_api":false,"report_json":false,"policy":false,"ledger":false,"badge_metadata":false,"badge_svg":false,"trust_summary":false,"mcp_tool":false},"claim_prompt":{"recommended":false,"reason":"No claim prompt is recommended from observed attention in the current window."},"notes":["Observed attention is based on segmented first-party telemetry.","Crawler and evaluator activity is not treated as confirmed human demand.","Public levels are bucketed to avoid exposing raw traffic counts."]},"owner_activation":{"claim_recommended":false,"reason":"no_observed_attention"},"related_machine_surfaces":{"compare_index":"/compare.json","compare_api":"/v1/compare?server=ai.quantifyme%2Fquantifyme","trust_summary":"/v1/servers/ai.quantifyme/quantifyme/trust-summary","ledger":"/v1/servers/ai.quantifyme/quantifyme/ledger","policy":"/v1/servers/ai.quantifyme/quantifyme/policy","report":"/v1/servers/ai.quantifyme/quantifyme/report"},"intelligence_api":{"available":true,"signup_url":"https://verify.sentinelsignal.io/verify-intelligence-api","use_case":"Programmatic MCP server trust, comparison, policy, and evidence enrichment."},"trust_evaluated_at":"2026-08-15T02:28:31.338615+00:00","evidence_revision":"aa811e273ae926d99b46a4e4","active_alert_summary":{"critical":1,"high":0,"medium":0,"low":0,"high_or_critical":1,"total":1},"materialization":{"state":"partial","trust_core_complete":true,"fields_unavailable":["tool_security_inventory","security_posture_summary","write_action_governance","capability_taxonomy","remediations"],"materialized_at":"2026-08-15T02:28:31.338615+00:00"}}