Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
제작자가 쓴 설명(영어 원문)
Read-only Steam: friends, games, achievements, sales, plus game recommendations and co-op nights.
이 세 가지는 절대 하나의 점수로 합치지 않아요. 의견, 측정, 인기는 서로 다른 것이니까요.
이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.
쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.
STEAM_API_KEY, STEAM_USER, STEAM_MCP_TOOLS비밀로 표시된 값은 내 계정의 열쇠예요. 절대 다른 사람과 공유하거나 채팅에 붙여 넣지 마세요.
필요한 것
어떤 앱을 쓰세요?
위에서 앱을 고르세요. 기억해 두었다가 다음부터는 버튼에 “…에 설치”라고 표시해요.
링크는 제작자의 파일로 바로 연결돼요. 우리가 보관하거나 다시 패키징하지 않아요. 파일을 열면 Claude Desktop이 설치해요.
터미널에서 이 명령어를 실행하세요
claude mcp add steam --env STEAM_API_KEY=your-value --env STEAM_USER=your-value --env STEAM_MCP_TOOLS=your-value -- uvx steam-mcp실행하기 전에 빈 값을 채워 주세요.
프로젝트의 .cursor/mcp.json 또는 ~/.cursor/mcp.json에 붙여 넣으세요
{
"mcpServers": {
"steam": {
"command": "uvx",
"args": [
"steam-mcp"
],
"env": {
"STEAM_API_KEY": "your-value",
"STEAM_USER": "your-value",
"STEAM_MCP_TOOLS": "your-value"
}
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
프로젝트의 .vscode/mcp.json에 붙여 넣으세요
{
"servers": {
"steam": {
"type": "stdio",
"command": "uvx",
"args": [
"steam-mcp"
],
"env": {
"STEAM_API_KEY": "your-value",
"STEAM_USER": "your-value",
"STEAM_MCP_TOOLS": "your-value"
}
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
이 서버는 내 컴퓨터에서 실행되는데, ChatGPT는 인터넷에 있는 서버에만 연결할 수 있어요. 다른 앱을 고르세요.
선택한 앱은 이 기기의 쿠키에만 저장돼요. 계정은 필요 없어요.
STEAM_USER envSTEAM_MCP_TOOLS env이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.
내 컴퓨터에서 실행돼요. 설치하면 AI 앱에 도구 목록이 나타나요.
누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 7일 점검
레지스트리 이름이 GitHub 계정 Sarg338 기준으로 확인되었고, 이 계정이 저장소를 소유하고 있어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
내 컴퓨터에서 실행되는 서버라 인터넷 엔드포인트가 없어요
내 컴퓨터에서 실행되며, 대신 로컬 설정을 사용해요
내 컴퓨터에서 실행돼요. 도구 목록은 인터넷 엔드포인트가 있는 서버에서만 읽을 수 있어요
레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.
해당하는 기본 점검 1개 중 1개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.
입력해야 할 값: STEAM_API_KEY
내 컴퓨터에서 실행돼요. AI 앱이 필요할 때 실행하고, 데이터는 제작자의 서버를 거치지 않아요(서버 자체가 온라인 서비스를 호출하는 경우는 제외).
GitHub 저장소는 마지막으로 – 변경됐고, 최신 버전(1.19.0)은 44일 전 레지스트리에 올라왔어요.
Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. 내 컴퓨터에 Python (uv), MCPB도 있어야 해요.
같은 카테고리에는: Spec Driven Development, Remote Desktop Commander, OpenTakeoff
같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.
카드 보는 법:★ GitHub 스타i세 기둥: 리뷰 · 점검 · 사용 정도i업데이트 = 최신 버전을 레지스트리에 공개한 날i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Construction takeoff for AI agents: load plans, set scale, measure, count, export with provenance.
제작자의 저장소에서 쓰인 그대로 가져왔어요. PopNx MCP가 검토하거나 보증한 내용이 아니에요. HTML, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.
A read-only Model Context Protocol server for the public Steam Web API and storefront — 41 tools, 5 prompts, and 2 resources that let any MCP client (Claude Desktop, Claude Code, Cursor, …) answer questions about Steam: your friends, games, playtime, and achievements, plus account-independent things like sales, reviews, live player counts, Steam Deck compatibility, discovery, recommendations, and co-op planning.
Read-only · official Steam APIs only · open source. Nobody logs in, and the server never writes, trades, posts, launches games, or makes purchases.
Install uv, then:
Claude Code
claude mcp add steam -- uvx steam-mcp
That's the whole setup. 19 of the 41 tools work with no credential at all — anything about the store or a game itself:
*"Is Baldur's Gate 3 worth buying, and how are its recent reviews trending?"*
*"What co-op games are on sale under £20 right now?"*
*"How many people are playing Helldivers 2 this minute?"*
*"Will Hades II run properly on my Steam Deck?"*
The three game-finders (steam_discover, steam_should_i_buy, steam_recommend) work without a key too, as long as you don't personalize them.
A free Steam Web API key (a minute to get) unlocks the other 22 — the ones that read a *specific account*: library, playtime, friends, achievements, wishlist, inventory. Add STEAM_USER too and "my"/"I" default to you, so you never have to paste a SteamID:
claude mcp add steam --env STEAM_API_KEY=YOUR_KEY --env STEAM_USER=your_steam_name -- uvx steam-mcp
Tip: this defaults to the current project. Add
--scope useronly if you want
Steam in *every* project — that keeps its tools in context everywhere, so prefer
per-project scope unless Steam is cross-cutting for you.
Claude Desktop — download steam-mcp.mcpb from the latest release and open it (Settings → Extensions). Both fields are optional; leave them blank for the keyless tools and fill them in later.
Cursor / Cline / Windsurf and the manual pip setup are under Setup below.
Without a key, the account tools are still listed but marked
[unavailable: needs STEAM_API_KEY], so your assistant knows to reach for a keyless
tool instead of failing at one it can't use.
Account / profile (needs a public profile; set STEAM_USER and "my"/"I" default to you — no SteamID needed):
Account-independent (works for any game, no SteamID needed):
| Tool | What it returns | Needs key? |
|---|---|---|
steam_resolve_vanity_url | Vanity name / profile URL → SteamID64 | yes |
steam_get_player_summary | Status (Online/Away/In-Game…), current game, for 1–100 users | yes |
steam_get_friend_list | Friends enriched with name + live status | yes |
steam_find_friends_who_own | Which friends own (or are playing) a game — "who can I play X with" | yes |
steam_get_user_groups | The Steam groups/clans a user is in (name, URL, member count) | yes |
steam_plan_coop_night | Co-op games the host + friends all own (ranked by owners) — or mode="new" for fresh co-op games none of them own yet; with who's online now | yes |
steam_get_owned_games | Owned games with total/recent hours (sortable) | yes |
steam_analyze_library | Backlog, playtime distribution, abandoned games across a whole library | yes |
steam_get_recently_played_games | Last-2-weeks playtime | yes |
steam_get_steam_level | Steam community level | yes |
steam_get_player_bans | VAC / game / community / economy bans | yes |
steam_get_player_achievements | Per-game unlocked vs locked achievements | yes |
steam_get_game_schema | A game's achievement definitions (names, descriptions, hidden flag) | yes |
steam_get_global_achievement_percentages | Achievement rarity (global %) | no |
steam_get_user_game_stats | A user's in-game stats (kills, wins, distance…) for a game | yes |
steam_get_rarest_unlocks | A player's rarest achievement unlocks in a game (by global rarity) | yes |
steam_search_apps | Game title → appid (+ price) | no |
steam_discover | Find/recommend games by tag, price, sale, platform, release window ("last N days") — optionally personalized to a user's taste (excludes games they own) | no* |
steam_should_i_buy | Buying brief — price, lifetime + recent reviews (trend), tags, Metacritic, and your taste match | no* |
steam_recommend | Recommend games like a seed game or your taste, with the shared tags as the "why" | no* |
steam_get_app_details | Full store details — play modes/co-op, controller, DLC, languages, requirements, Metacritic, Steam Deck | no |
steam_get_deck_compatibility | Steam Deck rating (Verified/Playable/Unsupported) + the per-criterion test results | no |
steam_get_dlc | A game's DLC, with live prices and what's on sale | no |
steam_get_app_regional_pricing | A game's price across regions (each in local currency) | no |
steam_get_workshop_item | Workshop item metadata (game, tags, subscribers, favorites, views) | no |
steam_get_app_tags | A game's top community tags (Souls-like, Roguelike, Cozy…) | no |
steam_get_app_reviews | Lifetime verdict, +/- counts, sample reviews; optional recent (last-N-days) score via review_filter='recent' | no |
steam_analyze_game | One-call brief on a game: price, all-time and 30-day reviews, players now, Deck, tags, the latest update's effect on reviews, and news | no |
steam_compare_games | Compare 2-5 games side by side: price, reviews and their trend, players now, Steam Deck, co-op, tags | no |
steam_get_update_impact | Did an update change the reviews? Review score in the days before vs after each recent patch | no |
steam_analyze_app_reviews | Analyze thousands of reviews: sentiment over time, by language and playtime, Steam Deck, key activations vs Steam purchases, refunds, developer replies | no |
steam_get_featured_specials | Games currently on sale (regional) | no |
steam_get_store_highlights | Top sellers, new releases, or coming soon | no |
steam_get_wishlist | A user's wishlist, with live prices + what's on sale | yes |
steam_get_inventory | A user's inventory — game items or Steam Community items (cards, emoticons…), with tradable/marketable flags | yes† |
steam_get_market_price | Community Market price for an item (lowest/median/24h volume) + type/rarity + CS2 condition | no |
steam_get_player_badges | Badges + the XP breakdown behind a Steam level | yes |
steam_get_package_details | Package/bundle price + included games | no |
steam_compare_players | Shared games between two users, with playtime | yes |
steam_get_current_players | Live concurrent player count | no |
steam_get_app_news | Recent news / patch notes | no |
Every tool supports response_format: "markdown" (default) or "json", and all are annotated readOnlyHint: true. Prefer the composite tools (steam_should_i_buy, steam_recommend, steam_discover, steam_plan_coop_night) over chaining several calls, and ask for json only when you need to parse fields. Tools that read localized text accept a language parameter — a Steam language name like french or schinese (default english).
\*
steam_discover,steam_should_i_buy, andsteam_recommendneed no key for
the store data; their personalization (passing a
steamidto use a user's
library/taste) requires a key and a public profile.
†
steam_get_inventoryreads a keyless endpoint, but it still has to know *whose*
inventory — and turning a vanity name (or
STEAM_USER) into a SteamID64 is itself a
keyed call. Pass a raw 17-digit SteamID64 and it works with no key.
Beyond tools, the server ships prompts (guided one-click flows that orchestrate the tools) and resources (reference Steam entities by URI):
what_should_i_play, is_it_worth_buying, plan_game_night, steam_deals, game_overview.steam://app/{appid} (store details) and steam://user/{steamid} (profile + live status).Recent reviews:
steam_get_app_reviewswithreview_filter='recent'asks
Steam for the exact review count and score of the last
day_rangedays (default
30), the same numbers as the store page's "Recent Reviews" row. If Steam refuses
that request it falls back to counting the newest reviews, up to
recent_max_reviews, and marks the resultsampled: true.
Whose reviews count: by default both scores count what the store page
counts: Steam purchases only for a paid game (key activations are left out) and
everyone for a free game.
purchase_type='all'or'steam'forces either.
Market prices:
steam_get_market_priceuses Steam's Community Market
endpoints, which are undocumented and tightly rate-limited. Results are cached
briefly; an item with no current listings reports its price as unavailable.
Skip this if you only want the 19 keyless tools — the server runs fine without a key and the account tools simply advertise themselves as unavailable.
To unlock the account tools, visit https://steamcommunity.com/dev/apikey, sign in, register a domain (any domain you control works; localhost is commonly used for personal keys), and copy the key. Usage is governed by the Steam Web API Terms of Use.
The published package needs no checkout (Python 3.10+):
uvx steam-mcp # zero-install via uv (recommended)
pip install steam-mcp # run as: python -m steam_mcp.server
Both MCP Python SDK majors work (mcp>=1.28). On the v2 SDK the server speaks spec revision 2026-07-28 — stateless, no initialize handshake — advertises cache hints on its tool/prompt/resource listings, and can ask you which Steam account is yours when STEAM_USER isn't set (once
앞부분만 보여 드려요. 나머지는 저장소에서 읽어 보세요