Steam
Steam Web API: profiles, owned games, achievements, app news, player counts.
Installation
npx mcp-server-steamAsk AI about Steam
Powered by Claude ยท Grounded in docs
I know everything about Steam. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Reviews
Documentation
mcp-server-steam
AI ๋ฅผ ํ์ฉํด ์์ฑ๋ ํ๋ก์ ํธ์ ๋๋ค.
FastMCP๋ฅผ ์ฌ์ฉํ์ฌ Steam Web API์ ํตํฉํ๋ ์ข ํฉ MCP(Model Context Protocol) ์๋ฒ์ ๋๋ค.
์ฃผ์ ๊ธฐ๋ฅ
-
์ฌ์ฉ์ ํ๋กํ ๋ฐ ํต๊ณ
- ํ๋กํ ์ ๋ณด (๋๋ค์, ์๋ฐํ, ๊ณ์ ์์ธ)
- ์น๊ตฌ ๋ชฉ๋ก
- ์์ ๊ฒ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ
- ํ๋ ์ด์๊ฐ ๋ฐ์ดํฐ
- ์ต๊ทผ ํ๋ ์ดํ ๊ฒ์
- Steam ๋ ๋ฒจ
- ์ ์ ์งํ์ํฉ
-
๊ฒ์ ์ ๋ณด ๋ฐ ์คํ ์ด
- ๊ฒ์ ์์ธ ์ ๋ณด ๋ฐ ๋ฉํ๋ฐ์ดํฐ
- ์คํ ์ด ๊ฐ๊ฒฉ ๋ฐ ํ ์ธ ์ ๋ณด
- ๋ด์ค ๋ฐ ์ ๋ฐ์ดํธ
- ๊ฒ์ ๊ฒ์
- ํน์ ๊ฒ์์ ์ ์ ๋ฐ์ดํฐ
-
์ปค๋ฎค๋ํฐ ๊ธฐ๋ฅ
- Steam ์ํฌ์ต ์์ดํ
- ์ฌ์ฉ์ ๋ฆฌ๋ทฐ
- VAC ๋ฐ ๊ฒ์ ๋ฐด ์ํ
PyPI์์ ์ค์น
PyPI์ ๊ฒ์๋ ํ ๋ค์๊ณผ ๊ฐ์ด ์ค์นํ ์ ์์ต๋๋ค:
pip install mcp-server-steam
์ค์น ํ ๋ค์๊ณผ ๊ฐ์ด ์คํํฉ๋๋ค:
mcp-server-steam
์์ค์์ ์ค์น
๋๋ ์์ค ์ฝ๋์์ ์ง์ ์ค์นํฉ๋๋ค:
- ์ ์ฅ์ ํด๋ก :
git clone <repository-url>
cd mcp-server-steam
- uv๋ก ์์กด์ฑ ์ค์น:
uv sync
- ํจํค์ง ์ค์น:
uv pip install -e .
-
Steam Web API ํค ๋ฐ๊ธ:
- https://steamcommunity.com/dev/apikey ๋ฐฉ๋ฌธ
- Steam ๊ณ์ ์ผ๋ก ๋ก๊ทธ์ธ
- ๋๋ฉ์ธ ๋ฑ๋ก ํ API ํค ๋ณต์ฌ
-
ํ๊ฒฝ ์ค์ :
์ค์: .env ํ์ผ์ API ํค๋ฅผ ์ค์ ํด์ผ ํฉ๋๋ค.
# .env.example์ ๋ณต์ฌํด์ .env ํ์ผ ์์ฑ
cp .env.example .env
# .env ํ์ผ์ ํ
์คํธ ํธ์ง๊ธฐ๋ก ์ด์ด์ STEAM_API_KEY ์ถ๊ฐ
# ์: STEAM_API_KEY=YOUR_API_KEY_HERE
# (์ ํ์ฌํญ) Steam ID๋ฅผ ๊ธฐ๋ณธ๊ฐ์ผ๋ก ์ค์ ํ๋ ค๋ฉด:
# STEAM_USER_ID=76561198XXXXXXXXXXX
API ํค ๋ฐ๊ธ: https://steamcommunity.com/dev/apikey
์ฌ์ฉ ๋ฐฉ๋ฒ
์๋ฒ ์คํ
# PyPI์์ ์ค์นํ ๊ฒฝ์ฐ
mcp-server-steam
# ์์ค์์ ๊ฐ๋ฐ ์ค์ธ ๊ฒฝ์ฐ
uv run python -m mcp_server_steam
์๋ฒ๊ฐ STDIO ์ ์ก ๋ฐฉ์์ผ๋ก ์์๋๋ฉฐ, Claude Desktop ๊ฐ์ MCP ํด๋ผ์ด์ธํธ์์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
Claude Desktop Configuration
๐ ์์ธํ ์ค์ ๊ฐ์ด๋: CLAUDE_CONFIG.md
PyPI์์ ์ค์นํ ๊ฒฝ์ฐ (๊ถ์ฅ)
Claude Desktop ์ค์ ํ์ผ์ ์ถ๊ฐ:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json
Linux: ~/.config/Claude/claude_desktop_config.json
{
"mcpServers": {
"steam": {
"command": "uvx",
"args": ["mcp-server-steam"],
"env": {
"STEAM_API_KEY": "${STEAM_API_KEY}",
"STEAM_USER_ID": "${STEAM_USER_ID}"
}
}
}
}
๋๋ pip์ผ๋ก ์ค์นํ ๊ฒฝ์ฐ:
{
"mcpServers": {
"steam": {
"command": "mcp-server-steam",
"env": {
"STEAM_API_KEY": "${STEAM_API_KEY}",
"STEAM_USER_ID": "${STEAM_USER_ID}"
}
}
}
}
์์ค์์ ๊ฐ๋ฐํ๋ ๊ฒฝ์ฐ
{
"mcpServers": {
"steam": {
"command": "uv",
"args": ["run", "python", "-m", "mcp_server_steam"],
"cwd": "/path/to/mcp-server-steam",
"env": {
"STEAM_API_KEY": "${STEAM_API_KEY}",
"STEAM_USER_ID": "${STEAM_USER_ID}"
}
}
}
}
ํ๊ฒฝ ๋ณ์ ์ฌ์ฉ (๊ถ์ฅ)
API ํค๋ฅผ ์ง์ ์ ๋ ฅํ๋ ๋์ ํ๊ฒฝ ๋ณ์๋ฅผ ์ฌ์ฉํ์ธ์:
# ~/.zshrc ๋๋ ~/.zprofile์ ์ถ๊ฐ
export STEAM_API_KEY="your_steam_api_key_here"
์ค์ ์์๋:
"env": {
"STEAM_API_KEY": "${STEAM_API_KEY}"
}
Claude Desktop ์ฌ์์
์ค์ ์ ์ ์ฉํ๋ ค๋ฉด Claude Desktop์ ์์ ํ ์ข ๋ฃํ๋ค๊ฐ ๋ค์ ์์ํ์ธ์.
MCP ํด๋ผ์ด์ธํธ ์ค์
์ผ๋ฐ์ ์ผ๋ก๋ PyPI ๋ฒ์ ์ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข์ต๋๋ค:
{
"mcpServers": {
"steam": {
"command": "uvx",
"args": ["mcp-server-steam"],
"env": {
"STEAM_API_KEY": "${STEAM_API_KEY}",
"STEAM_USER_ID": "${STEAM_USER_ID}"
}
}
}
}
FastMCP CLI๋ก ํ ์คํธ
# ์ฌ์ฉ ๊ฐ๋ฅํ ๋๊ตฌ ๋ชฉ๋ก ๋ณด๊ธฐ
uv run fastmcp list src/mcp_server_steam/server.py
# ๋๊ตฌ ํธ์ถ ํ
์คํธ
uv run fastmcp call src/mcp_server_steam/server.py get_user_profile steam_id=76561198000000000
์ฌ์ฉ ๊ฐ๋ฅํ ๋๊ตฌ
ํ๋กํ ๋๊ตฌ
get_user_profile- Steam ์ฌ์ฉ์ ํ๋กํ ์กฐํget_friends_list- ์น๊ตฌ ๋ชฉ๋ก ์กฐํget_owned_games- ์์ ํ ๋ชจ๋ ๊ฒ์ ์กฐํget_recently_played_games- ์ต๊ทผ ํ๋ ์ดํ ๊ฒ์ ์กฐํget_steam_level- Steam ๋ ๋ฒจ ์กฐํget_player_achievements- ํน์ ๊ฒ์์ ์ ์ ์งํ์ํฉ ์กฐํ
๊ฒ์ ๋๊ตฌ
get_game_details- ์คํ ์ด์์ ๊ฒ์ ์ ๋ณด ์กฐํget_game_news- ๊ฒ์ ๋ด์ค ๋ฐ ์ ๋ฐ์ดํธ ์กฐํget_global_achievement_percentages- ์ ์ฒด ์ ์ ํต๊ณ ์กฐํsearch_games- Steam์์ ๊ฒ์ ๊ฒ์get_game_schema- ์ ์ ๋ฐ ํต๊ณ ์คํค๋ง ์กฐํ
์ปค๋ฎค๋ํฐ ๋๊ตฌ
get_workshop_items- Steam ์ํฌ์ต ์์ดํ ์กฐํget_workshop_item_details- ์ํฌ์ต ์์ดํ ์์ธ ์ ๋ณดget_user_reviews- ๊ฒ์ ์ฌ์ฉ์ ๋ฆฌ๋ทฐ ์กฐํget_player_bans- VAC ๋ฐ ๊ฒ์ ๋ฐด ์ํ ์กฐํ
์ ํธ๋ฆฌํฐ ๋๊ตฌ
resolve_vanity_url- Vanity URL์ Steam ID๋ก ๋ณํ
๋ฆฌ์์ค
steam://config- ์๋ฒ ์ค์ steam://supported-games- ์ผ๋ฐ์ ์ธ ๊ฒ์ App ID ๋ชฉ๋ก
Steam ID vs App ID
- Steam ID (SteamID): 64๋นํธ ์ฌ์ฉ์ ๊ณ์ ID (์: 76561198000000000)
- App ID (AppID): Steam ์คํ ์ด์์์ ๊ฒ์ ์๋ณ์ (์: CS2์ ๊ฒฝ์ฐ 730)
์ปค์คํ
ํ๋กํ URL์ Steam ID๋ก ๋ณํํ๋ ค๋ฉด resolve_vanity_url์ ์ฌ์ฉํ์ธ์.
์๋ ์ ํ (Rate Limiting)
์๋ฒ๋ Steam API ์ ํ์ ์ค์ํ๊ธฐ ์ํด ์๋ ์ ํ์ ๊ตฌํํฉ๋๋ค:
- ๋ถ๋น 100ํ ์์ฒญ
- ์ค๋ฅ ๋ฐ์ ์ ์๋ ์ง์ ๋ฐฑ์คํ
- ์๋ ์ ํ ์๋ต์ ๋ํ ์ ์ ํ ์๋ฌ ์ฒ๋ฆฌ
ํ๋ก์ ํธ ๊ตฌ์กฐ
mcp-server-steam/
โโโ src/
โ โโโ mcp_server_steam/
โ โโโ __init__.py
โ โโโ __main__.py # ๋ฉ์ธ ์ง์
์
โ โโโ server.py # MCP ์๋ฒ
โ โโโ steam_client.py # Steam API ํด๋ผ์ด์ธํธ
โ โโโ config.py # ์ค์
โ โโโ tools/ # ๋๊ตฌ ๋ชจ๋
โ โโโ __init__.py
โ โโโ profile.py # ์ฌ์ฉ์ ํ๋กํ ๋๊ตฌ
โ โโโ games.py # ๊ฒ์ ์ ๋ณด ๋๊ตฌ
โ โโโ community.py # ์ปค๋ฎค๋ํฐ ๋๊ตฌ
โโโ pyproject.toml # ํ๋ก์ ํธ ์ค์ ๋ฐ ์์กด์ฑ
โโโ README.md # ์ด ํ์ผ
โโโ .env # API ํค (git์ ํฌํจ๋์ง ์์)
โโโ .env.example # ํ๊ฒฝ๋ณ์ ํ
ํ๋ฆฟ
์๋ฌ ์ฒ๋ฆฌ
์๋ฒ๋ ๋ค์ ๊ฒฝ์ฐ์ ๋ช ํํ ์๋ฌ ๋ฉ์์ง๋ฅผ ์ ๊ณตํฉ๋๋ค:
- ์ ํจํ์ง ์์ Steam ID ๋๋ App ID
- API ํค ๋๋ฝ
- ์๋ ์ ํ ์ด๊ณผ
- ๋คํธ์ํฌ ์ค๋ฅ
- Steam API ์ค๋ฅ
AI ์ฌ์ฉ ์์
์์ 1: ์ฌ์ฉ์ ํ๋กํ ์กฐํ
์ฌ์ฉ์: "๋ด Steam ํ๋กํ ์กฐํํด์ค"
AI: resolve_vanity_url์ ํธ์ถํ์ฌ vanity URL์ Steam ID๋ก ๋ณํ
AI: get_user_profile์ ํธ์ถํ์ฌ ํ๋กํ ์ ๋ณด ์กฐํ
์์ 2: ๊ฒ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ถ์
์ฌ์ฉ์: "๋ด ๊ฒ์ ๋ชฉ๋ก ๋ณด์ฌ์ค"
AI: get_user_profile๋ก Steam ID ํ๋
AI: get_owned_games๋ก ์์ ๊ฒ์ ๋ชฉ๋ก ์กฐํ
AI: ํ๋ ์ดํ์ ๊ธฐ์ค์ผ๋ก ์ ๋ ฌํ๊ณ ์์ ๊ฒ์ ์์ฝ
์์ 3: ๊ฒ์ ๊ฒ์ ๋ฐ ์์ธ ์ ๋ณด
์ฌ์ฉ์: "์๋ ๋ง GO ์ ๋ณด ์๋ ค์ค"
AI: search_games๋ก "ELDEN RING" ๊ฒ์
AI: get_game_details๋ก ์์ธ ์ ๋ณด, ๊ฐ๊ฒฉ, ์ฅ๋ฅด ์กฐํ
์์ 4: ์ ์ ํ์ธ
์ฌ์ฉ์: "๋ด ์ผ์์ ์ ๊ฒ์ ์
์ ์ด ์ด๋ป๊ฒ ๋ผ?"
AI: get_owned_games๋ก ๊ฒ์ ๋ชฉ๋ก ํ์ธ
AI: get_player_achievements๋ก ์ผ์์ ์ ์
์ ์กฐํ
AI: get_global_achievement_percentages๋ก ์ ์ฒด ํ๋ ์ด์ด ๋๋น ๋น๊ต
์์ 5: ์ํฌ์ต ๋ชจ๋ ์ฐพ๊ธฐ
์ฌ์ฉ์: "์ค์นด์ด๋ฆผ ๋ชจ๋ ์ถ์ฒํด์ค"
AI: search_games๋ก ์คํํ๋ ์ค์นด์ด๋ฆผ(Skyrim, App ID: 72850) ๊ฒ์
AI: get_workshop_items๋ก ์ธ๊ธฐ ๋ชจ๋ ๋ชฉ๋ก ์กฐํ
AI: get_workshop_item_details๋ก ํน์ ๋ชจ๋ ์์ธ ์ ๋ณด ํ์ธ
AI๋ฅผ ์ํ ํ
- ๋๊ตฌ ์ฌ์ฉ ์์:
resolve_vanity_urlโget_user_profileโ ๋ค๋ฅธ ๋๊ตฌ๋ค - ๋ฐ์ดํฐ ํจ์จ์ฑ:
include_app_info=True๋ก ํ ๋ฒ์ ๊ฒ์ ์ ๋ณด๊น์ง ๊ฐ์ ธ์ค๊ธฐ - ์ค๋ฅ ์ฒ๋ฆฌ: Steam ID๊ฐ ์ ํจํ์ง ์์ผ๋ฉด vanity URL ๋ณํ ๋จผ์ ์๋
- ์ธ์ด ์ค์ : ํ๊ตญ ์ฌ์ฉ์๋ฅผ ์ํ
language="korean"๋๋language="english"ํ๋ผ๋ฏธํฐ ํ์ฉ
๊ธฐ์ฌ
๊ธฐ์ฌ๋ฅผ ํ์ํฉ๋๋ค! ์ด์๋ ํ ๋ฆฌํ์คํธ๋ฅผ ์์ ๋กญ๊ฒ ์ ์ถํด ์ฃผ์ธ์.
์ฐธ๊ณ ์๋ฃ
๋ผ์ด์ ์ค
MIT License - ์์ธํ ๋ด์ฉ์ LICENSE ํ์ผ์ ์ฐธ์กฐํ์ธ์
