Markan for developers
The data behind Markan's spreadsheet add-ins is open to you too: about 200,000 Steam games and DLC with reviews, prices, release dates, tags, genres, developers and publishers, refreshed continuously. Use it from an AI assistant through MCP, or from your own code through the GraphQL API. Both are free and need no account.
Ask your AI assistant (MCP)
Markan is a Model Context Protocol server. Connect it once, then ask things like:
- "Find five cozy farming sims released since 2022 and estimate how many copies each sold."
- "Compare the reviews and prices of Luma Island, Roots of Pacha and Grimshire."
- "Roughly how much did Dome Keeper earn after Steam's cut?"
Server URL:
https://api.markan.games/mcp Claude (claude.ai and the desktop app)
Settings → Connectors (on newer versions: Customize → Connectors) → Add custom connector. Name it "Markan" and paste the server URL; no sign-in is needed. On Team and Enterprise plans a custom connector is added for the whole organisation, so use a personal account if it's just for you.
Claude Code
claude mcp add --transport http markan https://api.markan.games/mcp Cursor
Add this to ~/.cursor/mcp.json (or .cursor/mcp.json in a project):
{
"mcpServers": {
"markan": { "url": "https://api.markan.games/mcp" }
}
} VS Code (GitHub Copilot)
Add this to .vscode/mcp.json:
{
"servers": {
"markan": { "type": "http", "url": "https://api.markan.games/mcp" }
}
} ChatGPT and other assistants
Any assistant that supports remote MCP servers over HTTP can use the same URL. In ChatGPT this is done by adding a custom connector in developer mode.
From chat to spreadsheet
When you've settled on your reference games, your assistant ends with a line like
Steam IDs: 2408820, 1245560, 2238470. Paste it into the search box of the Markan add-in in Google
Sheets or Excel, click Add all to references and then Create analysis, and you have the full
analysis. Store links work too.
Markan also offers the whole workflow as a ready-made prompt, reference_analysis: describe
your game, and your assistant finds candidates, goes through them with you and gives you that line. In Claude
Code it's /mcp__markan__reference_analysis; other apps show MCP prompts in their prompt or
attachment menu.
Tools
- find_games: find games by Steam tags, price, release date and number of reviews, e.g. every game tagged Cozy and Farming Sim released since 2022 under $25.
- search_games: find a game by title or Steam ID (top 5, most-reviewed first).
- get_games: data for up to 50 games, with the same field names as the
STEAM.DATAspreadsheet function, plus tags, genres, categories, developers and publishers. - estimate_sales: rough lifetime sales and net revenue (low, medium, high) for up to 50 games, calculated exactly like the add-ins. See how the estimates work.
Use the API
One GraphQL endpoint, no key needed:
https://api.markan.games/graphql Two queries:
search(title: String): up to 5 games matching a title (or a Steam ID), most-reviewed first.steamApps(steamIds: [Int]): games by Steam ID, in the order you asked; unknown IDs are left out.
Example
curl https://api.markan.games/graphql \
-H 'content-type: application/json' \
-d '{"query": "{ steamApps(steamIds: [413150]) { title releaseDate basePrice numReviews tags { name } } }"}' Answer (shortened):
{"data": {"steamApps": [{"title": "Stardew Valley", "releaseDate": "2016-02-26",
"basePrice": 1499, "numReviews": 903645, "tags": [{"name": "Farming Sim"}, ...]}]}} You can also explore the schema in your browser: open https://api.markan.games/graphql for an interactive query editor with autocompletion.
Fields
steamId | Steam app ID (a string) |
title | Name of the game |
type | game or dlc |
shortDescription | The short description from the store page |
releaseDate | Release date (YYYY-MM-DD) |
basePrice | List price in US dollar cents (0 = free) |
minimumPrice | Lowest price Markan has seen, in cents (null if not known yet) |
numReviews | Total number of Steam reviews |
numPositiveReviews / numNegativeReviews | Positive and negative reviews |
reviewScore / reviewScoreDesc | Steam's review score (1-9) and its label, e.g. Very Positive |
headerImage / backgroundImage | Image URLs |
website | The developer's website |
isAvailableOnWindows / Mac / Linux | Platforms |
supportedLanguages | Languages, as listed by Steam |
tags { name } | User tags, e.g. Cozy, Farming Sim |
genres { description }, categories { description } | Steam genres and categories |
developers { name }, publishers { name } | Who made and published it |
Prices are in US dollar cents. Field names never change once published, so your queries keep working.
How the estimates work
Steam doesn't publish sales figures, so Markan estimates them from the number of reviews (the "Boxleiter method"): sales = reviews × a multiplier. The multiplier depends on the release year, because players leave reviews more often than they used to, and comes in three tiers (low, medium, high) for a range rather than one number.
Net revenue = list price × sales × 0.348. That factor takes off 10% refunds, 20% for regional pricing, 25% average discount, 8% sales tax and Steam's 30% cut. It's the money that reaches the developer, before any publisher split.
These are rough estimates, useful for comparing games and sizing a market, not reported figures. Free games get no revenue estimate. Read how to choose reference games for a sound analysis.
Fair use
- Both services are free and anonymous. Please keep automated use reasonable: no bulk scraping of the whole catalogue.
- Markan counts requests per day to see how it's used. It doesn't store what you search for or ask your assistant.
- Questions, ideas or problems: info@markan.games.