GamePick MCP
Helps users choose which Steam games to play or buy by analyzing their library, playtime, discounts, and reviews.
README
GamePick MCP (게임픽 MCP)
Steam 라이브러리, 플레이타임, 할인 후보, 리뷰 데이터를 활용해 사용자가 지금 플레이할 게임과 구매할 게임을 고르도록 돕는 개인화 게임 큐레이터 MCP 서버입니다.
핵심 보안 설계
이 버전은 무상태(stateless) MCP 서버입니다.
- Steam API Key를 코드에 하드코딩하지 않습니다.
- 사용자의 Steam API Key를 서버 파일, DB,
.env에 저장하지 않습니다. - 개인 Steam 라이브러리 접근이 필요한 Tool은
steam_api_key와player를 입력값으로 받습니다. - 같은 대화에서 반복 입력을 줄이는 역할은 서버가 아니라
GAMEPICK_SKILL.md의 스킬 지침이 담당합니다. - 서버 환경변수
STEAM_API_KEY도 선택적으로 지원하지만, GitHub에는 절대 실제 Key를 올리지 않습니다.
Skill 기반 사용 흐름
GAMEPICK_SKILL.md에는 다음 지침이 들어 있습니다.
- 사용자가 같은 대화 안에서 Steam API Key를 제공했다면 이후 GamePick MCP Tool 호출에
steam_api_key로 함께 전달합니다. - 사용자가 같은 대화 안에서 SteamID64 또는 Steam 프로필명을 제공했다면 이후 Tool 호출에
player로 함께 전달합니다. - 둘 중 하나가 없으면 먼저 사용자에게 요청합니다.
- Steam API Key 전체를 응답에 다시 노출하지 않습니다.
- 서버에 API Key가 저장되었다고 말하지 않습니다. 해당 요청 처리에만 사용된다고 안내합니다.
PlayMCP 제출 양식 대응
모든 Tool에는 다음 항목을 명시했습니다.
description: 모든 설명에 서비스명GamePick MCP(게임픽 MCP)포함annotations: 모든 Tool에title,readOnlyHint,destructiveHint,idempotentHint,openWorldHint정의
Tools
| Tool | 설명 | API Key 필요 |
|---|---|---|
get_gamepick_skill_instructions |
GamePick MCP(게임픽 MCP)의 스킬 사용법과 무상태 보안 원칙을 안내합니다. | 아니오 |
resolve_steam_player |
GamePick MCP(게임픽 MCP)가 SteamID64 또는 프로필명/Vanity URL을 SteamID64로 확인합니다. 프로필명 변환에는 Key가 필요합니다. | 조건부 |
get_owned_games |
GamePick MCP(게임픽 MCP)가 Steam ID 또는 프로필명 기준으로 보유 게임과 플레이타임을 조회합니다. | 예 |
analyze_library |
GamePick MCP(게임픽 MCP)가 라이브러리 플레이타임을 분석해 많이 한 게임, 미플레이 게임, 방치 게임을 정리합니다. | 예 |
get_app_details |
GamePick MCP(게임픽 MCP)가 Steam appid로 상점 상세 정보, 가격, 할인율, 장르를 조회합니다. | 아니오 |
get_featured_discounted_games |
GamePick MCP(게임픽 MCP)가 Steam featured 목록에서 할인 게임 후보를 가져옵니다. | 아니오 |
recommend_discounted_games_for_user |
GamePick MCP(게임픽 MCP)가 사용자의 보유 게임을 제외하고 할인 게임을 추천합니다. | 예 |
get_game_reviews |
GamePick MCP(게임픽 MCP)가 Steam 앱 리뷰와 리뷰 요약 통계를 가져옵니다. | 아니오 |
search_store_games |
GamePick MCP(게임픽 MCP)가 Steam Store 검색 결과를 가져와 경쟁작 분석 후보를 찾습니다. | 아니오 |
개인화 Tool 호출 예시
{
"steam_api_key": "사용자 Steam Web API Key",
"player": "SteamID64 또는 Steam 프로필명"
}
API Key 또는 player가 없으면 Tool은 실행을 거부하고 필요한 입력을 요청합니다.
실행
docker build -t gamepick-mcp .
docker run --rm -p 8000:8000 gamepick-mcp
기본 MCP 엔드포인트:
http://localhost:8000/mcp
서버 환경변수 방식도 선택적으로 지원합니다. 이 경우 steam_api_key 입력이 없으면 서버 환경변수 값을 사용합니다.
docker run --rm -p 8000:8000 -e STEAM_API_KEY="your_steam_web_api_key_here" gamepick-mcp
로컬 실행
Windows:
python -m venv .venv
.venv\Scripts\activate
pip install -r requirements.txt
python server.py
macOS/Linux:
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
python server.py
환경변수
| 이름 | 기본값 | 설명 |
|---|---|---|
STEAM_API_KEY |
없음 | 선택 사항. 입력값 steam_api_key가 없을 때만 fallback으로 사용합니다. |
PORT |
8000 |
HTTP 서버 포트 |
의존성
requirements.txt는 제출용 Dockerfile 형식에 맞춰 아래 3개만 사용합니다.
fastmcp
uvicorn
starlette
주의사항
- Steam 라이브러리 조회는 사용자의 Steam 프로필 게임 세부 정보 공개 설정에 영향을 받습니다.
- 할인 정보는 Steam Store 공개 featured/store 엔드포인트 기반이므로 전체 Steam 할인 목록 전수조사를 보장하지 않습니다.
- GitHub에는
.env를 올리지 말고.env.example만 올리세요. - 공개 서버에서 사용자별 API Key를 서버에 저장하지 않도록 설계했습니다.
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。