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

Moddable Games Tools

REMOTE · TOOLS.MODDABLE.GAMES · SCANNED AUG 3

15 tools for chess variant analysis, hex map generation, and board game utilities

+3 this week 66 Trust /100
Trust breakdown (6 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 →

Endpoint Security57
Transport & Reachability100
Schema Quality & AI Usability84
  • 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
  • AI-judged instruction clarity (good).Pass
  • Tool/resource definitions use about 5477 tokens (~91/item across 60 items; 56 tools + 4 resources), lean.Pass
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management27
  • Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
Capabilities40
  • Spec-recency check failed: implements MCP spec 2025-03-26; the latest is 2026-07-28. See how to fix → Fail
Install

Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.

remote · tools.moddable.games

# add to Claude Code
claude mcp add --transport http games-moddable-tools-moddable-games-tools https://tools.moddable.games/mcp
# ~/.codex/config.toml
[mcp_servers.games-moddable-tools-moddable-games-tools]
url = "https://tools.moddable.games/mcp"
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "games-moddable-tools-moddable-games-tools": {
      "type": "remote",
      "url": "https://tools.moddable.games/mcp",
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add games-moddable-tools-moddable-games-tools --url https://tools.moddable.games/mcp --transport streamable-http
# ~/.hermes/config.yaml
mcp_servers:
  games-moddable-tools-moddable-games-tools:
    url: "https://tools.moddable.games/mcp"
// mcp.json
{
  "mcpServers": {
    "games-moddable-tools-moddable-games-tools": {
      "type": "http",
      "url": "https://tools.moddable.games/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.

  • 3 Aug 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 23 to 27. That category is still filling its 30-day observation window: 7 days of observed history at the previous scan, 8 at this one. The score rises as the window fills, whether or not the server changes.

  • 1 Aug 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 17 to 20. That category is still filling its 30-day observation window: 5 days of observed history at the previous scan, 6 at this one. The score rises as the window fills, whether or not the server changes.

  • 31 Jul 26 −1
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 29 Jul 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 7 to 10. That category is still filling its 30-day observation window: 2 days of observed history at the previous scan, 3 at this one. The score rises as the window fills, whether or not the server changes.

  • 28 Jul 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 3 to 7. That category is still filling its 30-day observation window: 1 days of observed history at the previous scan, 2 at this one. The score rises as the window fills, whether or not the server changes.

  • 27 Jul 26 0
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 26 Jul 26 63

    First indexed and scored.

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 3 Aug 2026 · Probed https://tools.moddable.games/mcp

TLS valid

Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .

Subject Issuer Valid from Valid until Key Signature Serial
CN=moddable.games CN=WE1,O=Google Trust Services,C=US 4 Jul 2026 2 Oct 2026 ECDSA 256 ECDSA-SHA256 8ef545264b14c8e13879035d71fd3a5
SANs: moddable.games, *.moddable.games
CN=WE1,O=Google Trust Services,C=US (CA) CN=GTS Root R4,O=Google Trust Services LLC,C=US 13 Dec 2023 20 Feb 2029 ECDSA 256 ECDSA-SHA384 7ff31977972c224a76155d13b6d685e3
CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE 15 Nov 2023 28 Jan 2028 ECDSA 384 SHA256-RSA 7fe530bf331343bedd821610493d8a1b
DNSSEC insecure

Validation of tools.moddable.games. Not signed

Zone DS Keys Algorithms Outcome
. trust_anchor 20326, 38696 8, 8 Verified
games. present 54412 8 Verified
moddable.games. 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
Transports 2 probes
Transport URL Outcome Status Location
streamable-http https://tools.moddable.games/mcp Verified 200
http (plaintext) http://tools.moddable.games/mcp HTTPS enforced 301 https://tools.moddable.games/mcp
MCP tools — 56 exposed · ~5,385 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.

Tool Tokens
chess_analyze_position ~94

Evaluate a chess position using the engine. Returns a score (centipawns from the side to move), best move, and the principal variation.

NameTypeReqDescription
depthnumberSearch depth (1-6). Higher is slower but more accurate. Defaults to 4.
fenstringFEN string. Omit for starting position.
variantstringVariant key. Defaults to "standard".

No output schema declared.

No examples provided.

chess_generate_puzzle ~264

Serve a random chess puzzle from a pool of 1,557 pre-generated puzzles across 66 variants (plus standard). Returns position, solution, metadata, and an SVG board image. Use chess_list_puzzle_types to discover available variant:type combinations.

NameTypeReqDescription
include_svgbooleanInclude an SVG board render of the puzzle position. Defaults to true.
rating_maxnumberMaximum puzzle rating filter. Omit for no maximum.
rating_minnumberMinimum puzzle rating filter (Lichess rating scale). Omit for no minimum.
themestringFilter by puzzle theme (e.g. "backRankMate", "sacrifice", "endgame"). Only applies to Lichess-sourced puzzles.
typestringPuzzle type (e.g. "mate-in-1", "detonate-in-1", "sacrifice-your-king"). Defaults to the first available type for the variant. Use chess_list_puzzle_types to see all types.
variantstringVariant key (e.g. "standard", "atomic", "racingKings") or "random" for a surprise variant. Defaults to "standard". Use chess_list_puzzle_types to see all available variants.

No output schema declared.

No examples provided.

chess_get_legal_moves ~87

Get all legal moves for the current position. Returns moves in algebraic notation with annotations (capture, promotion, castling, etc).

NameTypeReqDescription
fenstringFEN string of the position. Omit to use the variant starting position.
variantstringVariant key (e.g. "standard", "atomic", "capablanca"). Defaults to "standard".

No output schema declared.

No examples provided.

chess_get_opening_book ~61

Look up opening book moves for a position. Returns known good continuations from the variant opening book.

NameTypeReqDescription
fenstringFEN string. Omit for starting position.
variantstringVariant key. Defaults to "standard".

No output schema declared.

No examples provided.

chess_list_puzzle_types ~79

List all available puzzle types in the pool with counts. Returns variant:type keys, total puzzles per key, and rating ranges. Use this to discover what puzzles are available before calling chess_generate_puzzle.

NameTypeReqDescription
variantstringFilter to a specific variant (e.g. "standard", "atomic"). Omit to see all variants.

No output schema declared.

No examples provided.

chess_list_variants ~57

List all available chess variants with their descriptions, board sizes, and rules.

NameTypeReqDescription
groupstringFilter by group name (Classic, Tactical, Alternate Rules, Asymmetric, Small Boards, Large Boards). Omit for all.

No output schema declared.

No examples provided.

chess_make_moves ~95

Play a sequence of moves from a position and return the resulting FEN, game status, and move list.

NameTypeReqDescription
fenstringStarting FEN. Omit for variant start position.
movesarrayyesMoves in coordinate notation (e.g. ["e2e4", "e7e5", "g1f3"]).
variantstringVariant key. Defaults to "standard".

No output schema declared.

No examples provided.

chess_render_svg ~149

Render a board position as a self-contained SVG string. No DOM or browser APIs required. Works in Cloudflare Workers.

NameTypeReqDescription
fenstringFEN string of the position. Omit to use the variant starting position.
highlightsarraySquares to highlight (algebraic notation, e.g. ["e2", "e4"] for last move).
sizenumberBoard width in pixels. Height is derived from rows. Defaults to 480.
themestringBoard colour theme. Defaults to "classic".
variantstringVariant key (e.g. "standard", "grand", "capablanca"). Defaults to "standard".

No output schema declared.

No examples provided.

chess_validate_move ~88

Check whether a specific move is legal in the current position. Returns legal/illegal with explanation.

NameTypeReqDescription
fenstringFEN string. Omit for starting position.
movestringyesMove in coordinate notation (e.g. "e2e4", "e7e8q" for promotion).
variantstringVariant key. Defaults to "standard".

No output schema declared.

No examples provided.

coin_flip ~61

Flip a coin or pick randomly from a list of options. Use for quick binary decisions or random selection.

NameTypeReqDescription
optionsarrayCustom options to pick from (e.g. ["pizza","tacos","sushi"]). Defaults to ["heads","tails"].

No output schema declared.

No examples provided.

colony_dice_odds ~77

Calculate probability of each resource number being rolled on 2d6. Returns the odds table and expected output for a given board position.

NameTypeReqDescription
numbersarrayArray of numbers on your settlements (e.g. [5, 6, 8, 9, 11]). Returns probability of rolling at least one.

No output schema declared.

No examples provided.

dice_roll ~88

Roll dice using standard notation (e.g. "2d6+3", "4d8-1", "d20"). Supports any combination of dice, modifiers, and multiple pools.

NameTypeReqDescription
notationstringyesDice notation (e.g. "2d6+3", "4d8", "d20+5", "3d6"). Multiple pools separated by commas.

No output schema declared.

No examples provided.

hex_compute_fov ~158

Compute field-of-view from a hex position: all hexes visible within a given range, respecting line-of-sight through the grid.

NameTypeReqDescription
blockingarrayTerrain types that block line of sight (e.g. ["mount", "mountains"]). Defaults to none.
gamestringyesGame key.
layoutstringLayout variant.
playersnumberPlayer count.
qnumberyesAxial q coordinate of the observer.
rnumberyesAxial r coordinate of the observer.
rangenumberVision range in hex steps (default 3).
seedstringSeed used to generate the map.
sizenumberMap size.

No output schema declared.

No examples provided.

hex_export_svg ~131

Export a generated hex map as an SVG string for rendering or embedding.

NameTypeReqDescription
bgColorstringBackground colour (e.g. "#1a1a2e"). Omit for transparent.
gamestringyesGame key.
hexSizenumberHex radius in pixels (default from game config).
labelsbooleanShow terrain labels on hexes (default false).
layoutstringLayout variant.
playersnumberPlayer count.
seedstringSeed used to generate the map.
sizenumberMap size.

No output schema declared.

No examples provided.

hex_generate_map ~161

Generate a hex map for a given game. Returns the full hex grid with terrain types, coordinates, and metadata.

NameTypeReqDescription
gamestringyesGame key (e.g. "nukes", "colony", "twilight", "talisman", "mongo", "endless").
layoutstringLayout variant (e.g. "standard", "expanded", "6p"). Only for games with multiple layouts.
playersnumberPlayer count. Omit or 0 for no player bases.
seedstringSeed string for reproducible generation. Omit for a default seed.
sizenumberMap size (ring count). Meaning varies by game. Omit for the game default.

No output schema declared.

No examples provided.

hex_get_info ~113

Get detailed information about a specific hex coordinate on a generated map: terrain type, neighbors, and distances to other hexes.

NameTypeReqDescription
gamestringyesGame key.
layoutstringLayout variant.
playersnumberPlayer count.
qnumberyesAxial q coordinate of the target hex.
rnumberyesAxial r coordinate of the target hex.
seedstringSeed used to generate the map.
sizenumberMap size.

No output schema declared.

No examples provided.

hex_list_games ~28

List all available hex map games with their map types, layouts, sizes, and style options.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

hex_pathfind ~161

Find the shortest path between two hexes on a generated map using breadth-first search. Optionally specify impassable terrain types.

NameTypeReqDescription
fromQnumberyesStart hex axial q.
fromRnumberyesStart hex axial r.
gamestringyesGame key.
impassablearrayTerrain types that cannot be traversed (e.g. ["water", "mount"]). Defaults to none.
layoutstringLayout variant.
playersnumberPlayer count.
seedstringSeed used to generate the map.
sizenumberMap size.
toQnumberyesEnd hex axial q.
toRnumberyesEnd hex axial r.

No output schema declared.

No examples provided.

jam_status ~31

Get the current Mod Jam status: active/inactive, theme, base game, time remaining, and submission count.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

jam_timer ~27

Get the countdown timer for the current Mod Jam phase (voting, building, or judging).

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

jam_vote ~27

Get current vote standings for the active Mod Jam vote. Returns anonymised tallies per option.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

mancala_legal_moves ~66

List legal moves for the current player in a mancala position.

NameTypeReqDescription
boardarrayyesArray of 14 values (same format as mancala_simulate_move).
playernumberWhich player to move (1 or 2). Defaults to 1.

No output schema declared.

No examples provided.

mancala_simulate_move ~135

Simulate a mancala move: sow seeds from a pit and return the resulting board state. Supports Oware and Kalah rules.

NameTypeReqDescription
boardarrayyesArray of 14 values: pits[0-5] = player 1, pit[6] = store 1, pits[7-12] = player 2, pit[13] = store 2.
pitnumberyesPit index (0-5 for player 1, 7-12 for player 2) to sow from.
variantstringRule variant. Defaults to "kalah".

No output schema declared.

No examples provided.

morris_detect_mill ~74

Check if a placement/move forms a mill (three in a row) in Nine Men's Morris.

NameTypeReqDescription
boardarrayyesArray of 24 intersection values.
playernumberyesWhich player to check.
positionnumberyesThe intersection index (0-23) to check for mills.

No output schema declared.

No examples provided.

morris_legal_moves ~130

List legal moves in a Nine Men's Morris position. Handles placement, sliding, and flying phases.

NameTypeReqDescription
boardarrayyesArray of 24 values (0=empty, 1=player1, 2=player2) for the 24 intersections.
phasestringGame phase. "place" during initial placement, "slide" during normal play, "fly" when player has 3 pieces.
pieces_in_handnumberPieces not yet placed (0-9). Required during place phase.
playernumberyesWhich player to move.

No output schema declared.

No examples provided.

nukes_setup_generator ~63

Generate random starting positions for a Nukes game. Assigns territories to players on a generated hex map.

NameTypeReqDescription
playersnumberNumber of players (2-6). Defaults to 3.
seedstringMap seed for reproducible setups.

No output schema declared.

No examples provided.

oracle_ask ~72

Ask the Oracle a yes/no question with a likelihood modifier. Implements the Ironsworn/Starforged mechanic with match detection.

NameTypeReqDescription
likelihoodstringHow likely is "yes"? Defaults to "fifty_fifty".
questionstringOptional question text (returned in response for context).

No output schema declared.

No examples provided.

oracle_encounter ~180

Generate a tabletop RPG encounter (D&D 5e or Pathfinder 1e). Selects CR-appropriate monsters, picks terrain, and rolls loot.

NameTypeReqDescription
difficultystringEncounter difficulty. Defaults to "medium".
loot_tierstringLoot rarity tier. Defaults to "medium".
monster_typestringFilter monsters by type (e.g. "undead", "dragon", "beast").
party_levelnumberAverage party level (1-20). Defaults to 5.
party_sizenumberNumber of players (1-10). Defaults to 4.
systemstringGame system. Defaults to "dnd-5e".
terrainstringTerrain type (e.g. "Forest", "Cavern"). Omit for random.

No output schema declared.

No examples provided.

oracle_interpret ~106

Resolve oracle cross-references. Given a result like "Action + Theme" or "Roll twice", follows the reference and returns expanded results.

NameTypeReqDescription
gamestringGame system ID. Available: cairn, dungeon-world, ironsworn, knave, maze-rats, starforged
resultstringyesOracle result text to interpret.
source_tablestringTable ID the result came from (needed for "Roll twice" re-rolls).

No output schema declared.

No examples provided.

oracle_list_games ~33

List all supported RPG game systems with their available features (tables, entities). Returns game IDs for use in other tools.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

oracle_list_recipes ~42

List all predefined scene recipes — curated multi-table compositions that produce coherent narrative prompts.

NameTypeReqDescription
gamestringFilter by game. Omit to see all.

No output schema declared.

No examples provided.

oracle_list_tables ~91

List all available oracle/random tables for a game system, optionally filtered by category. Returns table IDs, names, and roll types.

NameTypeReqDescription
categorystringFilter by category. Omit to list all.
gamestringGame system ID. Defaults to "starforged". Available: cairn, dungeon-world, ironsworn, knave, maze-rats, starforged

No output schema declared.

No examples provided.

oracle_roll ~109

Roll on a specific oracle/random table. Returns the dice roll and result text. Use oracle_list_tables to discover table IDs.

NameTypeReqDescription
countnumberNumber of rolls (1-5). Defaults to 1.
gamestringGame system ID. Available: cairn, dungeon-world, ironsworn, knave, maze-rats, starforged
tablestringyesTable ID (e.g. "action", "theme", "dungeon-themes").

No output schema declared.

No examples provided.

oracle_scene ~127

Generate a narrative seed by rolling on multiple oracle tables. Use a named recipe or provide a custom array of table IDs. Auto-resolves cross-references.

NameTypeReqDescription
gamestringGame system ID. Available: cairn, dungeon-world, ironsworn, knave, maze-rats, starforged
recipestringRecipe ID. Use oracle_list_recipes to see options.
regionstringRegion for tables with regional variants (Starforged only).
tablesarrayCustom table IDs to roll. Ignored if recipe is provided.

No output schema declared.

No examples provided.

oracle_table_view ~70

View the complete contents of an oracle table — all entries with roll ranges and results.

NameTypeReqDescription
gamestringGame system ID. Available: cairn, dungeon-world, ironsworn, knave, maze-rats, starforged
tablestringyesTable ID to view.

No output schema declared.

No examples provided.

pachisi_roll_cowries ~104

Roll cowrie shells for Pachisi/Chaupar. 6 shells, count faces up. Special values: 0 faces = 25 (grace), 1 face = 10 (grace).

NameTypeReqDescription
gamestringWhich game rules to apply. Defaults to "pachisi".
shellsnumberNumber of cowrie shells (default 6). Pachisi uses 6, Chaupar uses 3 long dice.

No output schema declared.

No examples provided.

piece_gallery_get_set ~78

Get full details for a specific piece set including manifest, piece file list, direct SVG URLs, and a preview image URL. Use piece_gallery_search to find set IDs first.

NameTypeReqDescription
idstringyesThe piece set ID (e.g. "chessnut", "kahu-shogi-international", "fluent-emoji").

No output schema declared.

No examples provided.

piece_gallery_search ~311

Search and filter piece sets from the Moddable Chess piece gallery (96 sets, 2,550 SVGs across 19 game families). Filter by family, license, author, or search by name. Returns metadata for matching sets with preview URLs.

NameTypeReqDescription
authorstringFilter by author name (case-insensitive partial match).
familystringFilter by game family (e.g. "chess", "shogi", "xiangqi", "janggi", "draughts", "go", "emoji", "oware", "abalone", "othello", "backgammon", "amazons", "breakthrough", "fairy-chess", "lines-of-action",…
licensestringFilter by SPDX license (e.g. "MIT", "CC-BY-4.0", "CC0-1.0", "Apache-2.0", "GPL-2.0+").
limitnumberMax results to return (default 20, max 96).
playablebooleanFilter to only playable sets (usable in the chess.moddable.games play UI).
querystringSearch term to match against set name, author, or ID (case-insensitive).
recolorablebooleanFilter to only recolorable sets (SVGs support color theming).

No output schema declared.

No examples provided.

piece_gallery_stats ~40

Get aggregate statistics for the piece gallery: total sets, SVG count, breakdown by family, license distribution, author list, and playable/recolorable counts.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

rpg_browse ~132

Browse entities in a category with pagination. Good for exploring what is available in a game system.

NameTypeReqDescription
categorystringyesCategory ID (e.g. "spells", "monsters", "classes"). Required.
gamestringyesGame system ID. Required. Available: brp, cairn, dnd-5e, dungeon-world, fate-core, knave, pathfinder-1e
pagenumberPage number (1-based). Defaults to 1.
page_sizenumberItems per page (5-50). Defaults to 20.

No output schema declared.

No examples provided.

rpg_get_entity ~116

Get full details of a specific RPG entity by name. Supports exact and fuzzy (partial) matching.

NameTypeReqDescription
categorystringNarrow search to a specific category. Optional.
gamestringyesGame system ID. Required. Available: brp, cairn, dnd-5e, dungeon-world, fate-core, knave, pathfinder-1e
namestringyesEntity name to look up (e.g. "Fireball", "Ancient Red Dragon", "Longsword").

No output schema declared.

No examples provided.

rpg_list_categories ~87

List entity categories for an RPG system (or all systems). Shows browseable content: spells, monsters, classes, equipment, skills, bestiary, etc.

NameTypeReqDescription
gamestringGame system ID. Available: brp, cairn, dnd-5e, dungeon-world, fate-core, knave, pathfinder-1e. Omit for all games.

No output schema declared.

No examples provided.

rpg_random ~106

Get random entities from an RPG system. Great for inspiration, encounter prep, or NPC generation.

NameTypeReqDescription
categorystringCategory to draw from. Omit for any category.
countnumberNumber of random picks (1-10). Defaults to 1.
gamestringyesGame system ID. Required. Available: brp, cairn, dnd-5e, dungeon-world, fate-core, knave, pathfinder-1e

No output schema declared.

No examples provided.

rpg_search ~140

Search RPG entities across games and categories. Full-text search over names, descriptions, and metadata.

NameTypeReqDescription
categorystringFilter to a specific category (e.g. "spells", "monsters", "equipment").
gamestringFilter to a specific game. Available: brp, cairn, dnd-5e, dungeon-world, fate-core, knave, pathfinder-1e
limitnumberMax results (1-25). Defaults to 10.
querystringyesSearch term (e.g. "fireball", "dragon", "healing", "two-handed").

No output schema declared.

No examples provided.

rules_get_game ~77

Get full metadata and variant list for a specific game family. Returns players, duration, tagline, variant names, and rules URL.

NameTypeReqDescription
slugstringyesGame slug (e.g. "backgammon", "draughts", "nukes", "moddable-chess"). Use rules_list_games to see all.

No output schema declared.

No examples provided.

rules_get_variant ~87

Get rules content for a specific variant within a game family. Returns headings, rules text, and direct URL.

NameTypeReqDescription
gamestringyesGame family slug (e.g. "backgammon", "draughts").
variantstringyesVariant name (e.g. "Acey-Deucey", "Standard Rules", "German Draughts"). Partial match supported.

No output schema declared.

No examples provided.

rules_list_games ~69

List all game families in the Moddable Games rules library. Returns titles, player counts, variant counts, and URLs.

NameTypeReqDescription
statusstringFilter by status. "published" (default) shows all published games, "live" shows only fully released, "all" includes unpublished.

No output schema declared.

No examples provided.

rules_random ~66

Pick a random game or variant from the library. Optionally constrain to a specific game family for a random variant within it.

NameTypeReqDescription
familystringOptional game family slug to pick a random variant from (e.g. "backgammon" for a random backgammon variant).

No output schema declared.

No examples provided.

rules_search ~72

Search the entire rules library by keyword. Returns matching entries ranked by relevance across all games and variants.

NameTypeReqDescription
limitnumberMax results to return (default 10, max 50).
querystringyesSearch query (e.g. "capture", "dice", "promotion", "4 players").

No output schema declared.

No examples provided.

team_split ~51

Randomly split a list of players into balanced teams. Handles odd numbers gracefully.

NameTypeReqDescription
playersarrayyesPlayer names to split into teams.
teamsnumberNumber of teams (default 2).

No output schema declared.

No examples provided.