Hourly radar of Roblox, Steam, Fortnite, iOS and itch.io games: rising games, niches and gaps.
Maintained by@Slain-OFF(verified)Also a maintainer?
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Evaluate one niche, always in the same format: kind "tracked" (ranked by Wieldr, Roblox or Fortnite) or "computed" (keyword computed live over moving games; stage, heat, window and studios null), stage, heat, window, stage history, games, new games and new winners, top game share, median growth, its fastest-rising games, the aggregated player complaints and crossPlatform (the same mechanic ranked on the other platform, Roblox <-> Fortnite). Heat weights are an uncalibrated estimate. Every game carries asOf (export time, UTC), source and grade (grade = completeness of the game record (A = 8+ of 10 data points known, B = 6-7, C = 4-5, D = fewer); estimate grade: B = tighter range, C = wide range, D = very rough order of magnitude.) Revenue figures are estimates with a range and a grade, never measured sales and never a guarantee. Definitions: resource wieldr://methodology.
Niche label, key or keyword: a ranked Roblox or Fortnite niche (e.g. "Ragdoll", "Tycoon", from list_niches), a genre (e.g. "Simulation") or a word in game titles (e.g. "brainrot").
steam, roblox, ios, itch (itch.io) or fortnite. Omit for all platforms.
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
Run in a terminal
claude mcp add --transport http radar https://wieldr.app/mcp
Evaluate one niche, always in the same format: kind "tracked" (ranked by Wieldr, Roblox or Fortnite) or "computed" (keyword computed live over moving games; stage, heat, window and studios null), stage, heat, window, stage history, games, new games and new winners, top game share, median growth, its fastest-rising games, the aggregated player complaints and crossPlatform (the same mechanic ranked on the other platform, Roblox <-> Fortnite). Heat weights are an uncalibrated estimate. Every game carries asOf (export time, UTC), source and grade (grade = completeness of the game record (A = 8+ of 10 data points known, B = 6-7, C = 4-5, D = fewer); estimate grade: B = tighter range, C = wide range, D = very rough order of magnitude.) Revenue figures are estimates with a range and a grade, never measured sales and never a guarantee. Definitions: resource wieldr://methodology.
| Argument | Type | Description |
|---|---|---|
| niche* | string | Niche label, key or keyword: a ranked Roblox or Fortnite niche (e.g. "Ragdoll", "Tycoon", from list_niches), a genre (e.g. "Simulation") or a word in game titles (e.g. "brainrot"). |
| platform | string | steam, roblox, ios, itch (itch.io) or fortnite. Omit for all platforms. |
{
"type": "object",
"required": [
"niche"
],
"properties": {
"niche": {
"type": "string",
"description": "Niche label, key or keyword: a ranked Roblox or Fortnite niche (e.g. \"Ragdoll\", \"Tycoon\", from list_niches), a genre (e.g. \"Simulation\") or a word in game titles (e.g. \"brainrot\")."
},
"platform": {
"enum": [
"steam",
"roblox",
"ios",
"itch",
"fortnite"
],
"type": "string",
"description": "steam, roblox, ios, itch (itch.io) or fortnite. Omit for all platforms."
}
},
"additionalProperties": false
}Side-by-side records of 2 to 4 games (same fields as get_game): players and growth, momentum, reviews, age, revenue estimate range and complaints. Momentum is comparable across platforms; raw players (Roblox, Fortnite peak per hour) and reviews (Steam) are not. Every game carries asOf (export time, UTC), source and grade (grade = completeness of the game record (A = 8+ of 10 data points known, B = 6-7, C = 4-5, D = fewer); estimate grade: B = tighter range, C = wide range, D = very rough order of magnitude.) Revenue figures are estimates with a range and a grade, never measured sales and never a guarantee. Definitions: resource wieldr://methodology.
| Argument | Type | Description |
|---|---|---|
| games* | array | Wieldr ids, Fortnite island codes or titles, 2 to 4. |
{
"type": "object",
"required": [
"games"
],
"properties": {
"games": {
"type": "array",
"items": {
"type": "string"
},
"maxItems": 4,
"minItems": 2,
"description": "Wieldr ids, Fortnite island codes or titles, 2 to 4."
}
},
"additionalProperties": false
}Find games that are gaining players or reviews right now (Roblox, Steam, Fortnite; iOS and itch.io have no momentum reading yet). Filter by platform, genre, title keyword, players online, age, positive share, niche stage; exclude ids already seen; page with nextCursor. Sort values are the field they sort by: momentum (default), growth24hPct, playersNow, acceleration, newest (smallest ageDays). By default small Steam games are hidden (50+ reviews in 7 days and 50+ players online when measured): includeSmall=true shows them. Start here for "what is rising" questions, then call get_game on an id. Every game carries asOf (export time, UTC), source and grade (grade = completeness of the game record (A = 8+ of 10 data points known, B = 6-7, C = 4-5, D = fewer); estimate grade: B = tighter range, C = wide range, D = very rough order of magnitude.) Revenue figures are estimates with a range and a grade, never measured sales and never a guarantee. Definitions: resource wieldr://methodology.
| Argument | Type | Description |
|---|---|---|
| sort | string | Field to sort by, descending (newest = youngest first). Default momentum. |
| genre | string | Exact genre, e.g. "Simulation", "Tycoon", "Action". |
| limit | integer | How many results per page (default 10, max 25). |
| cursor | string | nextCursor from the previous call, to get the next page. Omit for the first page. |
| keyword | string | Word in the title or genre, e.g. "brainrot". |
| platform | string | steam, roblox, ios, itch (itch.io) or fortnite. Omit for all platforms. |
| excludeIds | array | Wieldr ids to leave out (e.g. games already suggested). |
| maxAgeDays | integer | Only games released at most this many days ago. |
| maxPlayers | integer | Maximum players online now (find small games before they are crowded). |
| minPlayers | integer | Minimum players online now. |
| nicheStage | string | Only games in a ranked Roblox or Fortnite niche at this stage (see list_niches). |
| includeSmall | boolean | true = also return small Steam games under the default floor. |
| onlyAnomalies | boolean | Only games flagged as a velocity anomaly. |
| minPositivePct | number | Minimum share of positive reviews or votes (0-100); games with an unknown share are left out. |
{
"type": "object",
"properties": {
"sort": {
"enum": [
"momentum",
"growth24hPct",
"playersNow",
"acceleration",
"newest"
],
"type": "string",
"description": "Field to sort by, descending (newest = youngest first). Default momentum."
},
"genre": {
"type": "string",
"description": "Exact genre, e.g. \"Simulation\", \"Tycoon\", \"Action\"."
},
"limit": {
"type": "integer",
"maximum": 25,
"minimum": 1,
"description": "How many results per page (default 10, max 25)."
},
"cursor": {
"type": "string",
"description": "nextCursor from the previous call, to get the next page. Omit for the first page."
},
"keyword": {
"type": "string",
"description": "Word in the title or genre, e.g. \"brainrot\"."
},
"platform": {
"enum": [
"steam",
"roblox",
"ios",
"itch",
"fortnite"
],
"type": "string",
"description": "steam, roblox, ios, itch (itch.io) or fortnite. Omit for all platforms."
},
"excludeIds": {
"type": "array",
"items": {
"type": "string"
},
"maxItems": 200,
"description": "Wieldr ids to leave out (e.g. games already suggested)."
},
"maxAgeDays": {
"type": "integer",
"minimum": 0,
"description": "Only games released at most this many days ago."
},
"maxPlayers": {
"type": "integer",
"minimum": 0,
"description": "Maximum players online now (find small games before they are crowded)."
},
"minPlayers": {
"type": "integer",
"minimum": 0,
"description": "Minimum players online now."
},
"nicheStage": {
"enum": [
"forming",
"heating",
"crowded",
"dominated",
"established"
],
"type": "string",
"description": "Only games in a ranked Roblox or Fortnite niche at this stage (see list_niches)."
},
"includeSmall": {
"type": "boolean",
"description": "true = also return small Steam games under the default floor."
},
"onlyAnomalies": {
"type": "boolean",
"description": "Only games flagged as a velocity anomaly."
},
"minPositivePct": {
"type": "number",
"maximum": 100,
"minimum": 0,
"description": "Minimum share of positive reviews or votes (0-100); games with an unknown share are left out."
}
},
"additionalProperties": false
}What to build, with what odds, and whether it is too late: ranks every ranked niche (Roblox and Fortnite) for a team size and a build horizon. Each niche gets its stage, window, heat, a timing verdict (open, steady, tight, late) and a feasibility level (workable, stretch, hard, or null) with the barriers behind it (top game share, big studios or Epic / branded islands among the top 5, update cadence, server size: real exported values, each with its threshold) and a one-sentence reason. Both are documented heuristics, not scores or forecasts. Then call get_gap_analysis on a key. Every game carries asOf (export time, UTC), source and grade (grade = completeness of the game record (A = 8+ of 10 data points known, B = 6-7, C = 4-5, D = fewer); estimate grade: B = tighter range, C = wide range, D = very rough order of magnitude.) Revenue figures are estimates with a range and a grade, never measured sales and never a guarantee. Definitions: resource wieldr://methodology.
| Argument | Type | Description |
|---|---|---|
| limit | integer | How many results per page (default 10, max 30). |
| cursor | string | nextCursor from the previous call, to get the next page. Omit for the first page. |
| platform | string | roblox or fortnite (ranked niches exist on these two). Omit for both. |
| teamSize | string | solo (1 person), small (2-5) or studio. Default solo. |
| horizonWeeks | integer | Weeks until you can ship (default 8). Only changes the verdict for closing windows and crowded niches. |
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"maximum": 30,
"minimum": 1,
"description": "How many results per page (default 10, max 30)."
},
"cursor": {
"type": "string",
"description": "nextCursor from the previous call, to get the next page. Omit for the first page."
},
"platform": {
"enum": [
"roblox",
"fortnite"
],
"type": "string",
"description": "roblox or fortnite (ranked niches exist on these two). Omit for both."
},
"teamSize": {
"enum": [
"solo",
"small",
"studio"
],
"type": "string",
"description": "solo (1 person), small (2-5) or studio. Default solo."
},
"horizonWeeks": {
"type": "integer",
"maximum": 104,
"minimum": 1,
"description": "Weeks until you can ship (default 8). Only changes the verdict for closing windows and crowded niches."
}
},
"additionalProperties": false
}Full record of one game (Roblox, Steam, Fortnite island by id or code, iOS, itch.io): players online and 24 h growth (growth24hPct), playersAvg24h, momentum, reviews, rating, release date, studio, tags, 14-day revenue estimate range (or the reason there is none) and estimateBasis (Steam sales-per-review tier applied), robloxStructure (max players per server, update cadence, paid passes, creator, bigStudio) and robloxRetention (players 7 and 30 days after the peak), fortnite (licensed brand, Epic-made, Epic engagement and retention), player complaints and the number of linked viral videos. Every game carries asOf (export time, UTC), source and grade (grade = completeness of the game record (A = 8+ of 10 data points known, B = 6-7, C = 4-5, D = fewer); estimate grade: B = tighter range, C = wide range, D = very rough order of magnitude.) Revenue figures are estimates with a range and a grade, never measured sales and never a guarantee. Definitions: resource wieldr://methodology.
| Argument | Type | Description |
|---|---|---|
| game* | string | Wieldr game id (e.g. "roblox-2640407187", "steam-570" or "fortnite-1234-5678-9012", returned by other tools), a Fortnite island code ("1234-5678-9012") or a game title (case-insensitive; the most played match wins, other matches are listed). |
| platform | string | steam, roblox, ios, itch (itch.io) or fortnite. Omit for all platforms. |
{
"type": "object",
"required": [
"game"
],
"properties": {
"game": {
"type": "string",
"description": "Wieldr game id (e.g. \"roblox-2640407187\", \"steam-570\" or \"fortnite-1234-5678-9012\", returned by other tools), a Fortnite island code (\"1234-5678-9012\") or a game title (case-insensitive; the most played match wins, other matches are listed)."
},
"platform": {
"enum": [
"steam",
"roblox",
"ios",
"itch",
"fortnite"
],
"type": "string",
"description": "steam, roblox, ios, itch (itch.io) or fortnite. Omit for all platforms."
}
},
"additionalProperties": false
}Time series of one game: hourly players online (last ~48 readings), daily positive/negative reviews (Steam), daily cumulative visits, followers or reviews, and Wikipedia page views when known. Use it to tell a lasting rise from a one-day spike. Points are [UTC time, value]; a gap means no reading, not zero.
| Argument | Type | Description |
|---|---|---|
| game* | string | Wieldr game id (e.g. "roblox-2640407187", "steam-570" or "fortnite-1234-5678-9012", returned by other tools), a Fortnite island code ("1234-5678-9012") or a game title (case-insensitive; the most played match wins, other matches are listed). |
| platform | string | steam, roblox, ios, itch (itch.io) or fortnite. Omit for all platforms. |
| maxPoints | integer | Maximum points per series, most recent kept (default 48). |
{
"type": "object",
"required": [
"game"
],
"properties": {
"game": {
"type": "string",
"description": "Wieldr game id (e.g. \"roblox-2640407187\", \"steam-570\" or \"fortnite-1234-5678-9012\", returned by other tools), a Fortnite island code (\"1234-5678-9012\") or a game title (case-insensitive; the most played match wins, other matches are listed)."
},
"platform": {
"enum": [
"steam",
"roblox",
"ios",
"itch",
"fortnite"
],
"type": "string",
"description": "steam, roblox, ios, itch (itch.io) or fortnite. Omit for all platforms."
},
"maxPoints": {
"type": "integer",
"maximum": 120,
"minimum": 7,
"description": "Maximum points per series, most recent kept (default 48)."
}
},
"additionalProperties": false
}What the top 5 games of a ranked niche lack: complaint themes with their sample sizes, player requests (theme "Requests for new features" when detected), structure (multiplayer or not, max players per server, update cadence, paid passes, big studio or brand) and retention, plus factual observations and an honest list of missing data (dataGaps). Use it to pick an angle for an original game; null and measured=false mean no data, not zero. Every game carries asOf (export time, UTC), source and grade (grade = completeness of the game record (A = 8+ of 10 data points known, B = 6-7, C = 4-5, D = fewer); estimate grade: B = tighter range, C = wide range, D = very rough order of magnitude.) Revenue figures are estimates with a range and a grade, never measured sales and never a guarantee. Definitions: resource wieldr://methodology.
| Argument | Type | Description |
|---|---|---|
| niche* | string | Ranked niche label or key (from list_niches or find_opportunities), e.g. "Tycoon". |
| platform | string | roblox or fortnite (ranked niches exist on these two). Omit for both. |
{
"type": "object",
"required": [
"niche"
],
"properties": {
"niche": {
"type": "string",
"description": "Ranked niche label or key (from list_niches or find_opportunities), e.g. \"Tycoon\"."
},
"platform": {
"enum": [
"roblox",
"fortnite"
],
"type": "string",
"description": "roblox or fortnite (ranked niches exist on these two). Omit for both."
}
},
"additionalProperties": false
}Platform-wide picture and dataset freshness: games tracked per platform (Fortnite included) and how many have a momentum reading, anomalies, median price and free share, top genres, age bands, recent daily Steam reviews, the five hottest Roblox and Fortnite niches, niche history coverage, and the revenue methodology and disclaimer. Call it first to know what the data covers.
| Argument | Type | Description |
|---|---|---|
| platform | string | steam, roblox, ios, itch (itch.io) or fortnite. Omit for all platforms. |
{
"type": "object",
"properties": {
"platform": {
"enum": [
"steam",
"roblox",
"ios",
"itch",
"fortnite"
],
"type": "string",
"description": "steam, roblox, ios, itch (itch.io) or fortnite. Omit for all platforms."
}
},
"additionalProperties": false
}What players complain about, in one format for a game (game=...), a niche keyword (niche=...) or all moving games: themes with sharePct and sampleSize, how many games were measured and how many reviews or comments were read; measured=false means no data, not zero. Sources: sampled negative store reviews (Steam) or public YouTube comments on videos linked to the game (Roblox); none for Fortnite yet. Use the themes as angles for an original game that fixes them.
| Argument | Type | Description |
|---|---|---|
| game | string | Wieldr game id (e.g. "roblox-2640407187", "steam-570" or "fortnite-1234-5678-9012", returned by other tools), a Fortnite island code ("1234-5678-9012") or a game title (case-insensitive; the most played match wins, other matches are listed). |
| limit | integer | How many results per page (default 10, max 25). |
| niche | string | Niche label, key or keyword: a ranked Roblox or Fortnite niche (e.g. "Ragdoll", "Tycoon", from list_niches), a genre (e.g. "Simulation") or a word in game titles (e.g. "brainrot"). |
| cursor | string | nextCursor from the previous call, to get the next page. Omit for the first page. |
| platform | string | steam, roblox, ios, itch (itch.io) or fortnite. Omit for all platforms. |
{
"type": "object",
"properties": {
"game": {
"type": "string",
"description": "Wieldr game id (e.g. \"roblox-2640407187\", \"steam-570\" or \"fortnite-1234-5678-9012\", returned by other tools), a Fortnite island code (\"1234-5678-9012\") or a game title (case-insensitive; the most played match wins, other matches are listed)."
},
"limit": {
"type": "integer",
"maximum": 25,
"minimum": 1,
"description": "How many results per page (default 10, max 25)."
},
"niche": {
"type": "string",
"description": "Niche label, key or keyword: a ranked Roblox or Fortnite niche (e.g. \"Ragdoll\", \"Tycoon\", from list_niches), a genre (e.g. \"Simulation\") or a word in game titles (e.g. \"brainrot\")."
},
"cursor": {
"type": "string",
"description": "nextCursor from the previous call, to get the next page. Omit for the first page."
},
"platform": {
"enum": [
"steam",
"roblox",
"ios",
"itch",
"fortnite"
],
"type": "string",
"description": "steam, roblox, ios, itch (itch.io) or fortnite. Omit for all platforms."
}
},
"additionalProperties": false
}Steam genre trends by tag over the last 6 and 12 complete months: change of the tag's share of releases (shareChange6m, 1.25 = +25%), releases, median reviews, share with 100+ reviews, median price and free share per window, releases by month. Filter by tag, sort by shareChange6m (default), games12m or medianReviews6m. For indie projects of 6 to 24 months; playtime is not collected (null).
| Argument | Type | Description |
|---|---|---|
| tag | string | Part of a Steam tag, e.g. "roguelike", "cozy". |
| sort | string | Field to sort by. Default shareChange6m. |
| limit | integer | How many results per page (default 15, max 40). |
| order | string | desc (default: rising first) or asc (falling first). |
| cursor | string | nextCursor from the previous call, to get the next page. Omit for the first page. |
{
"type": "object",
"properties": {
"tag": {
"type": "string",
"description": "Part of a Steam tag, e.g. \"roguelike\", \"cozy\"."
},
"sort": {
"enum": [
"shareChange6m",
"games12m",
"medianReviews6m"
],
"type": "string",
"description": "Field to sort by. Default shareChange6m."
},
"limit": {
"type": "integer",
"maximum": 40,
"minimum": 1,
"description": "How many results per page (default 15, max 40)."
},
"order": {
"enum": [
"desc",
"asc"
],
"type": "string",
"description": "desc (default: rising first) or asc (falling first)."
},
"cursor": {
"type": "string",
"description": "nextCursor from the previous call, to get the next page. Omit for the first page."
}
},
"additionalProperties": false
}Public TikTok and YouTube videos already linked to rising games, sorted by views (url, network, views, publish date, game). Filter by game, a title keyword or platform; page with nextCursor. Use them to study hooks; videos are tracked for the hottest anomalies only.
| Argument | Type | Description |
|---|---|---|
| game | string | Wieldr game id (e.g. "roblox-2640407187", "steam-570" or "fortnite-1234-5678-9012", returned by other tools), a Fortnite island code ("1234-5678-9012") or a game title (case-insensitive; the most played match wins, other matches are listed). |
| limit | integer | How many results per page (default 10, max 30). |
| niche | string | Word in the game title, e.g. "tycoon". |
| cursor | string | nextCursor from the previous call, to get the next page. Omit for the first page. |
| platform | string | steam, roblox, ios, itch (itch.io) or fortnite. Omit for all platforms. |
{
"type": "object",
"properties": {
"game": {
"type": "string",
"description": "Wieldr game id (e.g. \"roblox-2640407187\", \"steam-570\" or \"fortnite-1234-5678-9012\", returned by other tools), a Fortnite island code (\"1234-5678-9012\") or a game title (case-insensitive; the most played match wins, other matches are listed)."
},
"limit": {
"type": "integer",
"maximum": 30,
"minimum": 1,
"description": "How many results per page (default 10, max 30)."
},
"niche": {
"type": "string",
"description": "Word in the game title, e.g. \"tycoon\"."
},
"cursor": {
"type": "string",
"description": "nextCursor from the previous call, to get the next page. Omit for the first page."
},
"platform": {
"enum": [
"steam",
"roblox",
"ios",
"itch",
"fortnite"
],
"type": "string",
"description": "steam, roblox, ios, itch (itch.io) or fortnite. Omit for all platforms."
}
},
"additionalProperties": false
}Ranked niches of Roblox (default) or Fortnite (platform=fortnite), hottest first by default: stage (forming, heating, crowded, dominated, established; Fortnite can be null with stageNote saying why), heat 0-100, opportunity window (open, narrowing, closing, or null with the days of history still needed), stage history, games, studios, players, new games in 14/30 days and how many reached 1,000 players (new30Winners), share held by the top game, median 24 h growth. Filter by stage, sort by any of these fields, page with nextCursor. Then call find_opportunities, analyze_niche or get_gap_analysis on a label. Every game carries asOf (export time, UTC), source and grade (grade = completeness of the game record (A = 8+ of 10 data points known, B = 6-7, C = 4-5, D = fewer); estimate grade: B = tighter range, C = wide range, D = very rough order of magnitude.) Revenue figures are estimates with a range and a grade, never measured sales and never a guarantee. Definitions: resource wieldr://methodology.
| Argument | Type | Description |
|---|---|---|
| sort | string | Field to sort by, descending. Default heat. |
| limit | integer | How many results per page (default 10, max 30). |
| stage | string | Only niches at this stage (niches with an unknown stage are left out). |
| cursor | string | nextCursor from the previous call, to get the next page. Omit for the first page. |
| platform | string | steam, roblox, ios, itch (itch.io) or fortnite. Omit for all platforms. |
{
"type": "object",
"properties": {
"sort": {
"enum": [
"heat",
"playersNow",
"games",
"new30",
"new30Winners",
"medianGrowth24hPct",
"freshShare90",
"top1Share"
],
"type": "string",
"description": "Field to sort by, descending. Default heat."
},
"limit": {
"type": "integer",
"maximum": 30,
"minimum": 1,
"description": "How many results per page (default 10, max 30)."
},
"stage": {
"enum": [
"forming",
"heating",
"crowded",
"dominated",
"established"
],
"type": "string",
"description": "Only niches at this stage (niches with an unknown stage are left out)."
},
"cursor": {
"type": "string",
"description": "nextCursor from the previous call, to get the next page. Omit for the first page."
},
"platform": {
"enum": [
"steam",
"roblox",
"ios",
"itch",
"fortnite"
],
"type": "string",
"description": "steam, roblox, ios, itch (itch.io) or fortnite. Omit for all platforms."
}
},
"additionalProperties": false
}Trajectory of one game of the radar against the median of its niches (up to 3, largest first): 24 h growth, momentum, and retention 7 and 30 days after the peak (Roblox) or Epic D7 retention (Fortnite), each as game, nicheMedian and delta. A value not computable yet is null with its reason and daysMissing (days to wait; null when waiting will not help). Every game carries asOf (export time, UTC), source and grade (grade = completeness of the game record (A = 8+ of 10 data points known, B = 6-7, C = 4-5, D = fewer); estimate grade: B = tighter range, C = wide range, D = very rough order of magnitude.) Revenue figures are estimates with a range and a grade, never measured sales and never a guarantee. Definitions: resource wieldr://methodology.
| Argument | Type | Description |
|---|---|---|
| game* | string | Wieldr game id (e.g. "roblox-2640407187", "steam-570" or "fortnite-1234-5678-9012", returned by other tools), a Fortnite island code ("1234-5678-9012") or a game title (case-insensitive; the most played match wins, other matches are listed). |
| platform | string | steam, roblox, ios, itch (itch.io) or fortnite. Omit for all platforms. |
{
"type": "object",
"required": [
"game"
],
"properties": {
"game": {
"type": "string",
"description": "Wieldr game id (e.g. \"roblox-2640407187\", \"steam-570\" or \"fortnite-1234-5678-9012\", returned by other tools), a Fortnite island code (\"1234-5678-9012\") or a game title (case-insensitive; the most played match wins, other matches are listed)."
},
"platform": {
"enum": [
"steam",
"roblox",
"ios",
"itch",
"fortnite"
],
"type": "string",
"description": "steam, roblox, ios, itch (itch.io) or fortnite. Omit for all platforms."
}
},
"additionalProperties": false
}We read every tool's name, description and inputs the way the model will, looking for instructions hidden from you. A clean result means no warning signs, not a guarantee. Scanned Nov 9, 2026.