Get personalized game recommendations
get_recommended_gamesInfers your game preferences from your Steam library's most-played tags to recommend unowned games, weighted by playtime and review scores.
Instructions
Recommend unowned Steam catalog games personalized to this player: tags on their own most-played owned games become weighted preferences (more playtime on a tag = more weight), discounted by each candidate's review score so a tag match on a poorly-received game doesn't outrank a better one, then ranked against a broad catalog page, excluding anything already owned. based_on_tags shows which of the player's own top tags drove the ranking; each result carries matched_tags and match_score alongside the usual price/review/compat card. Set exclude_tags to steer away from a genre despite it matching by playtime (e.g. 'recommend me something except Souls-like'), or min_discount for 'recommend something on a good discount' (e.g. 'suggest games on sale, not RPGs or shooters' → exclude_tags:['RPG','Shooter','FPS'], min_discount:30). Different from discover_games (which needs YOU to name the filters) — this infers taste from the player's WHOLE library instead, for 'what should I play next' / 'recommend me something'. For 'something like THIS ONE game' (a single named title), get its tags via get_items and call discover_games with them instead. Note: candidates are scored from a large but fixed-size catalog scan, so a heavy exclude_tags/min_discount combination can return fewer than count — there's no larger scan to fall back to. Requires STEAM_API_KEY and a public profile with game-details visible (same requirement as get_owned_games) — found:false is also returned if the player owns no games at all to base recommendations on.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| count | No | How many recommendations to return (1-25). Default 10. | |
| steamid | No | 17-digit SteamID64. Omit to use the STEAM_ID configured on the server. Convert a vanity/custom URL name with resolve_vanity_url first. | |
| exclude_tags | No | Drop any candidate carrying ANY of these tags (case-insensitive), e.g. ['Souls-like'] for 'recommend me something except Souls-like'. Use exact Steam tag names — a misspelled/unrecognized one isn't an error, it just drops nothing. | |
| min_discount | No | Minimum discount %, e.g. 30 for '30%+ off'. Omit to include full-price games too. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||