Skip to content
GardenArena logo

GardenArena MCP server

Which MCP servers are GardenArena's own, from the official registry and from asking its own domain, whether they answer, and what they offer. A program checked each of these, nobody copied them from a product page.

read 2026-10-26

← Back to GardenArena

Whose server it is
  • Registry nameio.gardenarena/gardenscriptverified in the MCP registry

The registry name sits under gardenarena.io. The registry only lets a publisher use that namespace after proving control of the domain through DNS or HTTP.

When we asked itchecked 2026-10-26
  • Stateanswerschecked 2026-10-26
  • Tools30
  • Server calls itselfGardenArena GardenScript
  • Server version1.28.1
  • Protocol version2025-06-18

On 2026-10-26 the server answered initialize and tools/list without a sign-in. First answer in 213 ms.

Should an agent connect itConnect it, with care
  • Its tools do every use case we checked: run a farm simulation under a fixed rule set; compare two strategies in a head-to-head duel; review replay traces to see why a policy lost.

Once connected

  • For "compare two strategies in a head-to-head duel", the likely first call is farm_compare_get.
  • For "review replay traces to see why a policy lost", the likely first call is bamboo_training_explain.
  • entry_create change data without a sign-in: anyone with the address can call them.
  • Parameters are untyped or undescribed in 24 of 30 tools: check arguments before calling.

Said by rules from the measurements above. The likely first call is a model's pick from the tool list; read its description before relying on it.

Measured dailydaily checks: 8, the first on 2026-10-26
  • INITE MCP score77 of 100answers 100 · does the job 100 · definitions 87 · context 90 · connects 100 · lowered by the warning signs below
  • What an agent can do with it3 of 3 use cases
  • Answered100% of days8 of 8 daily checks
  • Median first answer532 ms
  • Space in an agent's context≈ 4,418 tokensthe definitions of all its tools (30), which an agent carries on every turn
  • Tool definitionsB · 87 of 100
  • Typed results30 of 30 toolsdeclared outputSchema: results come typed, read once
  • Parameters without a description: in 24 of 30

What an agent can do with it

  • can do · run a farm simulation under a fixed rule set
  • can do · compare two strategies in a head-to-head duel
  • can do · review replay traces to see why a policy lost

Each of the product's use cases, put to Jev against this server's tool list: can an agent do it with these tools?

Worth a look

  • Tools that change data, on a server that answers without a sign-in: entry_create

A program checks the server once a day: initialize and tools/list, no model. Tokens are the definitions' length at about four characters a token. The grade averages six checks of every tool's name, description, schema and annotations; it says how well the tools are described, not whether they work. The score weighs what was measured and nothing else: answering (25%), doing the product's job (25%), definitions (20%), context (10%), use (10%) and how readily a client connects (10%). A part that was not measured is left out, and a hidden instruction caps the score at 40. The state of vendors' MCP servers: method and numbers →

Tools it offers30 tools · read 2026-10-26
  • validate_gardenscript

    Validate and compile an untrusted GardenScript source with the local Rust compiler. This performs no LLM call and stores nothing.

  • get_bamboo_scene

    Read one day (1-365, default UTC day of year) of the published Rust bamboo replay used by the 3D scene. Includes sensors, entrant and SHA-256 provenance. Synthetic exhibition only; not an observation, strategy evaluation or hydraulic…

  • bamboo_challenge_get

    Read the fixed 365-day bamboo training mission, exact Dry Patience reference, scenario hash, budgets and quotas. No run or publication. Read gardenarena://gardenscript/v0.5 for the full language.

  • coop_workshop_get

    Read the playable chicken workshop mission: breeds, breeding/incubation, production balance, non-lethal predators, closed JSON commands, exact scenario and quotas. No simulation or database write. Distinct from GardenScript/official…

  • coop_workshop_run

    Execute one bounded Rust chicken-workshop journal after human agreement. journal_json is the complete closed JSON journal (64 KiB), NOT GardenScript or arbitrary code. Returns reproducible state, event explanations and an export for…

  • farm_workshop_get

    Read the playable whole-farm mission, shared resources, closed JSON actions and farmer task contract. Educational simulation, no run or official write.

  • farm_workshop_run

    Execute one bounded whole-farm Rust journal after human agreement, within the agreed call budget. journal_json is complete closed JSON, max 64 KiB, not GardenScript. Returns game state, evidence-linked farmer tasks and an export for…

  • farm_next_event

    Advance a farm journal to the next detected important moment, checked daily for at most max_days (1–21). Use the full journal_json and care_json containing ration, access, ventilation, incubator. Consumes one agreed calculation call…

  • farm_autopilot_run

    Run a bounded pantry-oriented farmer tour after user agreement: 1–7 simulated days, 0–1000 game credits, at most 64 added ordinary commands. Deterministic Rust rules, not a live LLM. Gathers food, handles care and irrigation, cuts mature…

  • farm_campaign_get

    Read chapter 2 stewardship-v1: exact teaching farm J95, three management choices, ten-day routine, success criteria and complete original journal. No calculation or publication; not the player's private farm. JSON plan, NOT GardenScript.

  • farm_campaign_run

    Try the fixed J95 to J105 farm chapter after agreeing a finite call budget. choices_json is a CLOSED object: mission_id stewardship-v1, choices {harvest: pantry/kitchen/market, egg_reserve: 0/2/6, rotate: boolean}. At most ten days, 100…

  • farm_policy_get

    Read GardenScript 0.6 farm.v1: six decision channels, 29 current-state sensors, exact intention expansion, three application-authored presets and shared limits. No run, persistent write or LLM call. Read before writing a farm policy.

  • farm_policy_validate

    Validate a closed GardenScript 0.6 farm.v1 source, maximum 16 KiB. Local Rust only; line diagnostics and exact source/canonical hashes. Shared workshop quota; no run, persistence or publication.

  • farm_policy_run

    Run a GardenScript 0.6 farm.v1 policy from a COMPLETE v4/v5 journal after user agreement, within a finite call budget. Six decisions from each day's current snapshot become ordinary costed commands. No future weather archive access or…

  • farm_compare_get

    Read the bounded two-policy farm comparison contract and its fixed week-after-v1 teaching mission (exact J96 journal, two sources, seven days, 540 credits). V4 only, same start and days/budget per branch, no global winner or publication…

  • farm_compare_run

    Compare two GardenScript farm.v1 policies from the SAME complete v4 journal after agreeing a finite call budget. Two trials, 1–7 days and identical 0–1000 game-credit ceilings. Rust returns both branches, trace witnesses of the first work…

  • farm_weather_search

    Find French metropolitan communes by name or postcode for opt-in farm weather. Public administrative data, cached and bounded. No IP geolocation, precise address, game mutation or LLM call.

  • farm_weather_get

    Read cached real MET Norway forecasts and a continuous Météo-France station archive for a chosen French commune INSEE code. Optional start_date and station_id retain an existing game's station/start when refreshing. Returns a frozen…

  • bamboo_training_run

    Consume one bounded private training run against Dry Patience after user agreement. GardenScript 0.5 bamboo only, fixed public scenario and budgets. Shared web/MCP quotas; temporary local storage, no official submission or publication, no…

  • bamboo_training_explain

    Read a private training comparison and evidence-linked moments. Optional day 1-365 returns both actual Rust decision traces, not a rerun. Requires the private GardenArena run_token, not a provider credential.

  • bamboo_training_artifact

    Read the exact reproducible request and expected result hashes for a private training run. Includes strategy sources: do not publish automatically. Full trace JSON downloadable through the documented POST export. No run or official ledger…

  • list_garden_arenas

    List GardenScript arenas. This is local, read-only, and performs no LLM call.

  • get_garden_arena

    Read one arena's ruleset, scenario, capabilities, limits and status by slug. This performs no LLM call.

  • submit_garden_strategy

    Submit externally generated GardenScript to an arena. The source is validated again by the local Rust compiler. Disabled by default; operator-owned identity comes only from server environment, never from a model token.

  • get_garden_results

    Read the sealed results for a GardenScript arena. Performs no simulation or LLM call.

  • entry_create

    Create a Reality Trial 001 policy entry. Returns an explicit entry_id. Returns a private entry_nonce once; keep it for all mutations. An idempotent retry requires that nonce and never returns it again. Identity assurance can only be…

  • strategy_validate

    Compile GardenScript for an existing entry without running the official scenario. Requires its private entry_nonce. Consumes that entry's validation budget.

  • strategy_prepare_seal

    Prepare a review and return its confirmation_url for the human organizer. Requires the private entry_nonce. Does not grant authority to seal. The organizer must use their own web session; never operate that page for them.

  • strategy_seal

    Read acknowledgment of an already human-confirmed seal. This tool can NEVER create a seal: pending entries return human_confirmation_required. Give the preparation's confirmation_url to the organizer instead. Legacy receipt/handle…

  • artifact_verify

    Verify a SHA-256 digest against published contracts, scenarios and sealed entries.

How to connect

Add the server to your MCP client config. Claude Desktop, Cursor and most other clients read this shape:

{
  "mcpServers": {
    "gardenscript": {
      "type": "http",
      "url": "https://gardenarena.io/mcp"
    }
  }
}

Add it

Claude Code, in a terminal

claude mcp add --transport http gardenarena https://gardenarena.io/mcp

Add to CursorAdd to VS Code

claude.ai, ChatGPT and other clients: add https://gardenarena.io/mcp as a custom connector in the settings.

OpenAPI spec

93 paths, read 2026-10-26. Open the spec ↗

Each line is something a program found when it went looking: the registry entry, the server's own answer, a spec that parses. A missing line means we did not find it, not that it does not exist.