Steam Library MCP Server

Steam Library MCP Server

Provides access to your Steam game library data through Claude Desktop, enabling game search, filtering, details, recommendations, and statistics.

Category
Visit Server

README

Steam Library MCP Server

A Model Context Protocol (MCP) server that provides access to your Steam game library data through Claude Desktop. It includes a helper script to copy your library data locally to a csv file for the MCP server to ingest.

This repo was developed with Claude Code, and I left Claude's config in here for reference. This was built simply as a learning experience and an example of how to create an MCP server.

Features

  • Search Games: Find games by name, genre, developer, publisher, review summary, or maturity rating
  • Filter Games: Filter by playtime, review summary, or maturity rating
  • Game Details: Get comprehensive information about specific games
  • Review Analysis: Detailed review statistics for games
  • Library Statistics: Overview of your entire game library
  • Recently Played: See what you've been playing lately
  • Recommendations: Get game suggestions based on your playtime patterns

Example Interactions using Claude Desktop (Click the dropdowns to see responses)

<details> <summary>Suggest games based on recent play history<br><img src="images/recent_games_question.png"/></summary> <br> <img src="images/recent_games_answer.png" /> </details>

<details> <summary>Suggest games based on review scores and age ratings<br><img src="images/game_suggestion_question.png"/></summary> <br> <img src="images/game_suggestion_answer.png" /> </details>

<details> <summary>Generate a calendar timeline following several rules of games to share over time<br><img src="images/game_sharing_calendar_question.png"/></summary> <br> <img src="images/game_sharing_calendar_answer.png" /> </details>

Prerequisites

  • Python 3.8 or higher
  • A Steam account with a public game library
  • Steam API key (get one from https://steamcommunity.com/dev/apikey)
  • Your Steam ID

Setup

1. Install Dependencies

pip install -r requirements.txt

2. Fetch Your Steam Library Data

First, create a .env file with your Steam credentials:

# .env
STEAM_ID=your_steam_id_here
STEAM_API_KEY=your_steam_api_key_here

Then run the data fetcher:

python steam_library_fetcher.py

This will create a steam_library.csv file with all your game data.

3. Configure Claude Desktop

Copy the example configuration file and update the paths:

cp claude_desktop_config.example.json claude_desktop_config.json

Edit claude_desktop_config.json and update the paths to match your system:

{
  "mcpServers": {
    "Steam Library": {
      "command": "/path/to/your/python",
      "args": ["/path/to/your/simple-steam-mcp/mcp_server.py"],
      "env": {}
    }
  }
}

Then copy it to Claude Desktop's configuration location:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Linux: ~/.config/claude/claude_desktop_config.json Windows: %APPDATA%\claude\claude_desktop_config.json

4. Test the Server

You can test the server directly:

python mcp_server.py

5. Restart Claude Desktop

After updating the configuration file, restart Claude Desktop to load the MCP server.

Usage Examples

Once configured, you can ask Claude Desktop questions like:

  • "What are my top 10 most played games?"
  • "Show me all my puzzle games"
  • "Find games with 'Very Positive' reviews that I haven't played yet"
  • "What are some good games I should try based on what I've played?"
  • "Show me details for Half-Life 2"
  • "What games have I played recently?"
  • "Give me statistics about my Steam library"

Available Tools

  1. search_games: Search by name, genre, developer, publisher, review summary, or maturity rating
  2. filter_games: Filter by playtime thresholds, review summary, or maturity rating
  3. get_game_details: Get comprehensive info about a specific game
  4. get_game_reviews: Get detailed review statistics
  5. get_library_stats: Overview statistics of your library
  6. get_recently_played: Games played in the last 2 weeks
  7. get_recommendations: Personalized suggestions based on your playtime

Data Source

The server reads from steam_library.csv which should contain columns:

  • appid, name, maturity_rating, review_summary, review_score, total_reviews
  • positive_reviews, negative_reviews, genres, categories, developers, publishers
  • release_date, playtime_forever, playtime_2weeks, rtime_last_played

Troubleshooting

  1. Server not connecting: Check that the path in your Claude Desktop config is correct
  2. CSV not found: Ensure steam_library.csv is in the same directory as the server script
  3. Permission errors: Make sure Python has read access to the CSV file
  4. Port conflicts: The server uses port 8000 by default - ensure it's available

Technical Details

  • Built using the official MCP Python SDK
  • Uses FastAPI for web transport with SSE (Server-Sent Events)
  • Pandas for efficient CSV data processing
  • Runs on all network interfaces (0.0.0.0) for flexibility

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured