Skip to content
Back to search
100
MCP live MCP 2025-03-26 streamable-http

Moddable Games Tools

games.moddable.tools/moddable-games-tools

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

Uptime
100.0%
1 direct probes · 30d
Response
282ms
last probe
Tools
89
callable
Resources
4
readable
Prompts
3
available

Tools · 89

chess_generate_puzzle

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_list_puzzle_types

List available puzzle variants, themes, and per-variant counts from the puzzle pool

chess_list_variants

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

chess_get_legal_moves

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

chess_analyze_position

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

chess_make_move

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

chess_validate_move

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

chess_get_status

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

chess_render_svg

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

chess_make_moves

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

chess_get_opening_book

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

hex_list_games

List all available hex map game types with configuration options

hex_generate_map

Generate a hex map for a specific game and player count

hex_export_svg

Generate a hex map and export as SVG

hex_get_info

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

hex_compute_fov

Compute field of view from a hex position

hex_pathfind

Find shortest path between two hex coordinates

play_list_families

List all playable game families supported by the engine (chess, draughts, go, reversi, shogi, xiangqi)

play_list_variants

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_get_definition

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_create_game

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_get_moves

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

play_apply_move

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

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

play_suggest_move

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

play_render_board

Render the current board position as SVG for any playable family (chess, draughts, go, reversi, shogi, xiangqi).

play_export_fen

Export the current board position as a FEN-style notation string. Works for all 6 families (chess, draughts, go, reversi, shogi, xiangqi).

play_load_fen

Create a game state from a FEN-style position string. Works for all 6 families.

play_validate_move

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.

play_make_moves

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.

rules_list_games

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

rules_get_game

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

rules_get_game_meta

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

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_list

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

rules_get_diagram

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

rules_get_variant

Get rules for a specific game variant

rules_search

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

rules_random

Get a random game suggestion from the library

board_gallery_search

Search the board gallery (333 rendered board layouts across 33 game families)

board_gallery_get

Get details of a specific board layout by ID

tile_gallery_search

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

tile_gallery_get

Get details of a specific tile set with all tile types

tile_gallery_stats

Get statistics about available tile sets

board_gallery_stats

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

piece_gallery_search

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

piece_gallery_get_set

Get full details and piece list for a specific set

piece_gallery_stats

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

oracle_list_games

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

rpg_chargen

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

oracle_roll

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

oracle_list_tables

List available oracle tables for a system

oracle_ask

Ask the oracle a yes/no question with likelihood modifier

oracle_scene

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.

rpg_search_entities

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

rpg_get_entity

Get full details of a specific RPG entity by name

rpg_random_encounter

Generate a random encounter for a system and difficulty level

rpg_browse_category

Browse entities by category with pagination

rpg_loot

Generate random loot/treasure for a system and tier

oracle_list_recipes

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

oracle_interpret

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

oracle_table_view

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

oracle_encounter

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

rpg_list_categories

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

rpg_random

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

ti4_random_factions

Generate random faction assignments for Twilight Imperium 4th Edition

ti4_draft_factions

Milty-style TI4 draft with pick pools per player

ti4_list_factions

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

ti4_draw_objectives

Draw random public objectives for TI4

ti4_draw_agendas

Draw random agenda cards for TI4 political phase

nukes_setup_generator

Generate random territory/resource setup for a Nukes game

game_nukes_combat

Resolve a Nukes combat encounter between units

colony_dice_odds

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

game_deck_create

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

game_deck_list_types

List all available deck types with metadata

game_deck_deal

Shuffle and deal a custom deck of arbitrary named cards

game_score_tracker

Track scores for players in any game

talisman_draw_characters

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

talisman_draw_encounter

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

jam_status

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

jam_timer

Get time remaining in the current Mod Jam

jam_vote

Get voting status for the current Mod Jam

dice_roll

Roll dice using standard notation (e.g. 2d6+3, 4d8, d20). Supports comma-separated pools and keep-high/low (4d6kh3).

coin_flip

Flip one or more coins, or pick from a list of choices

team_split

Randomly divide players into teams

random_player_order

Randomise turn order for a list of players

timer_suggest

Suggest time controls for a game based on player count and complexity

game_jam_theme

Generate a random game jam theme combining mechanics and themes

dice_odds

Calculate probability of meeting a target with a dice expression. Supports keep-high/low (4d6kh3).

Resources · 4

Tool Catalog moddable://tools/catalog
Game Families moddable://games/families
Chess Variants Catalog moddable://chess/variants
RPG Systems moddable://rpg/systems

Prompts · 3

analyse_position

Analyse a chess position from FEN notation

build_variant

Help design a custom chess variant

plan_hex_map

Plan a hex-based game map

How to use

Add to your Claude Desktop / Cursor / Cline MCP config:

{
  "mcpServers": {
    "moddable_games_tools": {
      "url": "https://tools.moddable.games/mcp",
      "transport": "streamable-http"
    }
  }
}