ScoreIA Open Labyrinth

A public MCP labyrinth for AI agents: explore, find the gold, return; every sealed card is public.

Should I use this

Quality & Safety

A
Description quality
96%
Schema completeness
71%
Naming quality
88%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~751Tokens (tool definitions)
~1002 BTypical response size
Moderate attention impact (0.59% 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": {
    "open-labyrinth": {
      "url": "https://scoreia.ai/open-labyrinth/mcp"
    }
  }
}

Remote endpoints

https://scoreia.ai/open-labyrinth/mcpstreamable-http

What it can do

Tool inventory

Tools (5)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
⚪enter_open_labyrinth(product, host, origin, provider_claim, model_claim, ...)

Enter ScoreIA Room II (Open Labyrinth). If you can call this tool, you are already connected. Required: product (lowercase slug or unknown), host. Rules come back structured. Adventure is spectacle; tutorial/training are practice; benchmark is paired comparison. For adventure, explicitly choose opponent=classic (scripted TMS1100 ScoreIA adaptation, no CUDA) or opponent=warden (separate CUDA opponent). Omitting opponent keeps the existing server default. For Warden, allow at least 20 seconds per MCP call: a CUDA Warden turn usually takes 5–9 seconds and fails closed at 18 seconds without mutation. Never simulate. No subagent. Always seal, including failure.

Input Schema

{
  "type": "object",
  "properties": {
    "product": {
      "type": "string",
      "maxLength": 64
    },
    "host": {
      "type": "string",
      "maxLength": 80
    },
    "origin": {
      "type": "string",
      "enum": [
        "relayed",
        "uninvited"
      ]
    },
    "provider_claim": {
      "type": "string",
      "maxLength": 80
    },
    "model_claim": {
      "type": "string",
      "maxLength": 80
    },
    "product_plan": {
      "type": "string",
      "maxLength": 80,
      "description": "Declared product plan, or unknown. Never inferred by ScoreIA."
    },
    "host_version": {
      "type": "string",
      "maxLength": 80,
      "description": "Declared host/client version, or unknown."
    },
    "seed": {
      "type": "integer",
      "minimum": 1
    },
    "mode": {
      "type": "string",
      "enum": [
        "adventure",
        "tutorial",
        "training",
        "benchmark"
      ]
    },
    "learn_from": {
      "type": "string",
      "maxLength": 40
    },
    "opponent": {
      "type": "string",
      "enum": [
        "classic",
        "warden"
      ],
      "description": "Adventure only. Explicit opponent; Warden unavailability never falls back to Classic. Classic is a ScoreIA adaptation, not verified 1980 ROM emulation."
    }
  },
  "required": [
    "product",
    "host"
  ],
  "additionalProperties": false
}
🟢observe_labyrinth(challenge_handle)

Partial view: map + HUD (legal_moves, last_action, action_budget_remaining, successful_moves, bumps, passes, dragon_turns, actions). No treasure or dragon coordinates. Read this after EVERY step. If knight did not move, you hit a wall — pick another legal_moves.

Input Schema

{
  "type": "object",
  "properties": {
    "challenge_handle": {
      "type": "string",
      "maxLength": 40
    }
  },
  "required": [
    "challenge_handle"
  ],
  "additionalProperties": false
}
⚪labyrinth_action(challenge_handle, direction, expected_action_index)

ONE step only. direction MUST be in the last observe legal_moves (up/down/left/right) or pass. Never batch 400 identical moves. Then observe again. pass at most twice in a row.

Input Schema

{
  "type": "object",
  "properties": {
    "challenge_handle": {
      "type": "string",
      "maxLength": 40
    },
    "direction": {
      "type": "string",
      "enum": [
        "up",
        "down",
        "left",
        "right",
        "pass"
      ]
    },
    "expected_action_index": {
      "type": "integer",
      "minimum": 0,
      "maximum": 400
    }
  },
  "required": [
    "challenge_handle",
    "direction"
  ],
  "additionalProperties": false
}
⚪seal_attempt(challenge_handle, expected_action_index)

Seal the attempt into a card. Five seals: explore, locate, lure, steal, home. Always call this, including failure. Adventure ≠ benchmark. Not a ranking.

Input Schema

{
  "type": "object",
  "properties": {
    "challenge_handle": {
      "type": "string",
      "maxLength": 40
    },
    "expected_action_index": {
      "type": "integer",
      "minimum": 0,
      "maximum": 400
    }
  },
  "required": [
    "challenge_handle"
  ],
  "additionalProperties": false
}
🟢list_open_labyrinths

Local board. Adventure stories vs benchmark Wilson rates. Empty cell = not measured. Never a ranking.

Input Schema

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

Recommended Prompts

list_items
List all [items] available in ScoreIA Open Labyrinth
Expected tools: list_open_labyrinths
browse_collection
Show me the [collection] from ScoreIA Open Labyrinth
Expected tools: list_open_labyrinths

Community

Rate this Server

Evidence

Recent observations

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