Moddable Games Tools
games.moddable.tools/moddable-games-toolstools.moddable.gamesstreamable-httpv1.1.0Scanned
15 tools for chess variant analysis, hex map generation, and board game utilities
89 tools: 39 change things and 50 only read.
- Reads private data · 5
- Reads text others write · 2
- Can send data out · 0
- No findings
Tools listed without sign-in. Remote posture
Anlyon alternative
39 of these tools change something. Run those as governed actions.
Declare what an action changes, and Anlyon puts it under a shared limit, binds every approval to the exact request, and grades the outcome. It works on any HTTPS API you can describe as an action.
Anlyon does not run, proxy or govern this MCP server. A tool your own code calls directly is not routed through Anlyon and is not governed by it.
Import an OpenAPI spec →Tools
Grouped by what each tool does, most consequential first. Open one for its reasons and full description; descriptions are the publisher's own words.
89 tools
Changes things 39Claude Code: ask
chess_generate_puzzleGet a random chess puzzle.No findings
Why it is in this group
- The name "chess_generate_puzzle" says "generate": a word for a change.
Description, as the server wrote it 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.
chess_make_move[DEPRECATED — use play_apply_move] Apply a move to a chess game.No findings
Why it is in this group
- The name "chess_make_move" says "move": a word for a change.
Description, as the server wrote it [DEPRECATED — use play_apply_move] Apply a move to a chess game. Removal: v1.0.0.
chess_make_moves[DEPRECATED — use play_make_moves] Apply a sequence of chess moves.No findings
Why it is in this group
- The name "chess_make_moves" says "move": a word for a change.
Description, as the server wrote it [DEPRECATED — use play_make_moves] Apply a sequence of chess moves. Removal: v1.0.0.
chess_render_svg[DEPRECATED — use play_render_board] Render a chess position as SVG.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it [DEPRECATED — use play_render_board] Render a chess position as SVG. Removal: v1.0.0.
coin_flipFlip one or more coins, or pick from a list of choicesNo findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Flip one or more coins, or pick from a list of choices
colony_dice_oddsCalculate settlement dice probability for Colony/Catan-style resource numbersNo findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Calculate settlement dice probability for Colony/Catan-style resource numbers
dice_oddsCalculate probability of meeting a target with a dice expression.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Calculate probability of meeting a target with a dice expression. Supports keep-high/low (4d6kh3).
dice_rollRoll dice using standard notation (e.g.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Roll dice using standard notation (e.g. 2d6+3, 4d8, d20). Supports comma-separated pools and keep-high/low (4d6kh3).
game_deck_createCreate, shuffle, and optionally draw/deal from a card deckNo findings
Why it is in this group
- The name "game_deck_create" says "create": a word for a change.
Description, as the server wrote it Create, shuffle, and optionally draw/deal from a card deck
game_deck_dealShuffle and deal a custom deck of arbitrary named cardsNo findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Shuffle and deal a custom deck of arbitrary named cards
game_jam_themeGenerate a random game jam theme combining mechanics and themesNo findings
Why it is in this group
- The description's first verb is "generate": a word for a change.
Description, as the server wrote it Generate a random game jam theme combining mechanics and themes
game_score_trackerTrack scores for players in any gameNo findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Track scores for players in any game
hex_compute_fovCompute field of view from a hex positionNo findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Compute field of view from a hex position
hex_export_svgGenerate a hex map and export as SVGNo findings
Why it is in this group
- The description's first verb is "generate": a word for a change.
Description, as the server wrote it Generate a hex map and export as SVG
hex_generate_mapGenerate a hex map for a specific game and player countNo findings
Why it is in this group
- The name "hex_generate_map" says "generate": a word for a change.
Description, as the server wrote it Generate a hex map for a specific game and player count
nukes_setup_generatorGenerate random territory/resource setup for a Nukes gameNo findings
Why it is in this group
- The description's first verb is "generate": a word for a change.
Description, as the server wrote it Generate random territory/resource setup for a Nukes game
oracle_askAsk the oracle a yes/no question with likelihood modifierNo findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Ask the oracle a yes/no question with likelihood modifier
oracle_encounterGenerate a tabletop RPG encounter with CR-appropriate monsters, terrain, and loot (D&D 5e or Pathfinder 1e)No findings
Why it is in this group
- The description's first verb is "generate": a word for a change.
Description, as the server wrote it Generate a tabletop RPG encounter with CR-appropriate monsters, terrain, and loot (D&D 5e or Pathfinder 1e)
oracle_rollRoll on a random oracle table (Ironsworn, Starforged, Maze Rats, etc)No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Roll on a random oracle table (Ironsworn, Starforged, Maze Rats, etc)
oracle_sceneGenerate a scene using oracle tables.No findings
Why it is in this group
- The description's first verb is "generate": a word for a change.
Description, as the server wrote it 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.
play_apply_moveApply a move to the game and return the new state.No findings
Why it is in this group
- The name "play_apply_move" says "apply": a word for a change.
Description, as the server wrote it 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_create_gameCreate a new game instance for a given family.No findings
Why it is in this group
- The name "play_create_game" says "create": a word for a change.
Description, as the server wrote it 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_fenExport the current board position as a FEN-style setup string, in the form the variant's own frontmatter declares its starting position.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it 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.
play_load_fenCreate a game from a FEN-style setup string, as returned by play_export_fen.No findings
Why it is in this group
- The description's first verb is "create": a word for a change.
Description, as the server wrote it Create a game from a FEN-style setup string, as returned by play_export_fen. Pass the same variant the position was exported from.
play_make_movesApply a sequence of moves to a game and return the final state.No findings
Why it is in this group
- The name "play_make_moves" says "move": a word for a change.
Description, as the server wrote it 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_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, bavar…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it 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-qi, fanorona, halma, nyout, pachisi, royal-ur, senet, stern-halma, surakarta, tafl).
play_suggest_moveUse AI to analyse the position and suggest the best move.No findings
Why it is in this group
- The name "play_suggest_move" says "move": a word for a change.
Description, as the server wrote it Use AI to analyse the position and suggest the best move. Supports 5 difficulty levels across all 30 playable families.
random_player_orderRandomise turn order for a list of playersNo findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Randomise turn order for a list of players
rpg_chargenGenerate a random character for an RPG system (D&D 5e, Pathfinder, Ironsworn, Cairn, Knave, etc)No findings
Why it is in this group
- The description's first verb is "generate": a word for a change.
Description, as the server wrote it Generate a random character for an RPG system (D&D 5e, Pathfinder, Ironsworn, Cairn, Knave, etc)
rpg_lootGenerate random loot/treasure for a system and tierNo findings
Why it is in this group
- The description's first verb is "generate": a word for a change.
Description, as the server wrote it Generate random loot/treasure for a system and tier
rpg_random_encounterGenerate a random encounter for a system and difficulty levelNo findings
Why it is in this group
- The description's first verb is "generate": a word for a change.
Description, as the server wrote it Generate a random encounter for a system and difficulty level
talisman_draw_charactersDraw random characters from the Talisman 4e (revised) base set for a character lotteryNo findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Draw random characters from the Talisman 4e (revised) base set for a character lottery
talisman_draw_encounterDraw a random encounter for a Talisman ring (outer, middle, inner, crown)No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Draw a random encounter for a Talisman ring (outer, middle, inner, crown)
team_splitRandomly divide players into teamsNo findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Randomly divide players into teams
ti4_draft_factionsMilty-style TI4 draft with pick pools per playerNo findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Milty-style TI4 draft with pick pools per player
ti4_draw_agendasDraw random agenda cards for TI4 political phaseNo findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Draw random agenda cards for TI4 political phase
ti4_draw_objectivesDraw random public objectives for TI4No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Draw random public objectives for TI4
ti4_random_factionsGenerate random faction assignments for Twilight Imperium 4th EditionNo findings
Why it is in this group
- The description's first verb is "generate": a word for a change.
Description, as the server wrote it Generate random faction assignments for Twilight Imperium 4th Edition
timer_suggestSuggest time controls for a game based on player count and complexityNo findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Suggest time controls for a game based on player count and complexity
Only reads 50Show 50 read-only tools
board_gallery_getGet details of a specific board layout by IDNo findings
Why it is in this group
- The name "board_gallery_get" says "get": a word for reading.
Description, as the server wrote it Get details of a specific board layout by ID
board_gallery_searchSearch the board gallery (335 rendered board layouts across 34 game families)No findings
Why it is in this group
- The name "board_gallery_search" says "search": a word for reading.
Description, as the server wrote it Search the board gallery (335 rendered board layouts across 34 game families)
board_gallery_statsGet statistics about the board gallery (total boards, families, topologies)No findings
Why it is in this group
- The description's first verb is "get": a word for reading.
Description, as the server wrote it Get statistics about the board gallery (total boards, families, topologies)
chess_analyze_position[DEPRECATED — use play_suggest_move] Analyse a chess position.No findings
Why it is in this group
- The name "chess_analyze_position" says "analyze": a word for reading.
Description, as the server wrote it [DEPRECATED — use play_suggest_move] Analyse a chess position. Removal: v1.0.0.
chess_get_legal_moves[DEPRECATED — use play_create_game + play_get_moves] Get legal moves for a chess position.No findings
Why it is in this group
- The name "chess_get_legal_moves" says "get": a word for reading.
Description, as the server wrote it [DEPRECATED — use play_create_game + play_get_moves] Get legal moves for a chess position. Removal: v1.0.0.
chess_get_opening_book[REMOVED — engine#98] Opening book resolution is broken in Worker context.No findings
Why it is in this group
- The name "chess_get_opening_book" says "get": a word for reading.
Description, as the server wrote it [REMOVED — engine#98] Opening book resolution is broken in Worker context. No replacement.
chess_get_status[DEPRECATED — use play_check_status] Get chess game status.No findings
Why it is in this group
- The name "chess_get_status" says "get": a word for reading.
Description, as the server wrote it [DEPRECATED — use play_check_status] Get chess game status. Removal: v1.0.0.
chess_list_puzzle_typesList available puzzle variants, themes, and per-variant counts from the puzzle poolNo findings
Why it is in this group
- The name "chess_list_puzzle_types" says "list": a word for reading.
Description, as the server wrote it List available puzzle variants, themes, and per-variant counts from the puzzle pool
chess_list_variants[DEPRECATED — use play_list_variants] List chess variants.No findings
Why it is in this group
- The name "chess_list_variants" says "list": a word for reading.
Description, as the server wrote it [DEPRECATED — use play_list_variants] List chess variants. Removal: v1.0.0.
chess_validate_move[DEPRECATED — use play_validate_move] Check if a chess move is legal.No findings
Why it is in this group
- The name "chess_validate_move" says "validate": a word for reading.
Description, as the server wrote it [DEPRECATED — use play_validate_move] Check if a chess move is legal. Removal: v1.0.0.
game_deck_list_typesList all available deck types with metadataNo findings
Why it is in this group
- The name "game_deck_list_types" says "list": a word for reading.
Description, as the server wrote it List all available deck types with metadata
game_nukes_combatResolve a Nukes combat encounter between unitsNo findings
Why it is in this group
- The description's first verb is "resolve": a word for reading.
Description, as the server wrote it Resolve a Nukes combat encounter between units
hex_get_infoGet info about a specific hex coordinate (terrain, neighbours, distance)No findings
Why it is in this group
- The name "hex_get_info" says "get": a word for reading.
Description, as the server wrote it Get info about a specific hex coordinate (terrain, neighbours, distance)
hex_list_gamesList all available hex map game types with configuration optionsNo findings
Why it is in this group
- The name "hex_list_games" says "list": a word for reading.
Description, as the server wrote it List all available hex map game types with configuration options
hex_pathfindFind shortest path between two hex coordinatesNo findings
Why it is in this group
- The description's first verb is "find": a word for reading.
Description, as the server wrote it Find shortest path between two hex coordinates
jam_statusGet the current Mod Jam status (active jam, deadline, submissions)No findings
Why it is in this group
- The name "jam_status" says "status": a word for reading.
Description, as the server wrote it Get the current Mod Jam status (active jam, deadline, submissions)
jam_timerGet time remaining in the current Mod JamNo findings
Why it is in this group
- The description's first verb is "get": a word for reading.
Description, as the server wrote it Get time remaining in the current Mod Jam
jam_voteGet voting status for the current Mod JamNo findings
Why it is in this group
- The description's first verb is "get": a word for reading.
Description, as the server wrote it Get voting status for the current Mod Jam
oracle_interpretResolve oracle cross-references.Reads private dataNo findings
Why it is in this group
- The description's first verb is "resolve": a word for reading.
What it can reach
- private-dataThe input names a table (input.source_table), and the tool reads: it reads databases.
Description, as the server wrote it Resolve oracle cross-references. Given a result like "Action + Theme", follows references and returns expanded results
oracle_list_gamesList all supported RPG systems with oracle tables and entity data availabilityReads private dataNo findings
Why it is in this group
- The name "oracle_list_games" says "list": a word for reading.
What it can reach
- private-dataThe description's first sentence says "list" and "table": it reads databases.
Description, as the server wrote it List all supported RPG systems with oracle tables and entity data availability
oracle_list_recipesList all predefined scene recipes — curated multi-table compositions that produce coherent narrative promptsReads private dataNo findings
Why it is in this group
- The name "oracle_list_recipes" says "list": a word for reading.
What it can reach
- private-dataThe description's first sentence says "list" and "table": it reads databases.
Description, as the server wrote it List all predefined scene recipes — curated multi-table compositions that produce coherent narrative prompts
oracle_list_tablesList available oracle tables for a systemReads private dataNo findings
Why it is in this group
- The name "oracle_list_tables" says "list": a word for reading.
What it can reach
- private-dataThe name "oracle_list_tables" says "list" and "table": it reads databases.
- private-dataThe description's first sentence says "list" and "table": it reads databases.
Description, as the server wrote it List available oracle tables for a system
oracle_table_viewView the complete contents of an oracle table — all entries with roll rangesReads private dataNo findings
Why it is in this group
- The name "oracle_table_view" says "view": a word for reading.
What it can reach
- private-dataThe name "oracle_table_view" says "view" and "table": it reads databases.
- private-dataThe description's first sentence says "view" and "table": it reads databases.
- private-dataThe input names a table (input.table), and the tool reads: it reads databases.
Description, as the server wrote it View the complete contents of an oracle table — all entries with roll ranges
piece_gallery_get_setGet full details and piece list for a specific setNo findings
Why it is in this group
- The name "piece_gallery_get_set" says "get": a word for reading.
Description, as the server wrote it Get full details and piece list for a specific set
piece_gallery_searchSearch the piece set gallery by name, style, or game typeNo findings
Why it is in this group
- The name "piece_gallery_search" says "search": a word for reading.
Description, as the server wrote it Search the piece set gallery by name, style, or game type
piece_gallery_statsGet statistics about the piece gallery (total sets, styles, authors, game families)No findings
Why it is in this group
- The description's first verb is "get": a word for reading.
Description, as the server wrote it Get statistics about the piece gallery (total sets, styles, authors, game families)
play_check_statusCheck the current game status: whose turn it is, whether the game is over, and who won.No findings
Why it is in this group
- The name "play_check_status" says "status": a word for reading.
Description, as the server wrote it Check the current game status: whose turn it is, whether the game is over, and who won.
play_get_definitionGet the full engine definition (topology, render config, pieces, setup FEN) for a game variant.No findings
Why it is in this group
- The name "play_get_definition" says "get": a word for reading.
Description, as the server wrote it 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_movesGet all legal moves for the current position.No findings
Why it is in this group
- The name "play_get_moves" says "get": a word for reading.
Description, as the server wrote it Get all legal moves for the current position. Requires state from play_create_game or play_apply_move.
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, f…No findings
Why it is in this group
- The name "play_list_families" says "list": a word for reading.
Description, as the server wrote it 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, fanorona, halma, nyout, pachisi, royal-ur, senet, stern-halma, surakarta, tafl)
play_list_variantsList available variants for a game family.No findings
Why it is in this group
- The name "play_list_variants" says "list": a word for reading.
Description, as the server wrote it 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_validate_moveCheck whether a move is legal in the current position without applying it.No findings
Why it is in this group
- The name "play_validate_move" says "validate": a word for reading.
Description, as the server wrote it 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.
rpg_browse_categoryBrowse entities by category with paginationReads text others writeNo findings
Why it is in this group
- The name "rpg_browse_category" says "browse": a word for reading.
What it can reach
- untrusted-inputThe name "rpg_browse_category" says "browse": it reads web pages, which anyone can write.
- untrusted-inputThe description's first sentence says "browse": it reads web pages, which anyone can write.
Description, as the server wrote it Browse entities by category with pagination
rpg_get_entityGet full details of a specific RPG entity by nameNo findings
Why it is in this group
- The name "rpg_get_entity" says "get": a word for reading.
Description, as the server wrote it Get full details of a specific RPG entity by name
rpg_list_categoriesList entity categories for an RPG system (spells, monsters, classes, equipment, etc)No findings
Why it is in this group
- The name "rpg_list_categories" says "list": a word for reading.
Description, as the server wrote it List entity categories for an RPG system (spells, monsters, classes, equipment, etc)
rpg_randomGet random entities from an RPG system for inspiration or encounter prepNo findings
Why it is in this group
- The description's first verb is "get": a word for reading.
Description, as the server wrote it Get random entities from an RPG system for inspiration or encounter prep
rpg_search_entitiesSearch RPG entities (spells, monsters, classes, items) across all systemsNo findings
Why it is in this group
- The name "rpg_search_entities" says "search": a word for reading.
Description, as the server wrote it Search RPG entities (spells, monsters, classes, items) across all systems
rules_get_diagramGet board diagram SVG URL for a game variant.Reads text others writeNo findings
Why it is in this group
- The name "rules_get_diagram" says "get": a word for reading.
What it can reach
- untrusted-inputThe description's first sentence says "get" and "url": it reads web pages, which anyone can write.
Description, as the server wrote it Get board diagram SVG URL for a game variant. Returns the diagram path, topology, and rendering metadata.
rules_get_gameGet full rulebook content for a specific game (markdown).No findings
Why it is in this group
- The name "rules_get_game" says "get": a word for reading.
Description, as the server wrote it Get full rulebook content for a specific game (markdown). For metadata only, use rules_get_game_meta instead.
rules_get_game_metaGet structured metadata for a game: players, duration, complexity, mechanics, how_to_play, variant list, page list, related games.No findings
Why it is in this group
- The name "rules_get_game_meta" says "get": a word for reading.
Description, as the server wrote it 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_pageGet a specific page/section from a game rulebook (e.g.No findings
Why it is in this group
- The name "rules_get_page" says "get": a word for reading.
Description, as the server wrote it 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_variantGet rules for a specific game variantNo findings
Why it is in this group
- The name "rules_get_variant" says "get": a word for reading.
Description, as the server wrote it Get rules for a specific game variant
rules_get_variant_listList all variants for a game with structured metadata (players, board, playable status, topology, engine config).No findings
Why it is in this group
- The name "rules_get_variant_list" says "get": a word for reading.
Description, as the server wrote it List all variants for a game with structured metadata (players, board, playable status, topology, engine config). Much richer than parsing the rulebook.
rules_list_gamesList all available game rulebooks with metadata (players, duration, complexity, mechanics).No findings
Why it is in this group
- The name "rules_list_games" says "list": a word for reading.
Description, as the server wrote it List all available game rulebooks with metadata (players, duration, complexity, mechanics). Filterable by type, complexity, and mechanics.
rules_randomGet a random game suggestion from the libraryNo findings
Why it is in this group
- The description's first verb is "get": a word for reading.
Description, as the server wrote it Get a random game suggestion from the library
rules_searchFull-text search across all published rulebooks.No findings
Why it is in this group
- The name "rules_search" says "search": a word for reading.
Description, as the server wrote it Full-text search across all published rulebooks. Returns section-typed results with deep-link anchors.
ti4_list_factionsList all TI4 factions with colors, flags, and expansion infoNo findings
Why it is in this group
- The name "ti4_list_factions" says "list": a word for reading.
Description, as the server wrote it List all TI4 factions with colors, flags, and expansion info
tile_gallery_getGet details of a specific tile set with all tile typesNo findings
Why it is in this group
- The name "tile_gallery_get" says "get": a word for reading.
Description, as the server wrote it Get details of a specific tile set with all tile types
tile_gallery_searchSearch hex tile sets by name, game, or terrain typeNo findings
Why it is in this group
- The name "tile_gallery_search" says "search": a word for reading.
Description, as the server wrote it Search hex tile sets by name, game, or terrain type
tile_gallery_statsGet statistics about available tile setsNo findings
Why it is in this group
- The description's first verb is "get": a word for reading.
Description, as the server wrote it Get statistics about available tile sets
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Exfil surface
Which tools read private data, which read text someone else can write, and which can send data out. One of each is a path a prompt injection can use.
No private-data, untrusted-input, outbound path in this server alone: no tool is tagged outbound.
- Reads private data5
- Reads files, mail, messages, databases, secrets, calendars or repositories.
- Reads text others write2
- Brings in text someone else can write: web pages, inbound email, messages, issues and comments.
- Can send data out0
- Can carry data to people or systems: it sends, posts or publishes, or takes a recipient, channel or URL.
Other servers in the same agent add their own tools to these paths. Audit your whole setup to see them together.
Remote posture
What anyone on the internet sees at the remote endpoint: an anonymous initialize and tools/list, and the public OAuth metadata.
Looked at Oct 22, 2026, 14:48 UTC, unchanged since Oct 22, 2026. No credentials were sent and no tool was called. What is looked at.
- Reachable
- yes
- HTTP status of an anonymous initialize
- 200
- tools/list served without credentials
- yes
- Tools that change things, listed without credentials
- 39
- Protocol version
- 2025-03-26
- WWW-Authenticate on 401
- not observed
- resource_metadata in WWW-Authenticate
- not observed
- RFC 9728 protected resource metadata
- not observed
- Authorization servers
- not observed
- Legacy HTTP+SSE transport
- no
- Dynamic client registration
- not observed
- Client ID metadata documents
- not observed
- WarnThe whole server
The endpoint served tools/list without credentials, and the list has 39 tools that change things (39 write). Whether a call also works without credentials was not tested: tools are never called.
What this check looks forMatched text
https://tools.moddable.games/mcp: tools/list returned 89 tools to an anonymous client, including chess_generate_puzzle (write), chess_make_move (write), chess_render_svg (write), chess_make_moves (write), hex_generate_map (write) and 34 more
Findings
Matches of fixed checks, with the text they matched.
No check matched anything in these tool definitions. That is not a safety guarantee.
History
Changes to its tool definitions and to its remote endpoint, newest first.
No change seen yet. Its tools are rescanned every day, and a remote endpoint is looked at once a week.
Install
Pinned to version 1.1.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http moddable-games-tools https://tools.moddable.games/mcpclaude mcp add --transport http moddable-games-tools https://tools.moddable.games/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change or a way out, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__moddable-games-tools__chess_list_puzzle_types",
"mcp__moddable-games-tools__chess_list_variants",
"mcp__moddable-games-tools__chess_get_legal_moves",
"mcp__moddable-games-tools__chess_analyze_position",
"mcp__moddable-games-tools__chess_validate_move",
"mcp__moddable-games-tools__chess_get_status",
"mcp__moddable-games-tools__chess_get_opening_book",
"mcp__moddable-games-tools__hex_list_games",
"mcp__moddable-games-tools__hex_get_info",
"mcp__moddable-games-tools__hex_pathfind",
"mcp__moddable-games-tools__play_list_families",
"mcp__moddable-games-tools__play_list_variants",
"mcp__moddable-games-tools__play_get_definition",
"mcp__moddable-games-tools__play_get_moves",
"mcp__moddable-games-tools__play_check_status",
"mcp__moddable-games-tools__play_validate_move",
"mcp__moddable-games-tools__rules_list_games",
"mcp__moddable-games-tools__rules_get_game",
"mcp__moddable-games-tools__rules_get_game_meta",
"mcp__moddable-games-tools__rules_get_page",
"mcp__moddable-games-tools__rules_get_variant_list",
"mcp__moddable-games-tools__rules_get_diagram",
"mcp__moddable-games-tools__rules_get_variant",
"mcp__moddable-games-tools__rules_search",
"mcp__moddable-games-tools__rules_random",
"mcp__moddable-games-tools__board_gallery_search",
"mcp__moddable-games-tools__board_gallery_get",
"mcp__moddable-games-tools__tile_gallery_search",
"mcp__moddable-games-tools__tile_gallery_get",
"mcp__moddable-games-tools__tile_gallery_stats",
"mcp__moddable-games-tools__board_gallery_stats",
"mcp__moddable-games-tools__piece_gallery_search",
"mcp__moddable-games-tools__piece_gallery_get_set",
"mcp__moddable-games-tools__piece_gallery_stats",
"mcp__moddable-games-tools__oracle_list_games",
"mcp__moddable-games-tools__oracle_list_tables",
"mcp__moddable-games-tools__rpg_search_entities",
"mcp__moddable-games-tools__rpg_get_entity",
"mcp__moddable-games-tools__rpg_browse_category",
"mcp__moddable-games-tools__oracle_list_recipes",
"mcp__moddable-games-tools__oracle_interpret",
"mcp__moddable-games-tools__oracle_table_view",
"mcp__moddable-games-tools__rpg_list_categories",
"mcp__moddable-games-tools__rpg_random",
"mcp__moddable-games-tools__ti4_list_factions",
"mcp__moddable-games-tools__game_nukes_combat",
"mcp__moddable-games-tools__game_deck_list_types",
"mcp__moddable-games-tools__jam_status",
"mcp__moddable-games-tools__jam_timer",
"mcp__moddable-games-tools__jam_vote"
],
"ask": [
"mcp__moddable-games-tools__chess_generate_puzzle",
"mcp__moddable-games-tools__chess_make_move",
"mcp__moddable-games-tools__chess_render_svg",
"mcp__moddable-games-tools__chess_make_moves",
"mcp__moddable-games-tools__hex_generate_map",
"mcp__moddable-games-tools__hex_export_svg",
"mcp__moddable-games-tools__hex_compute_fov",
"mcp__moddable-games-tools__play_create_game",
"mcp__moddable-games-tools__play_apply_move",
"mcp__moddable-games-tools__play_suggest_move",
"mcp__moddable-games-tools__play_render_board",
"mcp__moddable-games-tools__play_export_fen",
"mcp__moddable-games-tools__play_load_fen",
"mcp__moddable-games-tools__play_make_moves",
"mcp__moddable-games-tools__rpg_chargen",
"mcp__moddable-games-tools__oracle_roll",
"mcp__moddable-games-tools__oracle_ask",
"mcp__moddable-games-tools__oracle_scene",
"mcp__moddable-games-tools__rpg_random_encounter",
"mcp__moddable-games-tools__rpg_loot",
"mcp__moddable-games-tools__oracle_encounter",
"mcp__moddable-games-tools__ti4_random_factions",
"mcp__moddable-games-tools__ti4_draft_factions",
"mcp__moddable-games-tools__ti4_draw_objectives",
"mcp__moddable-games-tools__ti4_draw_agendas",
"mcp__moddable-games-tools__nukes_setup_generator",
"mcp__moddable-games-tools__colony_dice_odds",
"mcp__moddable-games-tools__game_deck_create",
"mcp__moddable-games-tools__game_deck_deal",
"mcp__moddable-games-tools__game_score_tracker",
"mcp__moddable-games-tools__talisman_draw_characters",
"mcp__moddable-games-tools__talisman_draw_encounter",
"mcp__moddable-games-tools__dice_roll",
"mcp__moddable-games-tools__coin_flip",
"mcp__moddable-games-tools__team_split",
"mcp__moddable-games-tools__random_player_order",
"mcp__moddable-games-tools__timer_suggest",
"mcp__moddable-games-tools__game_jam_theme",
"mcp__moddable-games-tools__dice_odds"
],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. A read that can send data out (it takes a URL, say) asks first too. It assumes the server is installed as moddable-games-tools. Review it before you use it.
Capability tags behind 7 rules
- mcp__moddable-games-tools__rules_get_diagram untrusted-input
- mcp__moddable-games-tools__oracle_list_games private-data
- mcp__moddable-games-tools__oracle_list_tables private-data
- mcp__moddable-games-tools__rpg_browse_category untrusted-input
- mcp__moddable-games-tools__oracle_list_recipes private-data
- mcp__moddable-games-tools__oracle_interpret private-data
- mcp__moddable-games-tools__oracle_table_view private-data
Pin
Keep the decision: fail CI when the tools change, follow every change, or show a badge.
Pin in CI
Fail a build when the tools you reviewed are not the tools the server serves today.
curl -s "https://anlyon.dev/api/v1/servers/games.moddable.tools/moddable-games-tools/verify?hash=da718e65c493ec3d8f3b026d18b9139a4f7ef4512a6e7e91249cf6a6d3751beb" | jq -e '.changed == false'Pinned hash da718e65c493, from Oct 21, 2026, 18:38 UTC.
Watch
Get told when its tools change: a new tool, a new description, a new class.
https://anlyon.dev/servers/games.moddable.tools/moddable-games-tools/changes.xmlAn Atom feed. Works in any feed reader or Slack's RSS app.
Badge
[](https://anlyon.dev/servers/games.moddable.tools/moddable-games-tools)Source: MCP Registry · repository. Synced Oct 21, 2026, 18:13 UTC.