{ "function_declarations": [ { "name": "resource-list", "description": "List all resources of a specific type from the ROM (rooms, sprites, dungeons, entrances, items, overlords)", "parameters": { "type": "object", "properties": { "type": { "type": "string", "enum": ["room", "sprite", "dungeon", "entrance", "item", "overlord"], "description": "Type of resource to list" } }, "required": ["type"] } }, { "name": "resource-search", "description": "Search for resources by name or pattern", "parameters": { "type": "object", "properties": { "type": { "type": "string", "enum": ["room", "sprite", "dungeon", "entrance", "item"], "description": "Type of resource to search" }, "query": { "type": "string", "description": "Search query or pattern to match" } }, "required": ["type", "query"] } }, { "name": "dungeon-list-sprites", "description": "List all sprites in a specific dungeon or room", "parameters": { "type": "object", "properties": { "dungeon": { "type": "string", "description": "Dungeon name (e.g., 'hyrule_castle', 'eastern_palace') or leave empty for all" }, "room_id": { "type": "string", "description": "Specific room ID to query (optional)" } } } }, { "name": "dungeon-describe-room", "description": "Get detailed information about a specific dungeon room including sprites, chests, layout, and connections", "parameters": { "type": "object", "properties": { "room_id": { "type": "string", "description": "Room ID to describe (0-296)" }, "include_sprites": { "type": "string", "enum": ["true", "false"], "description": "Include sprite information (default: true)" } }, "required": ["room_id"] } }, { "name": "overworld-find-tile", "description": "Find all locations where a specific tile16 ID appears in the overworld", "parameters": { "type": "object", "properties": { "tile_id": { "type": "string", "description": "Tile16 ID to search for (hex format like '0x42' or decimal)" }, "map_id": { "type": "string", "description": "Specific overworld map to search (0-63, optional)" } }, "required": ["tile_id"] } }, { "name": "overworld-describe-map", "description": "Get detailed information about a specific overworld map including tile composition, warps, and sprites", "parameters": { "type": "object", "properties": { "map_id": { "type": "string", "description": "Overworld map ID (0-63 for light/dark world)" }, "include_tiles": { "type": "string", "enum": ["true", "false"], "description": "Include tile distribution statistics" } }, "required": ["map_id"] } }, { "name": "overworld-list-warps", "description": "List all warp/entrance points for a specific overworld map", "parameters": { "type": "object", "properties": { "map_id": { "type": "string", "description": "Overworld map ID (0-63)" } }, "required": ["map_id"] } }, { "name": "overworld-list-sprites", "description": "List all sprites placed on a specific overworld map", "parameters": { "type": "object", "properties": { "map_id": { "type": "string", "description": "Overworld map ID (0-63)" } }, "required": ["map_id"] } }, { "name": "overworld-get-entrance", "description": "Get detailed information about a specific entrance/exit including destination and properties", "parameters": { "type": "object", "properties": { "entrance_id": { "type": "string", "description": "Entrance ID to query" } }, "required": ["entrance_id"] } }, { "name": "overworld-tile-stats", "description": "Get statistical analysis of tile usage across overworld maps", "parameters": { "type": "object", "properties": { "map_id": { "type": "string", "description": "Specific map ID or 'all' for global statistics" } } } } ] }