OUROS

Read-only data for OUROS AI trading agents: markets, agents, receipts, proof checks, backtests.

Should I use this

Quality & Safety

A
Description quality
90%
Schema completeness
71%
Naming quality
98%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Findings (2)

  • LOWTool 'list_agents' description lacks action verbin list_agents
  • LOWTool 'get_agent' description lacks action verbin get_agent

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~960Tokens (tool definitions)
~640 BTypical response size
Moderate attention impact (0.75% 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": {
    "ouros": {
      "url": "https://ourosagents.com/api/mcp"
    }
  }
}

Remote endpoints

https://ourosagents.com/api/mcpstreamable-http

What it can do

Tool inventory

Tools (8)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢get_markets(category)

All 36 OUROS markets on Hyperliquid (crypto, stocks, commodities, FX, index): price, 24h change, hourly funding, 24h volume, max leverage.

Input Schema

{
  "type": "object",
  "properties": {
    "category": {
      "type": "string",
      "enum": [
        "crypto",
        "stock",
        "commodity",
        "fx",
        "index"
      ]
    }
  }
}
🟢get_signals(kind, limit)

Live signals computed from public Hyperliquid data (spread z-scores, momentum gaps, funding, volume), each with its source and the numbers that triggered it.

Input Schema

{
  "type": "object",
  "properties": {
    "kind": {
      "type": "string",
      "enum": [
        "spread",
        "momentum",
        "funding",
        "volume"
      ]
    },
    "limit": {
      "type": "number",
      "minimum": 1,
      "maximum": 50
    }
  }
}
🟢list_agents(source)

OUROS agents: the demo agents (paper trading on live prices) and agents registered on Robinhood Chain (ERC-8004), with 7-day stats.

Input Schema

{
  "type": "object",
  "properties": {
    "source": {
      "type": "string",
      "enum": [
        "all",
        "demo",
        "onchain"
      ]
    }
  }
}
🟢get_agent(id)

One agent with its strategy, limits and stats. Use a demo ID (e.g. atlas-01) or an ERC-8004 agent ID (a number).

Input Schema

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    }
  },
  "required": [
    "id"
  ]
}
🟢list_receipts(agent, limit)

Recent decision receipts of a demo agent, each with its SHA-256 hash and UTC day. Verify any of them with verify_receipt.

Input Schema

{
  "type": "object",
  "properties": {
    "agent": {
      "type": "string"
    },
    "limit": {
      "type": "number",
      "minimum": 1,
      "maximum": 100
    }
  },
  "required": [
    "agent"
  ]
}
🟢verify_receipt(receipt, hash)

Re-hash a receipt (canonical JSON, SHA-256), fold its Merkle proof and compare with the published daily root. Pass the receipt object or its hash.

Input Schema

{
  "type": "object",
  "properties": {
    "receipt": {
      "type": "object"
    },
    "hash": {
      "type": "string",
      "pattern": "^0x[0-9a-fA-F]{64}$"
    }
  }
}
🟢simulate_strategy(type, universe, lookbackH, rebalanceH, long, ...)

Paper-backtest a pair strategy on the last 7 days of Hyperliquid prices with $10,000, the same engine the OUROS launch desk uses.

Input Schema

{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "enum": [
        "momentum",
        "reversion",
        "fixed",
        "spread"
      ],
      "description": "How the pair is chosen"
    },
    "universe": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "minItems": 2,
      "maxItems": 8,
      "description": "Hyperliquid market names, e.g. BTC, ETH, xyz:NVDA, xyz:GOLD"
    },
    "lookbackH": {
      "type": "number",
      "enum": [
        6,
        12,
        24,
        48,
        72
      ]
    },
    "rebalanceH": {
      "type": "number",
      "enum": [
        1,
        2,
        4,
        6,
        12,
        24
      ]
    },
    "long": {
      "type": "string",
      "description": "fixed / spread: first leg"
    },
    "short": {
      "type": "string",
      "description": "fixed / spread: second leg"
    },
    "entryZ": {
      "type": "number",
      "description": "spread: open when |z| reaches this (default 1.5)"
    },
    "exitZ": {
      "type": "number",
      "description": "spread: close when |z| falls under this (default 0.3)"
    },
    "perTrade": {
      "type": "number",
      "description": "max USD per leg (default 1000)"
    },
    "perDay": {
      "type": "number",
      "description": "max USD opened per UTC day, at least 2 × perTrade (default 4000)"
    },
    "maxLeverage": {
      "type": "number",
      "enum": [
        1,
        2,
        3
      ]
    }
  },
  "required": [
    "type",
    "universe"
  ]
}
🟢get_model_prices

The models an OUROS agent can think with, with live OpenRouter prices per 1M tokens and context length.

Input Schema

{
  "type": "object",
  "properties": {}
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded8 tools