steam-reviews-mcp

jhomen368/steam-reviews-mcp
2 starsMITCommunity

Install to Claude Code

This server doesn't publish a one-line install command. Follow the setup in the source repository.

Summary

steam-reviews-mcp MCP server](https://glama.ai/mcp/servers/@jhomen368/steam-reviews-mcp/badges/score.svg)](https://glama.ai/mcp/servers/@jhomen368/steam-reviews-mcp) 📇 ☁️ - Search Steam games, fetch user reviews, and analyze sentiment with topic...

README.md

Steam Reviews MCP Server

![License: MIT](https://opensource.org/licenses/MIT) ![Docker](https://github.com/jhomen368/steam-reviews-mcp/pkgs/container/steam-reviews-mcp) ![Version](https://github.com/jhomen368/steam-reviews-mcp) ![PayPal](https://www.paypal.com/donate?hosted_button_id=PBRD7FXKSKAD2)

A Model Context Protocol (MCP) server for Steam game reviews and analysis. Search games, fetch reviews, and analyze sentiment through the Model Context Protocol.

🎯 Key Features

  • 🔍 Game Search - Search Steam games by name with batch support (up to 5 queries)
  • 📊 Detailed Game Info - Get comprehensive game data with criteria filtering
  • 💬 Review Fetching - Advanced filtering (time-bounded, Steam Deck, review bombs)
  • 🧠 Sentiment Analysis - NLP-powered analysis with topic drill-down
  • ⚡ Smart Caching - 70-85% API call reduction with variable TTL
  • 🔗 Example Quotes - Clickable Steam community links for review quotes

🔒 Security

  • 🐳 Hardened Docker Images
  • Non-root user (mcpuser)
  • Multi-stage builds
  • Minimal Alpine base
  • dumb-init process management
  • ✅ Input Validation
  • Zod schema validation for all inputs
  • Type-safe TypeScript throughout

🛠️ Available Tools

| Tool | Purpose | Key Features | |------|---------|--------------| | search_steam_games | Search for games | Single/batch search, AppID lookup, price info | | get_game_info | Get game details | Batch lookup, criteria filtering, system requirements, DLC | | fetch_reviews | Fetch user reviews | Advanced filters, pagination, time-bounded queries | | analyze_reviews | Analyze sentiment | NLP analysis, topic drill-down, example quotes with links |

📋 Prerequisites

  • Node.js 18.0 or higher
  • npm or compatible package manager
  • No API key required! Uses public Steam Store API

🚀 Quick Start

Option 1: NPM (Recommended)

npm install -g @jhomen368/steam-reviews-mcp

Configure with Claude Desktop:

Add to your configuration file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "steam-reviews": {
      "command": "npx",
      "args": ["-y", "@jhomen368/steam-reviews-mcp"]
    }
  }
}

Option 2: Docker (HTTP Mode)

docker run -d \
  --name steam-reviews-mcp \
  -p 8086:8086 \
  ghcr.io/jhomen368/steam-reviews-mcp:latest

Docker Compose:

services:
  steam-reviews-mcp:
    image: ghcr.io/jhomen368/steam-reviews-mcp:latest
    container_name: steam-reviews-mcp
    ports:
      - "8086:8086"
    restart: unless-stopped

Test the server: ``bash curl http://localhost:8086/health ``

Connect MCP clients:

  • Transport: SSE (Server-Sent Events)
  • URL: http://localhost:8086/mcp

Option 3: From Source

git clone https://github.com/jhomen368/steam-reviews-mcp.git
cd steam-reviews-mcp
npm install
npm run build
node build/index.js

💡 Usage Examples

Search for Games

// Single search
search_steam_games({
  query: "Baldur's Gate 3",
  limit: 10
})

// Batch search (up to 5 queries)
search_steam_games({
  queries: ["Elden Ring", "Cyberpunk 2077", "Hades"],
  limit: 5
})

Get Game Info with Criteria

get_game_info({
  appIds: [1086940, 1245620],
  criteria: {
    minReviewScore: 80,
    minReviews: 1000,
    requireMetacritic: true
  },
  includeRequirements: true,
  includeDlc: true
})

Fetch Reviews with Filters

// Recent positive reviews
fetch_reviews({
  appId: 1086940,
  filter: "recent",
  reviewType: "positive",
  dayRange: 30
})

// Filter out review bombs
fetch_reviews({
  appId: 1086940,
  filterOfftopicActivity: true
})

Analyze Sentiment

// General analysis
analyze_reviews({
  appId: 1086940,
  sampleSize: 100
})

// Topic-focused analysis
analyze_reviews({
  appId: 1086940,
  topic: "performance"
})

Natural Language Examples

Simply ask your AI assistant:

  • "Search for Elden Ring on Steam"
  • "Get info about Baldur's Gate 3 including system requirements"
  • "What are people saying about Cyberpunk 2077 recently?"
  • "Analyze negative reviews for No Man's Sky - what are the main complaints?"
  • "Find free games with at least 90% positive reviews"

⚙️ Configuration

Environment Variables

All configuration is optional with sensible defaults:

# Cache settings
CACHE_ENABLED=true                    # Enable caching (default: true)
CACHE_MAX_SIZE=1000                   # Max cache entries

# Rate limiting
RATE_LIMIT_ENABLED=true               # Enable rate limiting (default: true)
MAX_REQUESTS_PER_MINUTE=30            # Max API calls per minute

# HTTP mode (for Docker)
HTTP_MODE=false                       # Enable HTTP transport
PORT=8086                             # HTTP server port

📚 Documentation

🔧 Troubleshooting

Connection Issues

  • Verify Steam Store API is accessible (no firewall blocks)
  • Check rate limiting if receiving 429 errors
  • Review logs for timeout errors

Docker Issues

# Check logs
docker logs steam-reviews-mcp

# Verify health
curl http://localhost:8086/health

Build Issues

# Ensure Node.js 18+
node --version

# Clean rebuild
rm -rf node_modules build
npm install
npm run build

🤝 Contributing

Contributions welcome! Please see CONTRIBUTING.md for guidelines.

📄 License

MIT License - see LICENSE for details

🙏 Acknowledgments

---

Support this project: ![PayPal](https://www.paypal.com/donate?hosted_button_id=PBRD7FXKSKAD2)

Related MCP servers

Browse all →