moddable-games avatar

Moddable Games Tools

moddable-games/moddable-website

Fifteen tools wrapping three open-source board game engines: Moddable Chess (70+ variants), Moddable Hexmaps, and utilities for Twilight Imperium and Talisman. You get chess position validation, variant rule lookups, hex coordinate math, map generation, dice rolling, and faction randomizers. The tools run on a Cloudflare Worker at tools.moddable.games with REST and SSE transports, plus OpenAPI docs. Useful if you're building game analysis features, procedural content for tabletop mods, or need structured board game logic without writing spatial math from scratch. The puzzle generation uses a pre-computed pool to stay inside free-tier limits.

tools
80
transport
HTTP
last updated
Jun 10, 2026

Install

From registry metadata
$ npx add-mcp https://tools.moddable.games/mcp --name moddable-games-tools

Run in your terminal. add-mcp asks which agents to add it to (Claude Code, Codex, Cursor and more). Add -g to install it for every project.

Review the command, arguments and environment values before installing. MCP servers run with your local permissions.

Other ways

Claude Code

$ claude mcp add --transport http moddable-games-tools https://tools.moddable.games/mcp

Run in your terminal. Add --scope user to make it available in every project.

Tools

Verified live · 80 tools

Verified live against the running server on Nov 6, 2026.

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.3 params

Get 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* required
difficultystring
Puzzle difficulty by rating: easy under 1200, medium 1200-1799, hard 1800 and aboveone of easy · medium · hard
themestring
Puzzle theme (fork, pin, skewer, mateIn2, etc). Not every variant puzzle carries themes.
variantstring
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.
chess_list_puzzle_typesList 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

No parameters. Call it with no arguments.

chess_list_variants[DEPRECATED — use play_list_variants] List chess variants. Removal: v1.0.0.1 params

[DEPRECATED — use play_list_variants] List chess variants. Removal: v1.0.0.

Parameters* required
groupstring
chess_get_legal_moves[DEPRECATED — use play_create_game + play_get_moves] Get legal moves for a chess position. Removal: v1.0.0.1 params

[DEPRECATED — use play_create_game + play_get_moves] Get legal moves for a chess position. Removal: v1.0.0.

Parameters* required
variantstring
chess_analyze_position[DEPRECATED — use play_suggest_move] Analyse a chess position. Removal: v1.0.0.2 params

[DEPRECATED — use play_suggest_move] Analyse a chess position. Removal: v1.0.0.

Parameters* required
depthnumber
variantstring
chess_make_move[DEPRECATED — use play_apply_move] Apply a move to a chess game. Removal: v1.0.0.2 params

[DEPRECATED — use play_apply_move] Apply a move to a chess game. Removal: v1.0.0.

Parameters* required
move*object
variantstring
chess_validate_move[DEPRECATED — use play_validate_move] Check if a chess move is legal. Removal: v1.0.0.2 params

[DEPRECATED — use play_validate_move] Check if a chess move is legal. Removal: v1.0.0.

Parameters* required
move*object
variantstring
chess_get_status[DEPRECATED — use play_check_status] Get chess game status. Removal: v1.0.0.1 params

[DEPRECATED — use play_check_status] Get chess game status. Removal: v1.0.0.

Parameters* required
variantstring
chess_render_svg[DEPRECATED — use play_render_board] Render a chess position as SVG. Removal: v1.0.0.3 params

[DEPRECATED — use play_render_board] Render a chess position as SVG. Removal: v1.0.0.

Parameters* required
fenstring
FEN position string
highlightsarray
Squares to highlight (e.g. ["e2","e4"])
variantstring
chess_make_moves[DEPRECATED — use play_make_moves] Apply a sequence of chess moves. Removal: v1.0.0.2 params

[DEPRECATED — use play_make_moves] Apply a sequence of chess moves. Removal: v1.0.0.

Parameters* required
moves*array
variantstring
chess_get_opening_book[REMOVED — engine#98] Opening book resolution is broken in Worker context. No replacement.1 params

[REMOVED — engine#98] Opening book resolution is broken in Worker context. No replacement.

Parameters* required
variantstring
hex_list_gamesList all available hex map game types with configuration options

List all available hex map game types with configuration options

No parameters. Call it with no arguments.

hex_generate_mapGenerate a hex map for a specific game and player count4 params

Generate a hex map for a specific game and player count

Parameters* required
game*string
Game type (nukes, colony, catan, age-of-steam, eclipse, twilight-imperium)
playersnumber
Number of players (default: 2)
seedstring
Random seed for reproducibility
sizenumber
Map size (default: game default)
hex_export_svgGenerate a hex map and export as SVG6 params

Generate a hex map and export as SVG

Parameters* required
game*string
Game type
hexSizenumber
Hex size in pixels (default: 30)
playersnumber
Number of players
seedstring
Random seed
sizenumber
Map size
stylestring
Visual style
hex_get_infoGet info about a specific hex coordinate (terrain, neighbours, distance)4 params

Get info about a specific hex coordinate (terrain, neighbours, distance)

Parameters* required
gamestring
Game context for terrain lookup
q*number
Hex Q coordinate (column)
r*number
Hex R coordinate (row)
seedstring
Map seed (to look up terrain from a generated map)
hex_compute_fovCompute field of view from a hex position5 params

Compute field of view from a hex position

Parameters* required
gamestring
Game context for obstacle lookup
q*number
Origin Q coordinate
r*number
Origin R coordinate
range*number
Vision range in hexes
seedstring
Map seed
hex_pathfindFind shortest path between two hex coordinates6 params

Find shortest path between two hex coordinates

Parameters* required
endQ*number
End Q
endR*number
End R
gamestring
Game context for movement costs
seedstring
Map seed
startQ*number
Start Q
startR*number
Start R
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, fanoro...

List 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, fanoro...

No parameters. Call it with no arguments.

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".1 params

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".

Parameters* required
family*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,...
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.2 params

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.

Parameters* required
family*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,...
variantstring
Variant slug (default: the family's default game)
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".3 params

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".

Parameters* required
family*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, a...
rngSeednumber
Optional RNG seed for deterministic games
variantstring
Variant slug, optionally with flags (e.g. "grand", "grand+random", "standard+drops")
play_get_movesGet all legal moves for the current position. Requires state from play_create_game or play_apply_move.1 params

Get all legal moves for the current position. Requires state from play_create_game or play_apply_move.

Parameters* required
state*object
Game state object returned by play_create_game or play_apply_move
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"}).2 params

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"}).

Parameters* required
move*object
Move object from play_get_moves (e.g. {from:"e2",to:"e4"} for chess, {coord:40} for go, {action:"pass"})
state*object
Game state object from play_create_game or a previous play_apply_move
play_check_statusCheck the current game status: whose turn it is, whether the game is over, and who won.1 params

Check the current game status: whose turn it is, whether the game is over, and who won.

Parameters* required
state*object
Game state object from play_create_game or play_apply_move
play_suggest_moveUse AI to analyse the position and suggest the best move. Supports 5 difficulty levels across all 30 playable families.2 params

Use AI to analyse the position and suggest the best move. Supports 5 difficulty levels across all 30 playable families.

Parameters* required
difficultystring
AI difficulty level (default: medium)one of beginner · easy · medium · hard · expert
state*object
Game state object from play_create_game or play_apply_move
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-q...3 params

Render 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-q...

Parameters* required
highlightsarray
Optional cells to highlight (e.g. [{key: 52, color: "#ff0"}])
sizeinteger
Board width in pixels for PNG output (default: 480, max: 2048)
state*object
Game state object from play_create_game or play_apply_move
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.1 params

Export 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* required
state*object
Game state object from play_create_game or play_apply_move
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.3 params

Create a game from a FEN-style setup string, as returned by play_export_fen. Pass the same variant the position was exported from.

Parameters* required
family*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,...
fen*string
Position string in FEN-style notation for the family
variantstring
Optional variant slug (default: the family's default game)
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.2 params

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.

Parameters* required
move*object
Move object to validate (same format as play_get_moves output)
state*object
Game state object from play_create_game or play_apply_move
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.2 params

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.

Parameters* required
moves*array
Array of move objects in the format returned by play_get_moves
state*object
Game state object from play_create_game or play_apply_move
rules_list_gamesList all available game rulebooks with metadata (players, duration, complexity, mechanics). Filterable by type, complexity, and mechanics.4 params

List all available game rulebooks with metadata (players, duration, complexity, mechanics). Filterable by type, complexity, and mechanics.

Parameters* required
categorystring
Filter by type (standalone, hub, classic, rpg, component, platform, mod, game)
complexitystring
Filter by complexity levelone of simple · moderate · complex
mechanicstring
Filter by mechanic (e.g. dice, capture, hex, oracle, narrative)
statusstring
Filter by status (default: all)one of live · alpha · playtest
rules_get_gameGet full rulebook content for a specific game (markdown). For metadata only, use rules_get_game_meta instead.1 params

Get full rulebook content for a specific game (markdown). For metadata only, use rules_get_game_meta instead.

Parameters* required
game*string
Game slug (e.g. chess, dnd-5e, catan)
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.1 params

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.

Parameters* required
game*string
Game slug (e.g. chess, backgammon, cairn)
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.3 params

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.

Parameters* required
game*string
Game slug (e.g. cairn, dnd-5e)
page*string
Page slug (e.g. character-creation, combat-and-difficulty)
sectionstring
Section name (e.g. rules, classes, spells). Default: rules
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.3 params

List all variants for a game with structured metadata (players, board, playable status, topology, engine config). Much richer than parsing the rulebook.

Parameters* required
game*string
Game slug (e.g. chess, backgammon, draughts)
playableboolean
Filter to only engine-playable variants
topologystring
Filter by board topology (grid, hex, track, graph, tableau)
rules_get_diagramGet board diagram SVG URL for a game variant. Returns the diagram path, topology, and rendering metadata.2 params

Get board diagram SVG URL for a game variant. Returns the diagram path, topology, and rendering metadata.

Parameters* required
game*string
Game family slug (e.g. chess, go, agon)
variantstring
Variant slug (default: standard)
rules_get_variantGet rules for a specific game variant2 params

Get rules for a specific game variant

Parameters* required
game*string
Game slug
variant*string
Variant slug
rules_searchFull-text search across all published rulebooks. Returns section-typed results with deep-link anchors.4 params

Full-text search across all published rulebooks. Returns section-typed results with deep-link anchors.

Parameters* required
gamestring
Limit to specific game slug
limitnumber
Max results (default 10)
query*string
Search query
sectionTypestring
Filter by section type (general, board, pieces, setup, movement, capture, winning, special, variants)
rules_randomGet a random game suggestion from the library2 params

Get a random game suggestion from the library

Parameters* required
maxDurationnumber
Maximum game duration in minutes
playersnumber
Number of players available
board_gallery_searchSearch the board gallery (335 rendered board layouts across 34 game families)2 params

Search the board gallery (335 rendered board layouts across 34 game families)

Parameters* required
limitnumber
Max results (default 10)
querystring
Search term (e.g. "8x8", "hex", "shogi")
board_gallery_getGet details of a specific board layout by ID1 params

Get details of a specific board layout by ID

Parameters* required
board*string
Board ID or name
tile_gallery_searchSearch hex tile sets by name, game, or terrain type1 params

Search hex tile sets by name, game, or terrain type

Parameters* required
querystring
Search term (omit to list all)
tile_gallery_getGet details of a specific tile set with all tile types1 params

Get details of a specific tile set with all tile types

Parameters* required
set*string
Tile set ID or name
tile_gallery_statsGet statistics about available tile sets

Get statistics about available tile sets

No parameters. Call it with no arguments.

board_gallery_statsGet statistics about the board gallery (total boards, families, topologies)

Get statistics about the board gallery (total boards, families, topologies)

No parameters. Call it with no arguments.

piece_gallery_searchSearch the piece set gallery by name, style, or game type3 params

Search the piece set gallery by name, style, or game type

Parameters* required
familystring
Filter by game family (chess, shogi, xiangqi, draughts, go, etc)
limitnumber
Max results (default 10)
query*string
Search term (e.g. "staunton", "pixel", "shogi")
piece_gallery_get_setGet full details and piece list for a specific set1 params

Get full details and piece list for a specific set

Parameters* required
set*string
Set name or ID
piece_gallery_statsGet statistics about the piece gallery (total sets, styles, authors, game families)

Get statistics about the piece gallery (total sets, styles, authors, game families)

No parameters. Call it with no arguments.

oracle_list_gamesList all supported RPG systems with oracle tables and entity data availability

List all supported RPG systems with oracle tables and entity data availability

No parameters. Call it with no arguments.

rpg_chargenGenerate a random character for an RPG system (D&D 5e, Pathfinder, Ironsworn, Cairn, Knave, etc)3 params

Generate a random character for an RPG system (D&D 5e, Pathfinder, Ironsworn, Cairn, Knave, etc)

Parameters* required
classstring
Class preference (omit for random)
levelnumber
Character level (default: 1)
system*string
RPG system (dnd-5e, pathfinder-1e, ironsworn, starforged, cairn, knave, maze-rats, dungeon-world)
oracle_rollRoll on a random oracle table (Ironsworn, Starforged, Maze Rats, etc)2 params

Roll on a random oracle table (Ironsworn, Starforged, Maze Rats, etc)

Parameters* required
system*string
RPG system slug (ironsworn, starforged, maze-rats, cairn, knave, fate-core)
tablestring
Specific table name (omit for random)
oracle_list_tablesList available oracle tables for a system1 params

List available oracle tables for a system

Parameters* required
system*string
RPG system slug
oracle_askAsk the oracle a yes/no question with likelihood modifier2 params

Ask the oracle a yes/no question with likelihood modifier

Parameters* required
likelihoodstring
How likely is yes? (default: even)one of certain · likely · even · unlikely · impossible
question*string
Yes/no question
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.4 params

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.

Parameters* required
recipestring
Recipe ID (from oracle_list_recipes) — rolls each table in the recipe
regionstring
Region for Starforged region-aware recipesone of terminus · outlands · expanse
systemstring
RPG system slug (default: ironsworn)
typestring
Scene type for random mode (default: event)one of location · npc · event · combat
rpg_search_entitiesSearch RPG entities (spells, monsters, classes, items) across all systems5 params

Search RPG entities (spells, monsters, classes, items) across all systems

Parameters* required
categorystring
Entity category (spell, monster, class, item)
gamestring
Alias for system
limitnumber
Max results (default 10)
query*string
Search term
systemstring
Limit to system (dnd-5e, pathfinder-1e, etc)
rpg_get_entityGet full details of a specific RPG entity by name4 params

Get full details of a specific RPG entity by name

Parameters* required
categorystring
Category filter (spells, monsters, classes, etc)
gamestring
Alias for system
name*string
Entity name
systemstring
System slug
rpg_random_encounterGenerate a random encounter for a system and difficulty level3 params

Generate a random encounter for a system and difficulty level

Parameters* required
difficultystring
Encounter difficultyone of easy · medium · hard · deadly
systemstring
System slug (default: dnd-5e)
typestring
Monster type filter (beast, undead, fiend, dragon, etc)
rpg_browse_categoryBrowse entities by category with pagination5 params

Browse entities by category with pagination

Parameters* required
category*string
Category (spell, monster, class, item, feat, etc)
gamestring
Alias for system
pagenumber
Page number (default 1)
pageSizenumber
Items per page (default 20)
system*string
System slug
rpg_lootGenerate random loot/treasure for a system and tier3 params

Generate random loot/treasure for a system and tier

Parameters* required
countnumber
Number of items (default 3)
systemstring
System slug (default: dnd-5e)
tierstring
Loot tier (default: minor)one of minor · major · legendary
oracle_list_recipesList all predefined scene recipes — curated multi-table compositions that produce coherent narrative prompts1 params

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

Parameters* required
gamestring
Filter by game system (omit for all)
oracle_interpretResolve oracle cross-references. Given a result like "Action + Theme", follows references and returns expanded results3 params

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

Parameters* required
gamestring
Game system (default: starforged)
result*string
Oracle result text to interpret
source_tablestring
Table ID the result came from
oracle_table_viewView the complete contents of an oracle table — all entries with roll ranges2 params

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

Parameters* required
gamestring
Game system (default: starforged)
table*string
Table ID to view
oracle_encounterGenerate a tabletop RPG encounter with CR-appropriate monsters, terrain, and loot (D&D 5e or Pathfinder 1e)6 params

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

Parameters* required
difficultystring
Encounter difficulty (default: medium)one of easy · medium · hard · deadly
monster_typestring
Filter by type (undead, dragon, beast, etc)
party_levelnumber
Average party level 1-20 (default: 5)
party_sizenumber
Number of players 1-10 (default: 4)
systemstring
Game system (default: dnd-5e)one of dnd-5e · pathfinder-1e
terrainstring
Terrain type (omit for random)
rpg_list_categoriesList entity categories for an RPG system (spells, monsters, classes, equipment, etc)2 params

List entity categories for an RPG system (spells, monsters, classes, equipment, etc)

Parameters* required
gamestring
Game system slug (omit for all systems)
systemstring
Alias for game
rpg_randomGet random entities from an RPG system for inspiration or encounter prep4 params

Get random entities from an RPG system for inspiration or encounter prep

Parameters* required
categorystring
Category to draw from (omit for any)
countnumber
Number of random picks 1-10 (default: 1)
game*string
Game system slug
systemstring
Alias for game
ti4_random_factionsGenerate random faction assignments for Twilight Imperium 4th Edition2 params

Generate random faction assignments for Twilight Imperium 4th Edition

Parameters* required
expansionsarray
Expansion filter (e.g. ["base","pok"]). Default: all
players*number
Number of players (3-8)
ti4_draft_factionsMilty-style TI4 draft with pick pools per player3 params

Milty-style TI4 draft with pick pools per player

Parameters* required
choicesnumber
Factions per player to choose from (default: 3)
expansionsarray
Expansion filter (e.g. ["base","pok"]). Default: all
playersnumber
Number of players (3-8, default: 6)
ti4_list_factionsList all TI4 factions with colors, flags, and expansion info1 params

List all TI4 factions with colors, flags, and expansion info

Parameters* required
expansionsarray
Filter by expansion (e.g. ["base","pok"]). Default: all
ti4_draw_objectivesDraw random public objectives for TI43 params

Draw random public objectives for TI4

Parameters* required
countnumber
Number to draw (default: 5)
expansionsarray
Expansion filter
stagenumber
Stage 1 or 2 (default: both)one of 1 · 2
ti4_draw_agendasDraw random agenda cards for TI4 political phase3 params

Draw random agenda cards for TI4 political phase

Parameters* required
countnumber
Number to draw (default: 2)
expansionsarray
Expansion filter
typestring
Filter by typeone of law · directive
nukes_setup_generatorGenerate random territory/resource setup for a Nukes game1 params

Generate random territory/resource setup for a Nukes game

Parameters* required
playersnumber
Number of players (2-6, default: 2)
game_nukes_combatResolve a Nukes combat encounter between units3 params

Resolve a Nukes combat encounter between units

Parameters* required
attacker*string
Attacking unit type
defender*string
Defending unit type
terrainstring
Terrain type (plains, forest, mountain, urban)
colony_dice_oddsCalculate settlement dice probability for Colony/Catan-style resource numbers1 params

Calculate settlement dice probability for Colony/Catan-style resource numbers

Parameters* required
numbers*string
Settlement numbers, comma-separated (e.g. "5,6,8,9")
game_deck_createCreate, shuffle, and optionally draw/deal from a card deck4 params

Create, shuffle, and optionally draw/deal from a card deck

Parameters* required
drawnumber
Number of cards to draw
handsnumber
Deal into N hands
per_handnumber
Cards per hand (default: 5)
typestring
Deck type (default: standard-52)one of standard-52 · bavarian-32 · hanafuda-48 · mahjong-136 · dominoes-28 · standard-dice
game_deck_list_typesList all available deck types with metadata

List all available deck types with metadata

No parameters. Call it with no arguments.

game_deck_dealShuffle and deal a custom deck of arbitrary named cards4 params

Shuffle and deal a custom deck of arbitrary named cards

Parameters* required
cards*array
Cards in the deck (name + optional quantity)
drawnumber
Draw N cards from the top instead of dealing hands
handsnumber
Deal into N hands (default: 1 = draw pile only)
per_handnumber
Cards per hand (default: 5)
game_score_trackerTrack scores for players in any game3 params

Track scores for players in any game

Parameters* required
gamestring
Game name
players*array
Player names
scoresarray
Scores (default: all 0)
talisman_draw_charactersDraw random characters from the Talisman 4e (revised) base set for a character lottery1 params

Draw random characters from the Talisman 4e (revised) base set for a character lottery

Parameters* required
countnumber
Number of characters to draw (2-6, default: 4)
talisman_draw_encounterDraw a random encounter for a Talisman ring (outer, middle, inner, crown)1 params

Draw a random encounter for a Talisman ring (outer, middle, inner, crown)

Parameters* required
ringstring
Ring to draw from (default: outer)one of outer · middle · inner · crown
jam_statusGet the current Mod Jam status (active jam, deadline, submissions)

Get the current Mod Jam status (active jam, deadline, submissions)

No parameters. Call it with no arguments.

Sponsors

Readme

Moddable.Games

Creating games you already own.

A multi-page marketing site and tools platform for an open-source board game modding workshop. Ten mods. Three original games. Two open-source engines. One Discord.


Stack

HTML + Vanilla JS + Zero dependencies + Zero build step

Modular JS architecture: one loader (js/mg-loader.js) loads 12 shared modules + page-specific scripts. Zero inline scripts or styles.


Routes


View the full README on GitHub

Details

Repository
github.com/moddable-games/moddable-website
Category
Design & Creative
Transport
HTTP
Registry
MCP registry, active
Resources
4
Prompts
3
Tools verified
Nov 6, 2026

Related Design & Creative MCP servers

View all
1gregario avatar3dprint Oraclegregario/3dprint-oracle3D printing filament and materials knowledge MCP server0stars
2groupdocs-viewer avatarGroupdocs Viewer Mcpgroupdocs-viewer/groupdocs.viewer.mcpMCP server for GroupDocs.Viewer — render pages as PNG and inspect view info via AI agents.0stars
3hj1003862396 avatarDraw Flow Mcp Serverhj1003862396/draw-flow-mcp-serverMCP server for Next AI Draw.io - AI-powered diagram generation with real-time browser preview0stars
4atenkai avatarSmasher Studio — AI Fashion Designatenkai/smasher-studio-clientAI fashion design — product photos, videos, tech packs, colorways & fabric sims.0stars
5br0ski777 avatarBarcode Generator APIbr0ski777/barcode-generator-x402Generate barcodes — EAN-13, UPC-A, Code128, Code39. Returns SVG. x402 micropayment.0stars
6br0ski777 avatarMarkdown Renderer APIbr0ski777/markdown-renderer-x402Render markdown to styled HTML with light/dark/github themes. x402 micropayment.0stars