[MCP] get_game_state only returns one row of mapNodes — AI agents can't plan routes across the full map
一句话:get_game_state 的 mapNodes 只返回当前行可见节点,没有全地图数据(无 map 字段),AI agent 无法做跨行路线规划——每走一步都是盲选。
Problem / 问题描述
get_game_state returns only the map nodes on the current row. There is no map field that exposes the full act map structure. This makes route planning impossible for AI agents.
get_game_state 的 mapNodes 只返回当前行的节点。没有 map 字段暴露完整的地图结构。AI agent 无法做路线规划。
Current behavior / 当前行为:
{
"mapNodes": [
{ "index": 0, "pointType": "Monster", "row": 1, "col": 0 },
{ "index": 1, "pointType": "Monster", "row": 1, "col": 4 },
{ "index": 2, "pointType": "Monster", "row": 1, "col": 5 }
]
// No "map" field at all
}
Only nodes on row 1 are visible. The agent cannot see:
- What node types exist on rows 2-17
- Where rest sites, elites, shops, or treasure rooms are located
- Which paths lead to dead ends vs. boss floors
Expected / 期望:
One of the following:
get_game_state includes a map field with all act nodes, or
- A new tool (e.g.,
get_map_state) returns the full map structure with all rows, columns, and node types
Environment / 环境
- Game: Slay the Spire 2 v0.109.0 (public-beta branch)
- KitLib: v0.31.1 (Steam Workshop 3747619669)
- MCP: KitLib.Mcp.exe v0.31.1 via HTTP bridge
127.0.0.1:9877
- Modules: KitLib.Dev, KitLib.Cheat
Steps to Reproduce / 复现步骤
- Start a test run and reach the map screen
- Call
get_game_state
- Observe
mapNodes only contains nodes on the current row
- No
map field or full-map data exists in the response
- No other MCP tool exposes full map data
Impact / 影响范围
Without full map visibility, AI agents cannot:
- Plan multi-row routes (e.g., path to an elite → rest site → boss)
- Identify campfire, shop, or treasure locations in advance
- Avoid dead-end paths
- Make strategic trade-offs (take elite now or save HP for later?)
Every map decision is effectively blind — the agent can only react to the immediate next step. This cripples strategic gameplay, which is the core of Slay the Spire.
Question for Maintainer / 致维护者
这个功能我来提 PR 一起改,还是您决定自己加?我可以贡献代码(补 map 字段或新增 get_map_state 工具),也可以等您安排。哪种方式您更方便?
This is part of a project building an LLM-driven AI agent to autonomously play STS2 via KitLib MCP tools.
[MCP] get_game_state only returns one row of mapNodes — AI agents can't plan routes across the full map
Problem / 问题描述
get_game_statereturns only the map nodes on the current row. There is nomapfield that exposes the full act map structure. This makes route planning impossible for AI agents.get_game_state的mapNodes只返回当前行的节点。没有map字段暴露完整的地图结构。AI agent 无法做路线规划。Current behavior / 当前行为:
{ "mapNodes": [ { "index": 0, "pointType": "Monster", "row": 1, "col": 0 }, { "index": 1, "pointType": "Monster", "row": 1, "col": 4 }, { "index": 2, "pointType": "Monster", "row": 1, "col": 5 } ] // No "map" field at all }Only nodes on row 1 are visible. The agent cannot see:
Expected / 期望:
One of the following:
get_game_stateincludes amapfield with all act nodes, orget_map_state) returns the full map structure with all rows, columns, and node typesEnvironment / 环境
127.0.0.1:9877Steps to Reproduce / 复现步骤
get_game_statemapNodesonly contains nodes on the current rowmapfield or full-map data exists in the responseImpact / 影响范围
Without full map visibility, AI agents cannot:
Every map decision is effectively blind — the agent can only react to the immediate next step. This cripples strategic gameplay, which is the core of Slay the Spire.
Question for Maintainer / 致维护者
这个功能我来提 PR 一起改,还是您决定自己加?我可以贡献代码(补
map字段或新增get_map_state工具),也可以等您安排。哪种方式您更方便?This is part of a project building an LLM-driven AI agent to autonomously play STS2 via KitLib MCP tools.