Connection check
verified live · 27h ago
moddable-games-tools
15 tools for chess variant analysis, hex map generation, and board game utilities
Tools
89
GitHub stars
—
Installs / wk
—
Licence
—
Transport
streamable-http
Last checked
27h ago
Tools & capabilities
89 toolsRead from the running server on 27h ago.
board_gallery_get
board*
Get details of a specific board layout by ID Get details of a specific board layout by ID
board_gallery_search
limitquery
Search the board gallery (334 rendered board layouts across 33 game families) Search the board gallery (334 rendered board layouts across 33 game families)
board_gallery_stats
Get statistics about the board gallery (total boards, families, topologies) Get statistics about the board gallery (total boards, families, topologies)
chess_analyze_position
depthvariant
[DEPRECATED — use play_suggest_move] Analyse a chess position. Removal: v1.0.0. [DEPRECATED — use play_suggest_move] Analyse a chess position. Removal: v1.0.0.
chess_generate_puzzle
themevariantdifficulty
Get a random chess puzzle. Filter by variant or difficulty. Variant puzzles have no themes and max rating 1400 — theme and hard difficulty filters only apply to standard puzzles. Get a random chess puzzle. Filter by variant or difficulty. Variant puzzles have no themes and max rating 1400 — theme and hard difficulty filters only apply to standard puzzles.
chess_get_legal_moves
variant
[DEPRECATED — use play_create_game + play_get_moves] Get legal moves for a chess position. Removal: v1.0.0. [DEPRECATED — use play_create_game + play_get_moves] Get legal moves for a chess position. Removal: v1.0.0.
chess_get_opening_book
variant
[REMOVED — engine#98] Opening book resolution is broken in Worker context. No replacement. [REMOVED — engine#98] Opening book resolution is broken in Worker context. No replacement.
chess_get_status
variant
[DEPRECATED — use play_check_status] Get chess game status. Removal: v1.0.0. [DEPRECATED — use play_check_status] Get chess game status. Removal: v1.0.0.
chess_list_puzzle_types
List available puzzle variants, themes, and per-variant counts from the puzzle pool List available puzzle variants, themes, and per-variant counts from the puzzle pool
chess_list_variants
group
[DEPRECATED — use play_list_variants] List chess variants. Removal: v1.0.0. [DEPRECATED — use play_list_variants] List chess variants. Removal: v1.0.0.
chess_make_move
move*variant
[DEPRECATED — use play_apply_move] Apply a move to a chess game. Removal: v1.0.0. [DEPRECATED — use play_apply_move] Apply a move to a chess game. Removal: v1.0.0.
chess_make_moves
moves*variant
[DEPRECATED — use play_make_moves] Apply a sequence of chess moves. Removal: v1.0.0. [DEPRECATED — use play_make_moves] Apply a sequence of chess moves. Removal: v1.0.0.
chess_render_svg
fenvarianthighlights
[DEPRECATED — use play_render_board] Render a chess position as SVG. Removal: v1.0.0. [DEPRECATED — use play_render_board] Render a chess position as SVG. Removal: v1.0.0.
chess_validate_move
move*variant
[DEPRECATED — use play_validate_move] Check if a chess move is legal. Removal: v1.0.0. [DEPRECATED — use play_validate_move] Check if a chess move is legal. Removal: v1.0.0.
coin_flip
countchoices
Flip one or more coins, or pick from a list of choices Flip one or more coins, or pick from a list of choices
colony_dice_odds
numbers*
Calculate settlement dice probability for Colony/Catan-style resource numbers Calculate settlement dice probability for Colony/Catan-style resource numbers
dice_odds
target*comparisonexpression*
Calculate probability of meeting a target with a dice expression. Supports keep-high/low (4d6kh3). Calculate probability of meeting a target with a dice expression. Supports keep-high/low (4d6kh3).
dice_roll
countnotationexpression
Roll dice using standard notation (e.g. 2d6+3, 4d8, d20). Supports comma-separated pools and keep-high/low (4d6kh3). Roll dice using standard notation (e.g. 2d6+3, 4d8, d20). Supports comma-separated pools and keep-high/low (4d6kh3).
game_deck_create
drawtypehandsper_hand
Create, shuffle, and optionally draw/deal from a card deck Create, shuffle, and optionally draw/deal from a card deck
game_deck_deal
drawcards*handsper_hand
Shuffle and deal a custom deck of arbitrary named cards Shuffle and deal a custom deck of arbitrary named cards
game_deck_list_types
List all available deck types with metadata List all available deck types with metadata
game_jam_theme
count
Generate a random game jam theme combining mechanics and themes Generate a random game jam theme combining mechanics and themes
game_nukes_combat
terrainattacker*defender*
Resolve a Nukes combat encounter between units Resolve a Nukes combat encounter between units
game_score_tracker
gamescoresplayers*
Track scores for players in any game Track scores for players in any game
hex_compute_fov
q*r*gameseedrange*
Compute field of view from a hex position Compute field of view from a hex position
hex_export_svg
game*seedsizestylehexSizeplayers
Generate a hex map and export as SVG Generate a hex map and export as SVG
hex_generate_map
game*seedsizeplayers
Generate a hex map for a specific game and player count Generate a hex map for a specific game and player count
hex_get_info
q*r*gameseed
Get info about a specific hex coordinate (terrain, neighbours, distance) Get info about a specific hex coordinate (terrain, neighbours, distance)
hex_list_games
List all available hex map game types with configuration options List all available hex map game types with configuration options
hex_pathfind
endQ*endR*gameseedstartQ*startR*
Find shortest path between two hex coordinates Find shortest path between two hex coordinates
jam_status
Get the current Mod Jam status (active jam, deadline, submissions) Get the current Mod Jam status (active jam, deadline, submissions)
jam_timer
Get time remaining in the current Mod Jam Get time remaining in the current Mod Jam
jam_vote
Get voting status for the current Mod Jam Get voting status for the current Mod Jam
nukes_setup_generator
players
Generate random territory/resource setup for a Nukes game Generate random territory/resource setup for a Nukes game
oracle_ask
question*likelihood
Ask the oracle a yes/no question with likelihood modifier Ask the oracle a yes/no question with likelihood modifier
oracle_encounter
systemterraindifficultyparty_sizeparty_levelmonster_type
Generate a tabletop RPG encounter with CR-appropriate monsters, terrain, and loot (D&D 5e or Pathfinder 1e) Generate a tabletop RPG encounter with CR-appropriate monsters, terrain, and loot (D&D 5e or Pathfinder 1e)
oracle_interpret
gameresult*source_table
Resolve oracle cross-references. Given a result like "Action + Theme", follows references and returns expanded results Resolve oracle cross-references. Given a result like "Action + Theme", follows references and returns expanded results
oracle_list_games
List all supported RPG systems with oracle tables and entity data availability List all supported RPG systems with oracle tables and entity data availability
oracle_list_recipes
game
List all predefined scene recipes — curated multi-table compositions that produce coherent narrative prompts List all predefined scene recipes — curated multi-table compositions that produce coherent narrative prompts
oracle_list_tables
system*
List available oracle tables for a system List available oracle tables for a system
oracle_roll
tablesystem*
Roll on a random oracle table (Ironsworn, Starforged, Maze Rats, etc) Roll on a random oracle table (Ironsworn, Starforged, Maze Rats, etc)
oracle_scene
typereciperegionsystem
Generate a scene using oracle tables. With a recipe, rolls each table in the recipe, resolves cross-references, and composes a narrative sentence. Without, picks random tables. Generate a scene using oracle tables. With a recipe, rolls each table in the recipe, resolves cross-references, and composes a narrative sentence. Without, picks random tables.
oracle_table_view
gametable*
View the complete contents of an oracle table — all entries with roll ranges View the complete contents of an oracle table — all entries with roll ranges
piece_gallery_get_set
set*
Get full details and piece list for a specific set Get full details and piece list for a specific set
piece_gallery_search
limitquery*family
Search the piece set gallery by name, style, or game type Search the piece set gallery by name, style, or game type
piece_gallery_stats
Get statistics about the piece gallery (total sets, styles, authors, game families) Get statistics about the piece gallery (total sets, styles, authors, game families)
play_apply_move
move*state*
Apply a move to the game and return the new state. Pass the move object exactly as returned by play_get_moves (format varies by family: chess uses {from,to}, go uses {coord} or {ac… Apply a move to the game and return the new state. Pass the move object exactly as returned by play_get_moves (format varies by family: chess uses {from,to}, go uses {coord} or {action:"pass"}).
play_check_status
state*
Check the current game status: whose turn it is, whether the game is over, and who won. Check the current game status: whose turn it is, whether the game is over, and who won.
play_create_game
family*rngSeedvariant
Create a new game instance for a given family. Returns initial state to pass to subsequent calls. Variant can include flags like "grand+random" or "standard+drops". Create a new game instance for a given family. Returns initial state to pass to subsequent calls. Variant can include flags like "grand+random" or "standard+drops".
play_export_fen
state*
Export the current board position as a FEN-style notation string. Works for all 10 families (chess, draughts, go, reversi, shogi, xiangqi, mancala, morris, hex, landlords-game). Export the current board position as a FEN-style notation string. Works for all 10 families (chess, draughts, go, reversi, shogi, xiangqi, mancala, morris, hex, landlords-game).
play_get_definition
family*variant
Get the full engine definition (topology, render config, pieces, setup FEN) for a game variant. Returns the resolved frontmatter used to render and play the game. Get the full engine definition (topology, render config, pieces, setup FEN) for a game variant. Returns the resolved frontmatter used to render and play the game.
play_get_moves
state*
Get all legal moves for the current position. Requires state from play_create_game or play_apply_move. Get all legal moves for the current position. Requires state from play_create_game or play_apply_move.
play_list_families
List all playable game families supported by the engine (chess, draughts, go, reversi, shogi, xiangqi, mancala, morris, hex, landlords-game) List all playable game families supported by the engine (chess, draughts, go, reversi, shogi, xiangqi, mancala, morris, hex, landlords-game)
play_list_variants
family*
List available variants for a game family. Each variant can be passed to play_create_game. Variants with flags (e.g. +random) can be requested as "slug+flag". List available variants for a game family. Each variant can be passed to play_create_game. Variants with flags (e.g. +random) can be requested as "slug+flag".
play_load_fen
fen*family*variant
Create a game state from a FEN-style position string. Works for all 10 families. Create a game state from a FEN-style position string. Works for all 10 families.
play_make_moves
moves*state*
Apply a sequence of moves to a game and return the final state. Stops at the first illegal move. Move objects must match play_get_moves format. Apply a sequence of moves to a game and return the final state. Stops at the first illegal move. Move objects must match play_get_moves format.
play_render_board
sizestate*highlights
Render the current board position as SVG for any playable family (chess, draughts, go, reversi, shogi, xiangqi, mancala, morris, hex, landlords-game). Render the current board position as SVG for any playable family (chess, draughts, go, reversi, shogi, xiangqi, mancala, morris, hex, landlords-game).
play_suggest_move
state*difficulty
Use AI to analyse the position and suggest the best move. Supports 5 difficulty levels across all 10 playable families. Use AI to analyse the position and suggest the best move. Supports 5 difficulty levels across all 10 playable families.
play_validate_move
move*state*
Check whether a move is legal in the current position without applying it. Pass the move object in the same format as play_get_moves returns. Check whether a move is legal in the current position without applying it. Pass the move object in the same format as play_get_moves returns.
random_player_order
players*
Randomise turn order for a list of players Randomise turn order for a list of players
rpg_browse_category
gamepagesystem*category*pageSize
Browse entities by category with pagination Browse entities by category with pagination
rpg_chargen
classlevelsystem*
Generate a random character for an RPG system (D&D 5e, Pathfinder, Ironsworn, Cairn, Knave, etc) Generate a random character for an RPG system (D&D 5e, Pathfinder, Ironsworn, Cairn, Knave, etc)
rpg_get_entity
gamename*systemcategory
Get full details of a specific RPG entity by name Get full details of a specific RPG entity by name
rpg_list_categories
gamesystem
List entity categories for an RPG system (spells, monsters, classes, equipment, etc) List entity categories for an RPG system (spells, monsters, classes, equipment, etc)
rpg_loot
tiercountsystem
Generate random loot/treasure for a system and tier Generate random loot/treasure for a system and tier
rpg_random
game*countsystemcategory
Get random entities from an RPG system for inspiration or encounter prep Get random entities from an RPG system for inspiration or encounter prep
rpg_random_encounter
typesystemdifficulty
Generate a random encounter for a system and difficulty level Generate a random encounter for a system and difficulty level
rpg_search_entities
gamelimitquery*systemcategory
Search RPG entities (spells, monsters, classes, items) across all systems Search RPG entities (spells, monsters, classes, items) across all systems
rules_get_diagram
game*variant
Get board diagram SVG URL for a game variant. Returns the diagram path, topology, and rendering metadata. Get board diagram SVG URL for a game variant. Returns the diagram path, topology, and rendering metadata.
rules_get_game
game*
Get full rulebook content for a specific game (markdown). For metadata only, use rules_get_game_meta instead. Get full rulebook content for a specific game (markdown). For metadata only, use rules_get_game_meta instead.
rules_get_game_meta
game*
Get structured metadata for a game: players, duration, complexity, mechanics, how_to_play, variant list, page list, related games. Lightweight alternative to fetching the full rule… Get structured metadata for a game: players, duration, complexity, mechanics, how_to_play, variant list, page list, related games. Lightweight alternative to fetching the full rulebook.
rules_get_page
game*page*section
Get a specific page/section from a game rulebook (e.g. character creation, combat rules, marketplace). Use rules_get_game_meta to see available pages. Get a specific page/section from a game rulebook (e.g. character creation, combat rules, marketplace). Use rules_get_game_meta to see available pages.
rules_get_variant
game*variant*
Get rules for a specific game variant Get rules for a specific game variant
rules_get_variant_list
game*playabletopology
List all variants for a game with structured metadata (players, board, playable status, topology, engine config). Much richer than parsing the rulebook. List all variants for a game with structured metadata (players, board, playable status, topology, engine config). Much richer than parsing the rulebook.
rules_list_games
statuscategorymechaniccomplexity
List all available game rulebooks with metadata (players, duration, complexity, mechanics). Filterable by type, complexity, and mechanics. List all available game rulebooks with metadata (players, duration, complexity, mechanics). Filterable by type, complexity, and mechanics.
rules_random
playersmaxDuration
Get a random game suggestion from the library Get a random game suggestion from the library
rules_search
gamelimitquery*sectionType
Full-text search across all published rulebooks. Returns section-typed results with deep-link anchors. Full-text search across all published rulebooks. Returns section-typed results with deep-link anchors.
talisman_draw_characters
count
Draw random characters from the Talisman 4e (revised) base set for a character lottery Draw random characters from the Talisman 4e (revised) base set for a character lottery
talisman_draw_encounter
ring
Draw a random encounter for a Talisman ring (outer, middle, inner, crown) Draw a random encounter for a Talisman ring (outer, middle, inner, crown)
team_split
countteamsmembersplayers*
Randomly divide players into teams Randomly divide players into teams
ti4_draft_factions
choicesplayersexpansions
Milty-style TI4 draft with pick pools per player Milty-style TI4 draft with pick pools per player
ti4_draw_agendas
typecountexpansions
Draw random agenda cards for TI4 political phase Draw random agenda cards for TI4 political phase
ti4_draw_objectives
countstageexpansions
Draw random public objectives for TI4 Draw random public objectives for TI4
ti4_list_factions
expansions
List all TI4 factions with colors, flags, and expansion info List all TI4 factions with colors, flags, and expansion info
ti4_random_factions
players*expansions
Generate random faction assignments for Twilight Imperium 4th Edition Generate random faction assignments for Twilight Imperium 4th Edition
tile_gallery_get
set*
Get details of a specific tile set with all tile types Get details of a specific tile set with all tile types
tile_gallery_search
query
Search hex tile sets by name, game, or terrain type Search hex tile sets by name, game, or terrain type
tile_gallery_stats
Get statistics about available tile sets Get statistics about available tile sets
timer_suggest
game*players