Steam trends in Cursor

Agent can call Steam Most Played and steam concurrent-player history through Trends MCP. Steam Web API still wins app details. The keyword is a game display name.

Steam trends in Cursor means Trends MCP inside Agent, not a Steamworks dashboard and not a scrape of steamcharts. After mcp.json is live, get_top_trends type Steam Most Played returns the concurrent live-player board. get_growth source steam returns concurrent-player history. The keyword is a game display name such as Elden Ring. The data sources table says the pipeline uses the first Steam search result for that string. Default board limit 25.

Source page: Steam trends. Cursor host: Trends MCP for Cursor. Connect job: how to connect Cursor to live trend data. GitHub pairing when the ticket is a game-plus-engine dependency: GitHub trending MCP for Cursor.

Display names, not app IDs

"trends-mcp": {
  "url": "https://api.trendsmcp.ai/mcp",
  "transport": "http",
  "headers": {
    "Authorization": "Bearer YOUR_API_KEY"
  }
}

Key: account. Fully quit Cursor. Say “using TrendsMCP.”

get_top_trends(type="Steam Most Played", limit=25)
get_growth(keyword="Elden Ring", source="steam", percent_growth=["3M", "12M"])
get_growth(keyword="Elden Ring", source="steam, google search, youtube", percent_growth=["3M"])

Type Steam Most Played takes no keyword. Source steam takes a display name. Sending an app ID is a common miss. Sending the board type as source is invalid_source. History grain on steam is monthly concurrent players, not a tick. REST get_time_series. sort rank_change needs a baseline snapshot.

Do not freeze this morning’s Most Played list in .cursorrules. Cite as_of_ts.

A proving pair: one board, one steam growth call. Two requests. Adding google search and youtube is two more. That cross-check is why this MCP exists next to steamcharts folklore.

What Agent must not invent

Review scores, DLC prices, and Steam app IDs are not in this payload. Steam Web API still wins those objects. Fail closed. Invented app IDs in a design doc are worse than an empty tool list.

Low-volume or badly matched names print huge percents on tiny baselines. Quote both index values. Empty: not_found or data_unavailable, often a nickname.

.cursorrules can pin type Steam Most Played, source steam, and the display-name rule. They should not pin today’s chart.

Quotas

Free 100 requests per month. Starter $19 / 1,000. Pro $49 / 5,000. Business $199 / 25,000. Pricing. Cursor is a weak cron. Nightly Most Played belongs on REST.

401: www URL in Cursor. If the next turn is “open the Steamworks build,” stop using Trends MCP. If the next turn is “is this game also moving on YouTube,” add source youtube on the same display-shaped phrase and label the object.

Display names, search results, and monthly grain

The data sources table says source steam uses the first Steam search result for the display name. Two games that share a nickname can collide. If the series looks like the wrong title, change the keyword to the store’s exact label and call again. That second call is a second request. It is cheaper than inventing an app ID.

History grain is monthly concurrent players, not a tick and not a daily peak. A 30D percent on steam is not a 30-hour player spike. Do not compare it to a 7D Google Search percent as if the windows matched in spirit. Label the grain in the PR note.

steamcharts and similar UIs remain human browsers. A crawl MCP can fetch a URL. Trends MCP will not. Steam Web API still wins app details. Fail closed on review scores and DLC prices.

A proving pair that fits the free plan: one Steam Most Played page, one get_growth on a known display name. Two requests. Adding google search and youtube is the cross-platform question steamcharts does not answer on one key.

.cursorrules can pin type Steam Most Played, source steam, and the display-name rule. They should not pin today’s chart. Cursor is a weak cron. Nightly Most Played belongs on REST.

401 is still the www URL in mcp.json. Empty not_found is often a nickname. Quote both index values on low-volume matches. Invented app IDs in a design doc are worse than an empty tool list. Steam Web API still wins app details. steamcharts still wins a human UI. YouTube still wins watch-shaped demand on source youtube. Google Search still wins public interest. Label the grain. Monthly concurrent is not a tick. Nightly Most Played belongs on REST. Connecting is free. Calling is not. Fail closed on review scores and DLC prices. Recheck the store display name if the series looks like the wrong game. Two titles that share a nickname can collide because the pipeline uses the first Steam search result. Change the keyword to the store label and pay a second request. That is cheaper than an invented app ID. Monthly concurrent is not daily peak. Do not compare a 30D steam percent to a 7D Google percent as if the windows matched. Label the grain in the PR note. steamcharts remains a human UI. Steam Web API remains objects. Agent remains the public board plus the series on one key.

Concurrent players on a 0-100 index

get_growth source steam is concurrent-player history on a 0-100 index where the pipeline supports it. It is not SteamDB peak, not Steam Charts hourly, and not a review-score series. A design doc that prints “players” without naming concurrent versus peak is mixing grains. Print percent_growth next to both index values. A 40 percent move on a 4-to-6 baseline is a small game, not a Steam front page.

Steam Most Played is a snapshot. as_of_ts is the stamp. A follow-up get_growth on the same display name is a second request. That pair proves the connector. Ten names is a research session. Cursor Agent will loop if the prompt says “every game on the board.” Cap the prompt. Nightly Most Played belongs on REST POST https://api.trendsmcp.ai/api with mode get_top_trends and type Steam Most Played.

Empty not_found after a nickname is expected. Empty after the exact store title can be data_unavailable. Those strings are different. Do not coerce either into a zero. Steam Web API still wins appid. This MCP path still wins the public board next to YouTube watch demand and Google Search interest on one key. Three sources are three requests. Name them in the PR.

Common questions

Install Trends MCP, then ask Agent, using TrendsMCP, for get_top_trends type Steam Most Played. For a named game, call get_growth with source steam and the game display name, such as Elden Ring. The pipeline uses the first Steam search result for that string.
The keyword was likely an app ID, a package name, or a nickname the store does not use. Source steam wants a display name. Sending Steam Most Played as source is invalid_source.
No. Steam Web API still returns app details, player counts at other grains, and store objects. Trends MCP returns a Most Played board and a monthly concurrent-player series on a 0-100 index where the pipeline supports it.
No. Fail closed. Look up the store page or Web API when the object is an identifier.