Moddable Games Tools
Measured conclusion: Deep-tested. L2 outcome: tools_ok.
15 tools for chess variant analysis, hex map generation, and board game utilities
| Author | games.moddable.tools |
|---|---|
| Access | remote |
| Publisher key required | No |
| Measured state | Deep-tested |
| L1 liveness | alive |
| L1 latency | 312 ms |
| Last measured | 2026-10-24 |
Add to your agent
Copy this into your MCP client config:
{
"mcpServers": {
"Moddable Games Tools": {
"url": "https://tools.moddable.games/mcp",
"transport": "streamable-http"
}
}
}
Measured tools (89)
chess_generate_puzzleGet a random chess puzzle. Filter by variant, difficulty or theme. Not every variant puzzle carries themes; use chess_list_puzzle_types to see what the pool holds.
Parameters:
theme— string — Puzzle theme (fork, pin, skewer, mateIn2, etc). Not every variant puzzle carries themes.variant— string — Chess variant play slug (e.g. almost-chess, benedict, fischer-random, king-of-the-hill, standard); a manifest key such as chess960 is also accepted. Returns only puzzles for this variant.difficulty— string — Puzzle difficulty by rating: easy under 1200, medium 1200-1799, hard 1800 and above
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
chess_list_puzzle_typesList available puzzle variants, themes, and per-variant counts from the puzzle pool
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
chess_list_variants[DEPRECATED — use play_list_variants] List chess variants. Removal: v1.0.0.
Parameters:
group— string
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
chess_get_legal_moves[DEPRECATED — use play_create_game + play_get_moves] Get legal moves for a chess position. Removal: v1.0.0.
Parameters:
variant— string
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
chess_analyze_position[DEPRECATED — use play_suggest_move] Analyse a chess position. Removal: v1.0.0.
Parameters:
depth— numbervariant— string
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
chess_make_move[DEPRECATED — use play_apply_move] Apply a move to a chess game. Removal: v1.0.0.
Parameters:
move(required) — objectvariant— string
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
chess_validate_move[DEPRECATED — use play_validate_move] Check if a chess move is legal. Removal: v1.0.0.
Parameters:
move(required) — objectvariant— string
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
chess_get_status[DEPRECATED — use play_check_status] Get chess game status. Removal: v1.0.0.
Parameters:
variant— string
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
chess_render_svg[DEPRECATED — use play_render_board] Render a chess position as SVG. Removal: v1.0.0.
Parameters:
fen— string — FEN position stringvariant— stringhighlights— array — Squares to highlight (e.g. ["e2","e4"])
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
chess_make_moves[DEPRECATED — use play_make_moves] Apply a sequence of chess moves. Removal: v1.0.0.
Parameters:
moves(required) — arrayvariant— string
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
chess_get_opening_book[REMOVED — engine#98] Opening book resolution is broken in Worker context. No replacement.
Parameters:
variant— string
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
hex_list_gamesList all available hex map game types with configuration options
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
hex_generate_mapGenerate a hex map for a specific game and player count
Parameters:
game(required) — string — Game type (nukes, colony, catan, age-of-steam, eclipse, twilight-imperium)seed— string — Random seed for reproducibilitysize— number — Map size (default: game default)players— number — Number of players (default: 2)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
hex_export_svgGenerate a hex map and export as SVG
Parameters:
game(required) — string — Game typeseed— string — Random seedsize— number — Map sizestyle— string — Visual stylehexSize— number — Hex size in pixels (default: 30)players— number — Number of players
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
hex_get_infoGet info about a specific hex coordinate (terrain, neighbours, distance)
Parameters:
q(required) — number — Hex Q coordinate (column)r(required) — number — Hex R coordinate (row)game— string — Game context for terrain lookupseed— string — Map seed (to look up terrain from a generated map)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
hex_compute_fovCompute field of view from a hex position
Parameters:
q(required) — number — Origin Q coordinater(required) — number — Origin R coordinaterange(required) — number — Vision range in hexesgame— string — Game context for obstacle lookupseed— string — Map seed
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
hex_pathfindFind shortest path between two hex coordinates
Parameters:
startQ(required) — number — Start QstartR(required) — number — Start RendQ(required) — number — End QendR(required) — number — End Rgame— string — Game context for movement costsseed— string — Map seed
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
play_list_familiesList all playable game families supported by the engine (chess, draughts, go, reversi, shogi, xiangqi, mancala, morris, hex, landlords-game, backgammon, standard-52, bavarian-32, flower-48, double-six-dominoes, mahjong, standard-dice, agon, asalto, chaupar, dou-shou-qi, fanorona, halma, nyout, pachisi, royal-ur, senet, stern-halma, surakarta, tafl)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
play_list_variantsList 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".
Parameters:
family(required) — string — Game family (chess, draughts, go, reversi, shogi, xiangqi, mancala, morris, hex, landlords-game, backgammon, standard-52, bavarian-32, flower-48, double-six-dominoes, mahjong, standard-dice, agon, asalto, chaupar, dou-shou-qi, fanorona, halma, nyout, pachisi, royal-ur, senet, stern-halma, surakarta, tafl)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
play_get_definitionGet 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.
Parameters:
family(required) — string — Game family (chess, draughts, go, reversi, shogi, xiangqi, mancala, morris, hex, landlords-game, backgammon, standard-52, bavarian-32, flower-48, double-six-dominoes, mahjong, standard-dice, agon, asalto, chaupar, dou-shou-qi, fanorona, halma, nyout, pachisi, royal-ur, senet, stern-halma, surakarta, tafl)variant— string — Variant slug (default: the family's default game)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
play_create_gameCreate 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".
Parameters:
family(required) — string — Game family name (chess, draughts, go, reversi, shogi, xiangqi, mancala, morris, hex, landlords-game, backgammon, standard-52, bavarian-32, flower-48, double-six-dominoes, mahjong, standard-dice, agon, asalto, chaupar, dou-shou-qi, fanorona, halma, nyout, pachisi, royal-ur, senet, stern-halma, surakarta, tafl)rngSeed— number — Optional RNG seed for deterministic gamesvariant— string — Variant slug, optionally with flags (e.g. "grand", "grand+random", "standard+drops")
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
play_get_movesGet all legal moves for the current position. Requires state from play_create_game or play_apply_move.
Parameters:
state(required) — object — Game state object returned by play_create_game or play_apply_move
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
play_apply_moveApply 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"}).
Parameters:
state(required) — object — Game state object from play_create_game or a previous play_apply_movemove(required) — object — Move object from play_get_moves (e.g. {from:"e2",to:"e4"} for chess, {coord:40} for go, {action:"pass"})
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
play_check_statusCheck the current game status: whose turn it is, whether the game is over, and who won.
Parameters:
state(required) — object — Game state object from play_create_game or play_apply_move
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
play_suggest_moveUse AI to analyse the position and suggest the best move. Supports 5 difficulty levels across all 30 playable families.
Parameters:
state(required) — object — Game state object from play_create_game or play_apply_movedifficulty— string — AI difficulty level (default: medium)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
play_render_boardRender the current board position as SVG for any playable family (chess, draughts, go, reversi, shogi, xiangqi, mancala, morris, hex, landlords-game, backgammon, standard-52, bavarian-32, flower-48, double-six-dominoes, mahjong, standard-dice, agon, asalto, chaupar, dou-shou-qi, fanorona, halma, nyout, pachisi, royal-ur, senet, stern-halma, surakarta, tafl).
Parameters:
state(required) — object — Game state object from play_create_game or play_apply_movesize— integer — Board width in pixels for PNG output (default: 480, max: 2048)highlights— array — Optional cells to highlight (e.g. [{key: 52, color: "#ff0"}])
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
play_export_fenExport the current board position as a FEN-style setup string, in the form the variant's own frontmatter declares its starting position. Card, tile and dice games have no board position to export.
Parameters:
state(required) — object — Game state object from play_create_game or play_apply_move
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
play_load_fenCreate a game from a FEN-style setup string, as returned by play_export_fen. Pass the same variant the position was exported from.
Parameters:
family(required) — string — Game family (chess, draughts, go, reversi, shogi, xiangqi, mancala, morris, hex, landlords-game, backgammon, standard-52, bavarian-32, flower-48, double-six-dominoes, mahjong, standard-dice, agon, asalto, chaupar, dou-shou-qi, fanorona, halma, nyout, pachisi, royal-ur, senet, stern-halma, surakarta, tafl)fen(required) — string — Position string in FEN-style notation for the familyvariant— string — Optional variant slug (default: the family's default game)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
play_validate_moveCheck 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.
Parameters:
state(required) — object — Game state object from play_create_game or play_apply_movemove(required) — object — Move object to validate (same format as play_get_moves output)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
play_make_movesApply 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.
Parameters:
state(required) — object — Game state object from play_create_game or play_apply_movemoves(required) — array — Array of move objects in the format returned by play_get_moves
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
rules_list_gamesList all available game rulebooks with metadata (players, duration, complexity, mechanics). Filterable by type, complexity, and mechanics.
Parameters:
status— string — Filter by status (default: all)category— string — Filter by type (standalone, hub, classic, rpg, component, platform, mod, game)mechanic— string — Filter by mechanic (e.g. dice, capture, hex, oracle, narrative)complexity— string — Filter by complexity level
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
rules_get_gameGet full rulebook content for a specific game (markdown). For metadata only, use rules_get_game_meta instead.
Parameters:
game(required) — string — Game slug (e.g. chess, dnd-5e, catan)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
rules_get_game_metaGet 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.
Parameters:
game(required) — string — Game slug (e.g. chess, backgammon, cairn)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
rules_get_pageGet a specific page/section from a game rulebook (e.g. character creation, combat rules, marketplace). Use rules_get_game_meta to see available pages.
Parameters:
game(required) — string — Game slug (e.g. cairn, dnd-5e)page(required) — string — Page slug (e.g. character-creation, combat-and-difficulty)section— string — Section name (e.g. rules, classes, spells). Default: rules
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
rules_get_variant_listList all variants for a game with structured metadata (players, board, playable status, topology, engine config). Much richer than parsing the rulebook.
Parameters:
game(required) — string — Game slug (e.g. chess, backgammon, draughts)playable— boolean — Filter to only engine-playable variantstopology— string — Filter by board topology (grid, hex, track, graph, tableau)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
rules_get_diagramGet board diagram SVG URL for a game variant. Returns the diagram path, topology, and rendering metadata.
Parameters:
game(required) — string — Game family slug (e.g. chess, go, agon)variant— string — Variant slug (default: standard)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
rules_get_variantGet rules for a specific game variant
Parameters:
game(required) — string — Game slugvariant(required) — string — Variant slug
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
rules_searchFull-text search across all published rulebooks. Returns section-typed results with deep-link anchors.
Parameters:
query(required) — string — Search querygame— string — Limit to specific game sluglimit— number — Max results (default 10)sectionType— string — Filter by section type (general, board, pieces, setup, movement, capture, winning, special, variants)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
rules_randomGet a random game suggestion from the library
Parameters:
players— number — Number of players availablemaxDuration— number — Maximum game duration in minutes
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
board_gallery_searchSearch the board gallery (335 rendered board layouts across 34 game families)
Parameters:
limit— number — Max results (default 10)query— string — Search term (e.g. "8x8", "hex", "shogi")
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
board_gallery_getGet details of a specific board layout by ID
Parameters:
board(required) — string — Board ID or name
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
tile_gallery_searchSearch hex tile sets by name, game, or terrain type
Parameters:
query— string — Search term (omit to list all)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
tile_gallery_getGet details of a specific tile set with all tile types
Parameters:
set(required) — string — Tile set ID or name
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
tile_gallery_statsGet statistics about available tile sets
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
board_gallery_statsGet statistics about the board gallery (total boards, families, topologies)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
piece_gallery_searchSearch the piece set gallery by name, style, or game type
Parameters:
query(required) — string — Search term (e.g. "staunton", "pixel", "shogi")limit— number — Max results (default 10)family— string — Filter by game family (chess, shogi, xiangqi, draughts, go, etc)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
piece_gallery_get_setGet full details and piece list for a specific set
Parameters:
set(required) — string — Set name or ID
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
piece_gallery_statsGet statistics about the piece gallery (total sets, styles, authors, game families)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
oracle_list_gamesList all supported RPG systems with oracle tables and entity data availability
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
rpg_chargenGenerate a random character for an RPG system (D&D 5e, Pathfinder, Ironsworn, Cairn, Knave, etc)
Parameters:
system(required) — string — RPG system (dnd-5e, pathfinder-1e, ironsworn, starforged, cairn, knave, maze-rats, dungeon-world)class— string — Class preference (omit for random)level— number — Character level (default: 1)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
oracle_rollRoll on a random oracle table (Ironsworn, Starforged, Maze Rats, etc)
Parameters:
system(required) — string — RPG system slug (ironsworn, starforged, maze-rats, cairn, knave, fate-core)table— string — Specific table name (omit for random)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
oracle_list_tablesList available oracle tables for a system
Parameters:
system(required) — string — RPG system slug
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
oracle_askAsk the oracle a yes/no question with likelihood modifier
Parameters:
question(required) — string — Yes/no questionlikelihood— string — How likely is yes? (default: even)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
oracle_sceneGenerate 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.
Parameters:
type— string — Scene type for random mode (default: event)recipe— string — Recipe ID (from oracle_list_recipes) — rolls each table in the reciperegion— string — Region for Starforged region-aware recipessystem— string — RPG system slug (default: ironsworn)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
rpg_search_entitiesSearch RPG entities (spells, monsters, classes, items) across all systems
Parameters:
query(required) — string — Search termgame— string — Alias for systemlimit— number — Max results (default 10)system— string — Limit to system (dnd-5e, pathfinder-1e, etc)category— string — Entity category (spell, monster, class, item)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
rpg_get_entityGet full details of a specific RPG entity by name
Parameters:
name(required) — string — Entity namegame— string — Alias for systemsystem— string — System slugcategory— string — Category filter (spells, monsters, classes, etc)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
rpg_random_encounterGenerate a random encounter for a system and difficulty level
Parameters:
type— string — Monster type filter (beast, undead, fiend, dragon, etc)system— string — System slug (default: dnd-5e)difficulty— string — Encounter difficulty
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
rpg_browse_categoryBrowse entities by category with pagination
Parameters:
system(required) — string — System slugcategory(required) — string — Category (spell, monster, class, item, feat, etc)game— string — Alias for systempage— number — Page number (default 1)pageSize— number — Items per page (default 20)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
rpg_lootGenerate random loot/treasure for a system and tier
Parameters:
tier— string — Loot tier (default: minor)count— number — Number of items (default 3)system— string — System slug (default: dnd-5e)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
oracle_list_recipesList all predefined scene recipes — curated multi-table compositions that produce coherent narrative prompts
Parameters:
game— string — Filter by game system (omit for all)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
oracle_interpretResolve oracle cross-references. Given a result like "Action + Theme", follows references and returns expanded results
Parameters:
result(required) — string — Oracle result text to interpretgame— string — Game system (default: starforged)source_table— string — Table ID the result came from
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
oracle_table_viewView the complete contents of an oracle table — all entries with roll ranges
Parameters:
table(required) — string — Table ID to viewgame— string — Game system (default: starforged)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
oracle_encounterGenerate a tabletop RPG encounter with CR-appropriate monsters, terrain, and loot (D&D 5e or Pathfinder 1e)
Parameters:
system— string — Game system (default: dnd-5e)terrain— string — Terrain type (omit for random)difficulty— string — Encounter difficulty (default: medium)party_size— number — Number of players 1-10 (default: 4)party_level— number — Average party level 1-20 (default: 5)monster_type— string — Filter by type (undead, dragon, beast, etc)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
rpg_list_categoriesList entity categories for an RPG system (spells, monsters, classes, equipment, etc)
Parameters:
game— string — Game system slug (omit for all systems)system— string — Alias for game
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
rpg_randomGet random entities from an RPG system for inspiration or encounter prep
Parameters:
game(required) — string — Game system slugcount— number — Number of random picks 1-10 (default: 1)system— string — Alias for gamecategory— string — Category to draw from (omit for any)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
ti4_random_factionsGenerate random faction assignments for Twilight Imperium 4th Edition
Parameters:
players(required) — number — Number of players (3-8)expansions— array — Expansion filter (e.g. ["base","pok"]). Default: all
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
ti4_draft_factionsMilty-style TI4 draft with pick pools per player
Parameters:
choices— number — Factions per player to choose from (default: 3)players— number — Number of players (3-8, default: 6)expansions— array — Expansion filter (e.g. ["base","pok"]). Default: all
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
ti4_list_factionsList all TI4 factions with colors, flags, and expansion info
Parameters:
expansions— array — Filter by expansion (e.g. ["base","pok"]). Default: all
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
ti4_draw_objectivesDraw random public objectives for TI4
Parameters:
count— number — Number to draw (default: 5)stage— number — Stage 1 or 2 (default: both)expansions— array — Expansion filter
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
ti4_draw_agendasDraw random agenda cards for TI4 political phase
Parameters:
type— string — Filter by typecount— number — Number to draw (default: 2)expansions— array — Expansion filter
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
nukes_setup_generatorGenerate random territory/resource setup for a Nukes game
Parameters:
players— number — Number of players (2-6, default: 2)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
game_nukes_combatResolve a Nukes combat encounter between units
Parameters:
attacker(required) — string — Attacking unit typedefender(required) — string — Defending unit typeterrain— string — Terrain type (plains, forest, mountain, urban)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
colony_dice_oddsCalculate settlement dice probability for Colony/Catan-style resource numbers
Parameters:
numbers(required) — string — Settlement numbers, comma-separated (e.g. "5,6,8,9")
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
game_deck_createCreate, shuffle, and optionally draw/deal from a card deck
Parameters:
draw— number — Number of cards to drawtype— string — Deck type (default: standard-52)hands— number — Deal into N handsper_hand— number — Cards per hand (default: 5)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
game_deck_list_typesList all available deck types with metadata
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
game_deck_dealShuffle and deal a custom deck of arbitrary named cards
Parameters:
cards(required) — array — Cards in the deck (name + optional quantity)draw— number — Draw N cards from the top instead of dealing handshands— number — Deal into N hands (default: 1 = draw pile only)per_hand— number — Cards per hand (default: 5)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
game_score_trackerTrack scores for players in any game
Parameters:
players(required) — array — Player namesgame— string — Game namescores— array — Scores (default: all 0)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
talisman_draw_charactersDraw random characters from the Talisman 4e (revised) base set for a character lottery
Parameters:
count— number — Number of characters to draw (2-6, default: 4)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
talisman_draw_encounterDraw a random encounter for a Talisman ring (outer, middle, inner, crown)
Parameters:
ring— string — Ring to draw from (default: outer)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
jam_statusGet the current Mod Jam status (active jam, deadline, submissions)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
jam_timerGet time remaining in the current Mod Jam
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
jam_voteGet voting status for the current Mod Jam
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
dice_rollRoll dice using standard notation (e.g. 2d6+3, 4d8, d20). Supports comma-separated pools and keep-high/low (4d6kh3).
Parameters:
count— number — Number of times to roll (default 1)notation— string — Dice notation (e.g. 2d6+3, 4d6kh3, 3d8,1d12+2)expression— string — Alias for notation
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
coin_flipFlip one or more coins, or pick from a list of choices
Parameters:
count— number — Number of coins (default 1)choices— string — Comma-separated options to pick from (overrides coin flip)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
team_splitRandomly divide players into teams
Parameters:
players(required) — array — Player namescount— number — Number of teams (default 2)teams— number — Alias for countmembers— string — Comma-separated names (alternative to array)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
random_player_orderRandomise turn order for a list of players
Parameters:
players(required) — array — Player names
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
timer_suggestSuggest time controls for a game based on player count and complexity
Parameters:
game(required) — string — Game nameplayers— number — Number of players
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
game_jam_themeGenerate a random game jam theme combining mechanics and themes
Parameters:
count— number — Number of themes to generate (default 3)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
dice_oddsCalculate probability of meeting a target with a dice expression. Supports keep-high/low (4d6kh3).
Parameters:
expression(required) — string — Dice expression (e.g. 2d6, 4d6kh3)target(required) — number — Target number to meet or exceedcomparison— string — Comparison (default >=)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
Measured by MCPYP probing. Untested fields are omitted, never estimated. Listing is always free; MCPYP never proxies calls or stores user tokens.