Skip to main content

Model Context Protocol server for Steam Launch Forecaster — calibrated revenue cones for indie Steam game launches, exposed as MCP tools to Claude / AI agents.

Project description

steamforecast-mcp

CI PyPI License: MIT

Model Context Protocol server for Steam Launch Forecaster. Exposes calibrated revenue cones (P10–P90, empirically validated 80% coverage per genre) to Claude, ChatGPT, and any MCP-aware AI agent as tool calls.

What it does

Five tools, all backed by the public steamforecast.app API:

Tool What it does
get_forecast(appid) Calibrated P10/P50/P90 revenue cone for a Steam game by appid
get_comps(appid, k) Top-K nearest-neighbor comparable games (cosine sim over BGE embeddings)
boxleiter_estimate(review_count, price_cents) Pure-compute Boxleiter rule-of-thumb sanity check
get_calibration_summary() Latest published live coverage table (per-stratum)
get_methodology() Pulls llms.txt — high-quality URL inventory for ingestion

get_forecast and get_comps make HTTPS calls to steamforecast.app. The other three are pure compute / static reference, so they work offline once the package is installed.

Install

pip install steamforecast-mcp

Configure your MCP client

Claude Desktop / Claude Code

Add to your MCP config (typically ~/.claude.json or ~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "steamforecast": {
      "command": "steamforecast-mcp"
    }
  }
}

Or via the Claude Code CLI:

claude mcp add steamforecast -- steamforecast-mcp

Other MCP clients (Cursor, Cline, etc.)

Use the standard stdio MCP config; the executable is steamforecast-mcp and takes no arguments.

Quick usage

Once configured, ask your AI agent things like:

"Pull a calibrated revenue forecast for Hades on Steam (appid 1145360) and compare it to the Boxleiter rule of thumb. Are they consistent?"

The agent will call get_forecast(1145360), then call boxleiter_estimate(review_count, price_cents) with values from the forecast result, then surface the divergence to you.

"What's the live calibration coverage on the strategy_sim stratum?"

The agent calls get_calibration_summary() and reads the per_stratum table.

Why a separate server when the website exists?

Because LLMs and AI agents shouldn't have to scrape HTML to use a calibrated forecast. The MCP surface is structured (typed JSON), versioned, and rate-limit-aware, which is the right contract for tool-using models.

It also lets you build automations without manually copying numbers from the website into spreadsheets — e.g., a nightly Claude Code routine that pulls a forecast for every appid in a publisher's portfolio and writes a report.

Configuration

Env var Purpose Default
STEAMFORECAST_BASE_URL Override the API base URL (useful for local dev / staging) https://steamforecast.app

Development

git clone https://github.com/GC108/steamforecast-mcp
cd steamforecast-mcp
pip install -e ".[dev]"
pytest
ruff check .

License

MIT — see LICENSE.

Related

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

steamforecast_mcp-0.1.0.tar.gz (8.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

steamforecast_mcp-0.1.0-py3-none-any.whl (8.9 kB view details)

Uploaded Python 3

File details

Details for the file steamforecast_mcp-0.1.0.tar.gz.

File metadata

  • Download URL: steamforecast_mcp-0.1.0.tar.gz
  • Upload date:
  • Size: 8.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for steamforecast_mcp-0.1.0.tar.gz
Algorithm Hash digest
SHA256 24da9db9608505b57f869175abe58943d1c6bc5be9325f050038582cb090265e
MD5 ef3a76f979e92642cbcfa99a3e3ee7cd
BLAKE2b-256 0b7720189d8285b5cad7ec4e331025c4a73bf9990776743e62d47ca738e30c07

See more details on using hashes here.

Provenance

The following attestation bundles were made for steamforecast_mcp-0.1.0.tar.gz:

Publisher: publish.yml on GC108/steamforecast-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file steamforecast_mcp-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for steamforecast_mcp-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5b4242901cf449701e045c64431a6bd16eb8e12dbbebe9d7490c8324d2b87e16
MD5 9082fe3fe7fc6ddc68ec5a40bb80fabd
BLAKE2b-256 df34df9d3aa1e313757780c3687f412be7b2a9633693606c40d33a3c61e00204

See more details on using hashes here.

Provenance

The following attestation bundles were made for steamforecast_mcp-0.1.0-py3-none-any.whl:

Publisher: publish.yml on GC108/steamforecast-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page