Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

dMoERA Creator

REMOTE · DMOERA.XYZ · SCANNED SEP 20

Build, backtest, and deploy crypto trading strategies via MCP with 7-stage validation.

Available components

+4 this week 71 Trust /100
Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →

Endpoint Security57
Transport & Reachability100
Schema Quality & AI Usability86
  • 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
  • AI-judged instruction clarity (excellent).Pass
  • Tool/resource definitions use about 4585 tokens (~99/item across 46 items; 44 tools + 2 resources), lean.Pass
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management58
  • Stability check failed: schema churn in the 25 days we've observed: 4 tool removals, 0 breaking changes, 0 auth/transport breaks, 32 additions. See how to fix → Fail
Tool Coverage71
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 0% of tool parameters carry a description.Fail
  • Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety75
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • 0 of 1 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "remove_bot_from_fund" implies "remove" and declares no destructiveHint at all, which the MCP spec reads as destructive by default. See how to fix → Fail
  • An AI judge read all 46 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

How do I install the dMoERA Creator MCP server?

dMoERA Creator is a hosted endpoint at https://dmoera.xyz/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

remote · dmoera.xyz

# add to Claude Code
claude mcp add --transport http cachecarti-dmoera-creator 'https://dmoera.xyz/mcp'
// .cursor/mcp.json
{
  "mcpServers": {
    "cachecarti-dmoera-creator": {
      "url": "https://dmoera.xyz/mcp"
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "cachecarti-dmoera-creator": {
      "type": "http",
      "url": "https://dmoera.xyz/mcp"
    }
  }
}
# ~/.codex/config.toml
[mcp_servers.cachecarti-dmoera-creator]
url = "https://dmoera.xyz/mcp"
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "cachecarti-dmoera-creator": {
      "type": "remote",
      "url": "https://dmoera.xyz/mcp",
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add cachecarti-dmoera-creator --url 'https://dmoera.xyz/mcp' --transport streamable-http
# ~/.hermes/config.yaml
mcp_servers:
  cachecarti-dmoera-creator:
    url: "https://dmoera.xyz/mcp"
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "cachecarti-dmoera-creator": {
      "Transport": "http",
      "Url": "https://dmoera.xyz/mcp"
    }
  }
}
# add to Vellum
assistant mcp add cachecarti-dmoera-creator -t streamable-http -u 'https://dmoera.xyz/mcp'
// mcp.json
{
  "mcpServers": {
    "cachecarti-dmoera-creator": {
      "type": "http",
      "url": "https://dmoera.xyz/mcp"
    }
  }
}

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 20 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 55 to 58.

  • 18 Sept 26 +47
    • Stability: unverified → fail security
    • A breaking change shipped without a version bump: still 1.30.0 security
    • Tool “browse_fund_marketplace” was removed security
    • Injection markers: unverified → pass security
    • Transport: fail → pass security
    • Authorization: Authorisation not fully verified: no authorisation is required to call this server, and 44 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe. security
    • The server rewrote its instructions, which are the text every model session reads security
    • Tool “activate_fund” rewrote its description, which is the text the model reads security
    • Tool “add_bot_to_fund” rewrote its description, which is the text the model reads security
    • Tool “close_fund” rewrote its description, which is the text the model reads security
    • Tool “create_fund” rewrote its description, which is the text the model reads security
    • Tool “deactivate_fund” rewrote its description, which is the text the model reads security
    • Tool “get_active_fund” rewrote its description, which is the text the model reads security
    • Tool “list_funds” rewrote its description, which is the text the model reads security
    • Tool “remove_bot_from_fund” rewrote its description, which is the text the model reads security
    • Tool “swap_bot_in_fund” rewrote its description, which is the text the model reads security
    • Tool “update_fund_caps” rewrote its description, which is the text the model reads security
    • Tool “update_fund_weights” rewrote its description, which is the text the model reads security
    • “activate_fund” dropped the required parameter “user_id” functional
    • “add_bot_to_fund” dropped the required parameter “user_id” functional
    • “close_fund” dropped the required parameter “user_id” functional
    • “create_fund” dropped the required parameter “user_id” functional
    • “deactivate_fund” dropped the required parameter “user_id” functional
    • “get_active_fund” dropped the required parameter “user_id” functional
    • “list_funds” dropped the required parameter “user_id” functional
    • “remove_bot_from_fund” dropped the required parameter “user_id” functional
    • “swap_bot_in_fund” dropped the required parameter “user_id” functional
    • “update_fund_caps” dropped the required parameter “user_id” functional
    • “update_fund_weights” dropped the required parameter “user_id” functional
    • Endpoint reachability: not serving MCP → reachable functional
    • Tool coverage: unverified → 100 functional
    • Schema quality: unverified → 100 functional
    • MCP protocol: unverified → pass functional
    • Schema quality: fail → pass functional
    • New tool “generate_fund_report_card” functional
    • New tool “get_fund_analytics” functional
    • New tool “get_fund_live_pnl” functional
    • New tool “get_fund_performance” functional
    • New tool “get_fund_positions” functional
    • New tool “get_fund_report_card” functional
    • New tool “get_fund_trades” functional
    • New tool “get_vault_history” functional
    • New tool “get_vault_status” functional
    • New tool “list_my_bots” functional
    • New tool “list_open_source_bots” functional
    • New tool “run_fund_historical_test” functional
    • New tool “tag_team_badges” functional
    • New tool “tag_team_history” functional
    • New tool “tag_team_info” functional
    • New tool “tag_team_leaderboard” functional
    • New tool “tag_team_templates” functional
    • New tool “tag_team_tier” functional
    • New tool “tag_team_weekly” functional
  • 15 Sept 26 −44
    • Endpoint reachability: reachable → not serving MCP security
    • Stability: fail → unverified security
    • Tool safety: pass → unverified security
    • Transport: pass → fail security
    • Authorization: Authorisation not fully verified: no authorisation is required to connect, but we couldn't read the tool list to see what that exposes. security
    • Schema quality: 100 → unverified functional
    • Capabilities: pass → unverified functional
    • Tool coverage: 100 → unverified functional
  • 13 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 32 to 35.

  • 11 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 25 to 28.

  • 9 Sept 26 +1
    • Server version: 1.29.1 → 1.30.0 functional
  • 7 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 11 to 14.

  • 5 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 4 to 8.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 20 Sept 2026 · Probed https://dmoera.xyz/mcp

TLS valid

Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .

Subject Issuer Valid from Valid until Key Signature Serial
CN=dmoera.xyz CN=YE1,O=Let's Encrypt,C=US 10 Sept 2026 9 Dec 2026 ECDSA 256 ECDSA-SHA384 6daf59dcb8392a6565dc76afa665cfc598a
SANs: dmoera.xyz
CN=YE1,O=Let's Encrypt,C=US (CA) CN=Root YE,O=ISRG,C=US 3 Sept 2025 2 Sept 2028 ECDSA 384 ECDSA-SHA384 5ddd70dd31f801c85c186a7a04b80afe
CN=Root YE,O=ISRG,C=US (CA) CN=ISRG Root X2,O=Internet Security Research Group,C=US 13 May 2026 2 Sept 2032 ECDSA 384 ECDSA-SHA384 872165fc34b6e5fba8add5b3705fb53a
CN=ISRG Root X2,O=Internet Security Research Group,C=US (CA) CN=ISRG Root X1,O=Internet Security Research Group,C=US 13 May 2026 2 Sept 2032 ECDSA 384 SHA256-RSA 6c8f1dc727c7117f7baf853ac980f9cd

Background: What to check on a remote MCP endpoint →

DNSSEC insecure

Validation of dmoera.xyz. Not signed

Zone DS Keys Algorithms Outcome
. trust_anchor 20326, 38696 8, 8 Verified
xyz. present 3599, 18130 8, 8 Verified
dmoera.xyz. absent Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation
Authentication No authorisation required

The endpoint answered without asking for a token. Anyone who knows the URL can reach it.

Result No authorisation required
HTTP status 200

Background: How OAuth 2.1 works in the 2026 MCP spec →

Transports 2 probes
Transport URL Outcome Status Location
streamable-http https://dmoera.xyz/mcp Verified 200
http (plaintext) http://dmoera.xyz/mcp HTTPS enforced 301 https://dmoera.xyz/mcp
MCP tools · 44 exposed · ~4,254 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
activate_fund ~86

Activate Manager Mode for a fund — starts the personal router. This deploys capital across the fund's roster bots according to their weights and the fund's risk caps. The main platform router is paused while Manager Mode is active. Args: fund_id: The fund's ID. Returns success or error.

NameTypeReqDescription
fund_idintegeryes
NameTypeReqDescription
resultstringyes

No examples provided.

add_bot_to_fund ~150

Add a bot to a fund's roster. Personal funds can only contain the authenticated user's OWN bots. Use list_my_bots to see eligible strategies. Args: fund_id: The fund's ID. bot_id: The bot to add (e.g. "momentum_eth_v3"). bot_domain: The bot's domain (e.g. "eth_usdc", "btc_usdc"). weight: Initial allocation weight in percent (default 20.0). Returns the updated roster entry.

NameTypeReqDescription
bot_domainstringyes
bot_idstringyes
fund_idintegeryes
weightnumber
NameTypeReqDescription
resultstringyes

No examples provided.

close_fund ~72

Permanently close a hedge fund. Returns all capital to the wallet. This is irreversible. The fund's performance record is preserved for reporting and copy-trader settlement. Args: fund_id: The fund's ID. Returns success or error.

NameTypeReqDescription
fund_idintegeryes
NameTypeReqDescription
resultstringyes

No examples provided.

create_fund ~184

Create a new personal hedge fund for the authenticated user. The fund starts inactive — call activate_fund to start Manager Mode. Initial capital is taken from the user's wallet_cash at creation time. Personal funds can ONLY contain the user's own bots — use list_my_bots to see eligible strategies. Args: fund_name: Display name for the fund. router_preset: Risk profile — one of "prudent", "standard", "opportunistic", "unrestricted". aggression_mode: "normal" or "yolo". philosophy: Optional text describing the fund's investment thesis (max 2000 chars). Returns the created fund object.

NameTypeReqDescription
aggression_modestring
fund_namestring
philosophystring
router_presetstring
NameTypeReqDescription
resultstringyes

No examples provided.

deactivate_fund ~62

Deactivate Manager Mode — returns to the main platform router. Closes all roster bot positions and returns capital to the wallet. Args: fund_id: The fund's ID. Returns success or error.

NameTypeReqDescription
fund_idintegeryes
NameTypeReqDescription
resultstringyes

No examples provided.

estimate_swap_cost ~148

Estimate the friction cost (in bps) of swapping a bot in a fund. Use this before calling swap_bot_in_fund to understand the cost of winding down the old bot's positions and opening new ones. Args: fund_id: The fund's ID. old_bot_id: The bot being considered for removal. new_bot_id: The replacement bot. new_bot_domain: The replacement bot's domain. Returns the estimated friction in bps of fund AUM.

NameTypeReqDescription
fund_idintegeryes
new_bot_domainstringyes
new_bot_idstringyes
old_bot_idstringyes
NameTypeReqDescription
resultstringyes

No examples provided.

generate_fund_report_card ~56

Generate a new report card for a fund (immutable once saved). Args: fund_id: The fund's ID. Returns the generated report card with grades and analysis.

NameTypeReqDescription
fund_idintegeryes
NameTypeReqDescription
resultstringyes

No examples provided.

get_active_fund ~38

Get the authenticated user's currently active (Manager Mode) fund. Returns the active fund object or null if Manager Mode is not active.

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes

No examples provided.

get_bot_profile ~96

Get detailed profile and performance stats for a specific bot. Args: bot_id: The bot identifier (e.g. "Eth_Full_Ensemble"). Returns JSON with: bot_id, domain, strategy type, full performance metrics (Sharpe, Sortino, Calmar, profit factor, regime breakdown), current position if any, and recent trade history.

NameTypeReqDescription
bot_idstringyes
NameTypeReqDescription
resultstringyes

No examples provided.

get_current_prices ~67

Get current live prices for all tracked symbols. Returns JSON with symbol → {price, bid, ask, source, change_24h_pct, volume_24h} for ETHUSDT, BTCUSDT, SOLUSDT from Binance/Coinbase/Kraken.

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes

No examples provided.

get_feature_catalog ~107

List all data feeds available to strategies via ctx.features. Features are external data that strategies can read during on_bar(). Each feature has a status: "live" (available now, requirable) or "planned" (roadmap, not yet available). Only live features can be used in required_features. Returns JSON array of features with: key, label, description, unit, example, cadence, source, status, and backtest_mode.

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes

No examples provided.

get_fund ~72

Get detailed info for a specific hedge fund, including its roster. Args: fund_id: The fund's ID. Returns a JSON object with fund details and active roster entries (bot_id, bot_name, weight, domain, current_pnl).

NameTypeReqDescription
fund_idintegeryes
NameTypeReqDescription
resultstringyes

No examples provided.

get_fund_analytics ~62

Get real-time analytics for a fund dashboard. Args: fund_id: The fund's ID. Returns fund analytics: allocation breakdown, per-bot performance, risk metrics, and benchmark comparison.

NameTypeReqDescription
fund_idintegeryes
NameTypeReqDescription
resultstringyes

No examples provided.

get_fund_live_pnl ~62

Build a real-time PnL chart from closed positions for a fund's roster. Args: fund_id: The fund's ID. Returns a JSON series of cumulative PnL points.

NameTypeReqDescription
fund_idintegeryes
NameTypeReqDescription
resultstringyes

No examples provided.

get_fund_performance ~77

Get performance snapshots for a fund's P&L graph. Args: fund_id: The fund's ID. limit: Max snapshots to return (default 100). Returns a JSON time-series of AUM/PnL snapshots.

NameTypeReqDescription
fund_idintegeryes
limitinteger
NameTypeReqDescription
resultstringyes

No examples provided.

get_fund_positions ~59

Get open positions for a fund's roster bots. Args: fund_id: The fund's ID. Returns a JSON array of open positions with entry/exit prices and PnL.

NameTypeReqDescription
fund_idintegeryes
NameTypeReqDescription
resultstringyes

No examples provided.

get_fund_report_card ~55

Get the latest report card for a fund. Args: fund_id: The fund's ID. Returns the latest immutable report card, or null if none exists.

NameTypeReqDescription
fund_idintegeryes
NameTypeReqDescription
resultstringyes

No examples provided.

get_fund_trades ~84

Get closed trade history for a fund's roster bots. Args: fund_id: The fund's ID. limit: Max trades to return (default 50). offset: Pagination offset. Returns a JSON array of closed trades.

NameTypeReqDescription
fund_idintegeryes
limitinteger
offsetinteger
NameTypeReqDescription
resultstringyes

No examples provided.

get_market_regime ~121

Get current market regime classification. Returns the aggregate regime (e.g. "bull_calm", "bear_volatile"), per-symbol regimes, crisis score, and the derivatives data driving the classification (funding rates, open interest, long/short ratios, taker buy/sell ratios). Regime determines which trade directions are allowed: - bull_* → longs only - bear_* → shorts only - neutral_* → both longs and shorts - crisis/meltdown → no new positions

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes

No examples provided.

get_marketplace_bots ~148

List bots published to the marketplace. Args: domain: Filter by domain (e.g. "eth_usdc"). Omit for all domains. sort: Sort order — "rating", "return", "subscribers", or "newest". limit: Max results (default 20, max 100). Returns JSON array of marketplace listings with: listing_id, bot_id, title, description, domain, creator, monthly_price_usd, cached stats (win_rate, return_bps, sharpe), subscriber_count, and avg_rating.

NameTypeReqDescription
domain
limitinteger
sortstring
NameTypeReqDescription
resultstringyes

No examples provided.

get_strategy_report ~83

Get a detailed report card for a strategy. Includes validation run results for all 7 stages, performance metrics, and the integrity block (code hash, AST hash, parameter fingerprint). Args: strategy_id: The strategy's database ID. Returns JSON with: strategy details, latest validation runs, metrics.

NameTypeReqDescription
strategy_idintegeryes
NameTypeReqDescription
resultstringyes

No examples provided.

get_tournament_status ~100

Get current tournament round status and leaderboard. Tournaments run every 3 days. Top 3 bots per domain win prizes from the reward pool. Scoring is weighted: 50% risk-adjusted return, 30% total PnL, 20% consistency. Returns JSON with: current round info (round_id, start/end time, reward_pool_usd, total_participants), and leaderboard entries.

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes

No examples provided.

get_vault_history ~34

Get the Vault's regime switch history for the timeline. Returns a JSON array of past regime transitions with timestamps.

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes

No examples provided.

get_vault_status ~70

Get the authenticated user's Vault state. The Vault is a regime-aware allocator: in strong markets most capital holds BTC/ETH/SOL; when the market weakens it rotates into savings and funding arbitrage. Returns current regime, allocation weights, and sleeve holdings.

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes

No examples provided.

list_bots ~122

List trading bots ranked by performance. Args: domain: Filter by domain key (e.g. "eth_usdc", "btc_usdc", "sol_usdc"). If omitted, returns top bots across all domains. limit: Maximum number of bots to return (default 20, max 100). Returns JSON array of bots with: bot_id, domain, strategy_name, sharpe, win_rate, total_trades, return_bps, and validation_score.

NameTypeReqDescription
domain
limitinteger
NameTypeReqDescription
resultstringyes

No examples provided.

list_domains ~99

List all available trading domains on dMoERA. Domains define what asset pair a strategy trades, what time horizon it uses (scalp=5m, swing=1h, crisis=2m), and what data is available. Strategies must declare which domain they belong to. Returns a JSON array of domain objects with: key, name, type, base_asset, quote_asset, grading_seconds, and feed_symbols.

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes

No examples provided.

list_funds ~77

List all hedge funds for the authenticated user (active + closed). Returns a JSON array of fund objects with: id, fund_name, is_active, inception_date, initial_capital, current_aum, router_preset, aggression_mode, total_pnl_usd, total_pnl_bps, and roster summary.

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes

No examples provided.

list_my_bots ~95

List the authenticated user's OWN bots eligible for a personal fund roster. Personal funds can NEVER contain another user's bots — this returns only the caller's own personal + incubating + live bots with live engine stats and gamified card ratings. Args: domain: Filter by domain (e.g. "eth_usdc"). Returns a JSON array of the user's bots.

NameTypeReqDescription
domain
NameTypeReqDescription
resultstringyes

No examples provided.

list_open_source_bots ~99

Browse open-source bots with normalized stats and capacity info. NOTE: personal funds can only contain the authenticated user's OWN bots — use list_my_bots for roster-eligible strategies. This tool is for researching the broader bot ecosystem. Args: domain: Filter by domain (e.g. "eth_usdc"). Returns a JSON array of bot entries with gamified card ratings.

NameTypeReqDescription
domain
NameTypeReqDescription
resultstringyes

No examples provided.

list_strategies ~74

List all strategies created by a user. Args: user_id: The creator's user ID. Returns JSON array of strategies with: id, bot_id, name, domain, status, declared_sl_bps, declared_tp_bps, and created_at.

NameTypeReqDescription
user_idstringyes
NameTypeReqDescription
resultstringyes

No examples provided.

remove_bot_from_fund ~87

Remove a bot from a fund's roster (triggers wind-down of its positions). Args: fund_id: The fund's ID. bot_id: The bot to remove. reason: Optional reason for removal. Returns success or error.

NameTypeReqDescription
bot_idstringyes
fund_idintegeryes
reasonstring
NameTypeReqDescription
resultstringyes

No examples provided.

run_fund_historical_test ~137

Simulate how a roster of bots would have performed historically. Queries each bot's closed positions over the available historical period and combines them (weighted) into a single PnL time-series with diagnosis. Rate limited: 1 request per 30 seconds per user. Args: roster: List of {"bot_id": str, "weight_pct": float} entries. initial_capital: Starting capital for the simulation (default 10000). Returns the simulated PnL time-series and diagnosis.

NameTypeReqDescription
initial_capitalnumber
rosterarrayyes
NameTypeReqDescription
resultstringyes

No examples provided.

sandbox_backtest ~248

Run a sandbox backtest of strategy code without persisting anything. This is the fastest way to test a strategy. The code is run through static checks and a full backtest on historical data, but no Strategy or StrategyVersion rows are created. Use this for rapid iteration. Args: code: Python source code implementing the Strategy contract. Must define a METADATA dict and a class extending Strategy with an on_bar(ctx) -> Signal method. See CREATOR_API.md. domain: Trading domain (e.g. "eth_usdc", "btc_usdc", "sol_usdc"). symbol: Price symbol for historical data (e.g. "ETHUSDT"). user_id: Identifier for trial tracking (used for DSR correction). Returns JSON with: success, metrics (sharpe, sortino, win_rate, total_trades, return_bps, max_drawdown, regime_breakdown, exit_reason_breakdown), or error details if validation failed.

NameTypeReqDescription
codestringyes
domainstring
symbolstring
user_idstring
NameTypeReqDescription
resultstringyes

No examples provided.

submit_strategy ~289

Submit a strategy for full validation and live deployment. Runs the complete 7-stage validation pipeline: 1. static_check — code safety (banned imports, syntax) 2. in_sample — sanity check on training data 3. out_of_sample — test on unseen data (70/30 split) 4. walk_forward — rolling window validation 5. randomized_start — different random start points 6. perturbation — market stress test 7. holdout — server-side reserved data (pass/fail only) If all stages pass, the strategy is registered for isolated live paper trading with status="incubating". Promotion to "live" requires a proven track record. Args: name: Human-readable strategy name (e.g. "ETH Momentum v2"). domain: Trading domain key (e.g. "eth_usdc"). code: Python source code implementing the Strategy contract. user_id: The creator's user ID. symbol: Price symbol for historical data. Returns JSON with: success, strategy_id, bot_id, validation results per stage, or error details.

NameTypeReqDescription
codestringyes
domainstringyes
namestringyes
symbolstring
user_idstringyes
NameTypeReqDescription
resultstringyes

No examples provided.

swap_bot_in_fund ~188

Swap one bot for another in a fund's roster. Closes the old bot's positions and opens new ones for the replacement. Incurs friction cost — use estimate_swap_cost first. Args: fund_id: The fund's ID. old_bot_id: The bot to remove. new_bot_id: The bot to add in its place. new_bot_domain: The new bot's domain (e.g. "eth_usdc"). weight: Allocation weight for the new bot (defaults to old bot's weight). reason: Optional reason for the swap. Returns the updated roster entry and friction estimate.

NameTypeReqDescription
fund_idintegeryes
new_bot_domainstringyes
new_bot_idstringyes
old_bot_idstringyes
reasonstring
weight
NameTypeReqDescription
resultstringyes

No examples provided.

tag_team_badges ~53

Get the authenticated user's Tag Team badges. Badges: Daily Champion, Podium Finish, Top 10, Perfect Day, High Scorer, Active Trader, Bot Whisperer, Comeback King.

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes

No examples provided.

tag_team_history ~20

Get the authenticated user's past Tag Team sessions with scores.

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes

No examples provided.

tag_team_info ~99

Get the authenticated user's Tag Team session info. Tag Team is a daily paper-trading competition: you get $10k paper capital split 70% human / 30% Co-Pilot bot. Make manual trades, deploy the Co-Pilot after 3 closed manual trades, and your combined PnL is scored on the daily leaderboard. Returns session state, open positions, bot status, and rank.

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes

No examples provided.

tag_team_leaderboard ~75

Get the daily Tag Team leaderboard. Args: date: Optional date filter (YYYY-MM-DD). Defaults to today. Scoring needs 5+ human trades AND 5+ bot trades to qualify. score = sharpe x trade_factor x (1 + win_bonus).

NameTypeReqDescription
date
NameTypeReqDescription
resultstringyes

No examples provided.

tag_team_templates ~63

List all available Co-Pilot templates (momentum, scalper, etc.). Each template defines the Co-Pilot bot's signal logic and tunable parameter ranges. Bot params carry over between days for the same template — trained settings persist.

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes

No examples provided.

tag_team_tier ~72

Get the authenticated user's Tag Team tier and stats. Tiers: Rookie (0) -> Apprentice (10) -> Trader (50) -> Veteran (150) -> Expert (500) -> Master (1000+), based on total trades across all sessions (persists across days).

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes

No examples provided.

tag_team_weekly ~23

Get weekly championship standings (best 5 daily scores per user).

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes

No examples provided.

update_fund_caps ~142

Update a fund's risk caps and settings. Args: fund_id: The fund's ID. max_per_bot_pct: Max allocation per single bot (e.g. 40.0 = 40%). max_per_domain_pct: Max allocation per domain (e.g. 60.0 = 60%). regime_veto_enabled: Whether the regime detector can veto trades. Only provided fields are updated; others remain unchanged. Returns success or error.

NameTypeReqDescription
fund_idintegeryes
max_per_bot_pct
max_per_domain_pct
regime_veto_enabled
NameTypeReqDescription
resultstringyes

No examples provided.

update_fund_weights ~99

Update allocation weights for bots in a fund's roster. Args: fund_id: The fund's ID. weights: A dict mapping bot_id to new weight percentage (e.g. {"momentum_eth_v3": 15.0, "scalper_btc_v2": 20.0}). Returns success or error.

NameTypeReqDescription
fund_idintegeryes
weightsobjectyes
NameTypeReqDescription
resultstringyes

No examples provided.

Common questions

What is the dMoERA Creator MCP server?

dMoERA Creator is an MCP server listed in the public MCP registry as io.github.CacheCarti/dmoera-creator. Build, backtest, and deploy crypto trading strategies via MCP with 7-stage validation. This page covers its hosted endpoint (https://dmoera.xyz/mcp).

Is the dMoERA Creator MCP server safe to use?

dMoERA Creator scores 71 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the dMoERA Creator MCP server expose?

dMoERA Creator exposes 44 tools: list_domains, list_bots, get_bot_profile, get_feature_catalog, get_market_regime, and 39 more. Their descriptions and schemas cost roughly 4,254 tokens of context every time the server is loaded.

Does the dMoERA Creator MCP server require authentication?

No. We connected to dMoERA Creator without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

Is the dMoERA Creator MCP server still maintained?

dMoERA Creator is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.