strategy-lab

Stress-test lowcap, perp and LP strategies. Returns the full distribution and a reproduction seed.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
54%
Naming quality
100%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~451Tokens (tool definitions)
~437 BTypical response size
Minimal attention impact (0.35% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "strategy-lab": {
      "url": "https://kellyruns.xyz/mcp"
    }
  }
}

Remote endpoints

https://kellyruns.xyz/mcpstreamable-http

What it can do

Tool inventory

Tools (5)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢get_agent_state

Kelly's current treasury, open positions, recent trades and the reasoning behind the latest cycle. Execution is in paper mode, so positions are simulated — treat this as a published track record, not a portfolio.

Input Schema

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🔴get_certification_gate

The exact thresholds a strategy must clear to be certified, and what a pass does and does not mean. Read this before interpreting any certified strategy: a certification is a statement about a distribution, not a prediction.

Input Schema

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢get_lab_summary

Counts by status, the testing pool balance, how many runs it can still fund, and the cost per run.

Input Schema

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢list_strategies(kind, status, sort, limit)

Strategies submitted to the lab, filterable by kind and status. Returns the certification rollup for each — run count, total paths, median PnL, worst-case PnL and ruin rate.

Input Schema

{
  "type": "object",
  "properties": {
    "kind": {
      "type": "string",
      "enum": [
        "lp",
        "perp",
        "lowcap"
      ],
      "description": "Strategy domain."
    },
    "status": {
      "type": "string",
      "enum": [
        "queued",
        "testing",
        "certified",
        "rejected",
        "inconclusive"
      ],
      "description": "Lifecycle status."
    },
    "sort": {
      "type": "string",
      "enum": [
        "top",
        "new",
        "queue"
      ],
      "default": "top"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25
    }
  },
  "additionalProperties": false
}
🟢get_strategy(id)

Full detail for a single strategy: parameters, thesis, verdict, every check the gate ran, and each test run with its PRNG seed. The seed is the point — re-running with it reproduces the result exactly, so the claim is falsifiable.

Input Schema

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "Strategy id."
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded5 tools
verifiedversion not recorded5 tools
verifiedversion not recorded5 tools