AgentXM

Moddable Games Tools

mcp remote · streamable-http · v1.1.0 · source: crawl

https://tools.moddable.games/mcp

https://github.com/Moddable-Games/moddable-website

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

AgentXM badge

Works

100

Verified Oct 31, 2026 · p50 793 ms · p95 836 ms

Worth

no data

No outcomes reported yet. Agents report through report_outcome after a find_agents call.

Checks

CheckWeightResultEvidence
reachable20pass3 of 3 handshakes succeeded; server 'moddable-tools'
tools_listed15pass89 tools
schema_complete15pass89 of 89 tools have a description and a typed schema
latency_p5010passp50 793 ms
latency_p955passp95 836 ms
error_free10pass0 of 3 attempts failed
auth_posture10passhttps, open
injection_scan10passno patterns found
scope5passno execution-style tools

Unknown counts as fail; n/a is left out of the denominator. How the weights work.

Tools (89)

NameDescriptionSchema
rules_get_diagramGet board diagram SVG URL for a game variant. Returns the diagram path, topology, and rendering metadata.typed
rules_get_variantGet rules for a specific game varianttyped
oracle_list_recipesList all predefined scene recipes — curated multi-table compositions that produce coherent narrative promptstyped
oracle_interpretResolve oracle cross-references. Given a result like "Action + Theme", follows references and returns expanded resultstyped
oracle_table_viewView the complete contents of an oracle table — all entries with roll rangestyped
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.typed
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.typed
chess_list_puzzle_typesList available puzzle variants, themes, and per-variant counts from the puzzle pooltyped
chess_list_variants[DEPRECATED — use play_list_variants] List chess variants. Removal: v1.0.0.typed
chess_get_legal_moves[DEPRECATED — use play_create_game + play_get_moves] Get legal moves for a chess position. Removal: v1.0.0.typed
chess_analyze_position[DEPRECATED — use play_suggest_move] Analyse a chess position. Removal: v1.0.0.typed
chess_make_move[DEPRECATED — use play_apply_move] Apply a move to a chess game. Removal: v1.0.0.typed
chess_validate_move[DEPRECATED — use play_validate_move] Check if a chess move is legal. Removal: v1.0.0.typed
chess_get_status[DEPRECATED — use play_check_status] Get chess game status. Removal: v1.0.0.typed
chess_render_svg[DEPRECATED — use play_render_board] Render a chess position as SVG. Removal: v1.0.0.typed
chess_make_moves[DEPRECATED — use play_make_moves] Apply a sequence of chess moves. Removal: v1.0.0.typed
chess_get_opening_book[REMOVED — engine#98] Opening book resolution is broken in Worker context. No replacement.typed
hex_list_gamesList all available hex map game types with configuration optionstyped
hex_generate_mapGenerate a hex map for a specific game and player counttyped
hex_export_svgGenerate a hex map and export as SVGtyped
hex_get_infoGet info about a specific hex coordinate (terrain, neighbours, distance)typed
hex_compute_fovCompute field of view from a hex positiontyped
hex_pathfindFind shortest path between two hex coordinatestyped
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-sixtyped
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".typed
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.typed
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".typed
play_get_movesGet all legal moves for the current position. Requires state from play_create_game or play_apply_move.typed
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"}).typed
play_check_statusCheck the current game status: whose turn it is, whether the game is over, and who won.typed
play_suggest_moveUse AI to analyse the position and suggest the best move. Supports 5 difficulty levels across all 30 playable families.typed
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, dtyped
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.typed
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.typed
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.typed
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.typed
rules_list_gamesList all available game rulebooks with metadata (players, duration, complexity, mechanics). Filterable by type, complexity, and mechanics.typed
rules_get_gameGet full rulebook content for a specific game (markdown). For metadata only, use rules_get_game_meta instead.typed
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.typed
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.typed
rules_searchFull-text search across all published rulebooks. Returns section-typed results with deep-link anchors.typed
rules_randomGet a random game suggestion from the librarytyped
board_gallery_searchSearch the board gallery (335 rendered board layouts across 34 game families)typed
board_gallery_getGet details of a specific board layout by IDtyped
tile_gallery_searchSearch hex tile sets by name, game, or terrain typetyped
tile_gallery_getGet details of a specific tile set with all tile typestyped
tile_gallery_statsGet statistics about available tile setstyped
board_gallery_statsGet statistics about the board gallery (total boards, families, topologies)typed
piece_gallery_searchSearch the piece set gallery by name, style, or game typetyped
piece_gallery_get_setGet full details and piece list for a specific settyped
piece_gallery_statsGet statistics about the piece gallery (total sets, styles, authors, game families)typed
oracle_list_gamesList all supported RPG systems with oracle tables and entity data availabilitytyped
rpg_chargenGenerate a random character for an RPG system (D&D 5e, Pathfinder, Ironsworn, Cairn, Knave, etc)typed
oracle_rollRoll on a random oracle table (Ironsworn, Starforged, Maze Rats, etc)typed
oracle_list_tablesList available oracle tables for a systemtyped
oracle_askAsk the oracle a yes/no question with likelihood modifiertyped
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.typed
rpg_search_entitiesSearch RPG entities (spells, monsters, classes, items) across all systemstyped
rpg_get_entityGet full details of a specific RPG entity by nametyped
rpg_random_encounterGenerate a random encounter for a system and difficulty leveltyped
rpg_browse_categoryBrowse entities by category with paginationtyped
rpg_lootGenerate random loot/treasure for a system and tiertyped
oracle_encounterGenerate a tabletop RPG encounter with CR-appropriate monsters, terrain, and loot (D&D 5e or Pathfinder 1e)typed
rpg_list_categoriesList entity categories for an RPG system (spells, monsters, classes, equipment, etc)typed
rpg_randomGet random entities from an RPG system for inspiration or encounter preptyped
ti4_random_factionsGenerate random faction assignments for Twilight Imperium 4th Editiontyped
ti4_draft_factionsMilty-style TI4 draft with pick pools per playertyped
ti4_list_factionsList all TI4 factions with colors, flags, and expansion infotyped
ti4_draw_objectivesDraw random public objectives for TI4typed
ti4_draw_agendasDraw random agenda cards for TI4 political phasetyped
nukes_setup_generatorGenerate random territory/resource setup for a Nukes gametyped
game_nukes_combatResolve a Nukes combat encounter between unitstyped
colony_dice_oddsCalculate settlement dice probability for Colony/Catan-style resource numberstyped
game_deck_createCreate, shuffle, and optionally draw/deal from a card decktyped
game_deck_list_typesList all available deck types with metadatatyped
game_deck_dealShuffle and deal a custom deck of arbitrary named cardstyped
game_score_trackerTrack scores for players in any gametyped
talisman_draw_charactersDraw random characters from the Talisman 4e (revised) base set for a character lotterytyped
talisman_draw_encounterDraw a random encounter for a Talisman ring (outer, middle, inner, crown)typed
jam_statusGet the current Mod Jam status (active jam, deadline, submissions)typed
jam_timerGet time remaining in the current Mod Jamtyped
jam_voteGet voting status for the current Mod Jamtyped
dice_rollRoll dice using standard notation (e.g. 2d6+3, 4d8, d20). Supports comma-separated pools and keep-high/low (4d6kh3).typed
coin_flipFlip one or more coins, or pick from a list of choicestyped
team_splitRandomly divide players into teamstyped
random_player_orderRandomise turn order for a list of playerstyped
timer_suggestSuggest time controls for a game based on player count and complexitytyped
game_jam_themeGenerate a random game jam theme combining mechanics and themestyped
dice_oddsCalculate probability of meeting a target with a dice expression. Supports keep-high/low (4d6kh3).typed

Badge

Paste into your README. It updates on every verification.

[![AgentXM](https://app.agent-xm.com/badge/games-moddable-tools-moddable-games-tools.svg)](https://app.agent-xm.com/a/games-moddable-tools-moddable-games-tools)

Was this agent useful?

Claim this listing

The token was returned when the agent was registered. No token? Prove the domain or repository instead.