Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
제작자가 쓴 설명(영어 원문)
游戏文本本地化 MCP:多格式解析、批量翻译、回写
이 세 가지는 절대 하나의 점수로 합치지 않아요. 의견, 측정, 인기는 서로 다른 것이니까요.
이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.
쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.
필요한 것
어떤 앱을 쓰세요?
위에서 앱을 고르세요. 기억해 두었다가 다음부터는 버튼에 “…에 설치”라고 표시해요.
Claude Desktop → Settings → Developer → Edit Config를 열고 claude_desktop_config.json에 이 내용을 붙여 넣으세요
{
"mcpServers": {
"game-translator": {
"command": "uvx",
"args": [
"game-translator-mcp"
]
}
}
}터미널에서 이 명령어를 실행하세요
claude mcp add game-translator -- uvx game-translator-mcp프로젝트의 .cursor/mcp.json 또는 ~/.cursor/mcp.json에 붙여 넣으세요
{
"mcpServers": {
"game-translator": {
"command": "uvx",
"args": [
"game-translator-mcp"
]
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
프로젝트의 .vscode/mcp.json에 붙여 넣으세요
{
"servers": {
"game-translator": {
"type": "stdio",
"command": "uvx",
"args": [
"game-translator-mcp"
]
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
이 서버는 내 컴퓨터에서 실행되는데, ChatGPT는 인터넷에 있는 서버에만 연결할 수 있어요. 다른 앱을 고르세요.
선택한 앱은 이 기기의 쿠키에만 저장돼요. 계정은 필요 없어요.
이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.
내 컴퓨터에서 실행돼요. 설치하면 AI 앱에 도구 목록이 나타나요.
누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 6일 점검
레지스트리 이름이 GitHub 계정 dcd887 기준으로 확인되었고, 이 계정이 저장소를 소유하고 있어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
내 컴퓨터에서 실행되는 서버라 인터넷 엔드포인트가 없어요
내 컴퓨터에서 실행되며, 대신 로컬 설정을 사용해요
내 컴퓨터에서 실행돼요. 도구 목록은 인터넷 엔드포인트가 있는 서버에서만 읽을 수 있어요
레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.
해당하는 기본 점검 1개 중 1개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.
레지스트리에 필수 키가 나와 있지 않아요. 다만 처음 쓸 때 로그인을 요구하는 서버도 있어요.
내 컴퓨터에서 실행돼요. AI 앱이 필요할 때 실행하고, 데이터는 제작자의 서버를 거치지 않아요(서버 자체가 온라인 서비스를 호출하는 경우는 제외).
GitHub 저장소는 마지막으로 – 변경됐고, 최신 버전(0.2.1)은 14일 전 레지스트리에 올라왔어요.
Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. 내 컴퓨터에 Python (uv)도 있어야 해요.
같은 카테고리에는: Spec Driven Development, Remote Desktop Commander, Fomu MCP
같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.
카드 보는 법:★ 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.
Kenya government form guides: checklists, draft letters, eCitizen, Huduma, timelines. Sample data.
제작자의 저장소에서 쓰인 그대로 가져왔어요. PopNx MCP가 검토하거나 보증한 내용이 아니에요. HTML, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.
mcp-name: io.github.dcd887/game-translator
通用游戏汉化 MCP 工具 —— 扫描游戏目录,调用 AI 翻译,回写中文文本。
定位:一个可以被 AI Agent 调用的「汉化能力」,而非独立的汉化软件。可与 mc-translator-mcp、mc-pack-builder-mcp 等工具协同工作。
本工具面向文本以明文文件存储的游戏/模组进行汉化,属于"文本汉化"而非"资源包注入"。
| 适用范围 | 说明 |
|---|---|
| 支持的文本格式 | .json / .lang / .txt / .ini / .xml / .yaml / .sii / .tsv / .vdf(UTF-8 / UTF-16 自动 BOM 检测)/ .csv / .properties / .po / .strings / .resx / .xliff / .rpy / .srt / .ass |
| 典型的适用对象 | Minecraft 模组、欧洲卡车模拟器 2、Source 引擎游戏(Portal 2 / HL2 / L4D 的 VDF)、Ren'Py 视觉小说(galgame)、字幕(SRT/ASS)、gettext(.po)、Unity 明文本地化表、Steam 明文配置文件 |
| 输入 | 游戏根目录或任意文本文件目录 |
| 输出 | 独立汉化目录(copy 模式),不改动原游戏文件 |
📚 想知道你的游戏在被支持范围内吗? 先看这里 → [SUPPORTED_GAMES.md](SUPPORTED_GAMES.md)(含已实测游戏、引擎→格式速查表、不支持清单)。
快速判断口诀:文案只要是明文文件就能汉化;不确定就
python -m game_translator_mcp preview <目录>零成本看一眼。
不适用范围 / 已知限制:
.pak / .vpk / catalog.json 二进制资源,需先解包才能处理.locres 的 Unreal 游戏,需 UnrealPak 解包提示:Unity 游戏虽有大量
.json/.xml,但多数是引擎配置而非游戏文案;扫描器会如实返回,是否值得翻译由使用者判断。
| 条件 | 说明 |
|---|---|
| Python | ≥ 3.10 |
| 依赖 | 见 pyproject.toml(mcp、openai、pydantic 等) |
| 联网 | 必须能联网调用 AI 翻译 API |
| API Key | 不绑定任何特定供应商。由使用者自任选一个 OpenAI 兼容供应商,提供 key / base_url / 模型名(见下方「配置」),这是翻译能力的必要前提 |
| 可移植性 | 纯 Python + 标准依赖,可在 Windows / macOS / Linux 本地跑通,无平台耦合 |
| 授权 | 汉化后的文本仅限个人学习 / 非商业用途;商用需确认游戏与模组的二次分发条款 |
AI 供应商完全由使用者配置(检测哪个 key 已配置就用哪个,优先级 custom > agnes > dashscope > deepseek):
TRANSLATOR_API_KEY + TRANSLATOR_BASE_URL + TRANSLATOR_MODEL,任意兼容接口平台都可用AGNES_API_KEY + AGNES_BASE_URL + AGNES_MODELDASHSCOPE_API_KEYDEEPSEEK_API_KEYcd game-translator-mcp
pip install -e ".[dev]"
复制 .env.example 为 .env 并填写你要用的供应商:
cp .env.example .env
任选一种方式(检测到哪个 key 就用哪个,优先级 custom > agnes > dashscope > deepseek):
# 方式 A(推荐,最通用):自定义 OpenAI 兼容供应商 —— 填你自己的 key / 网关地址 / 模型名
TRANSLATOR_API_KEY=sk-xxx TRANSLATOR_BASE_URL=https://your-gateway.example.com/v1 TRANSLATOR_MODEL=your-model
BATCH_SIZE=15 # 每批翻译条数,越高越省 token OUTPUT_DIR=translated_output # 汉化输出目录 SCAN_MAX_SIZE_MB=10 # 单个文本文件大小阈值(MB),超过跳过;明文文件较大的游戏可调高
配置优先级:先读环境变量,其次读项目根目录
.env文件,最后为内置默认值。
API Key 由使用者自备,自行寻求对应平台申请(如 agnes / 通义 / DeepSeek / 其它 OpenAI 兼容网关)。
可移植性:本工具不绑定任何云服务供应商,只要在目标机器配置好上述任一套 API 参数即可本地运行,适用于 CI、Docker 或任意平台。
python -m game_translator_mcp
Trae / Claude Desktop 配置示例:
{
"mcpServers": { "game-translator-mcp": { "command": "python", "args": ["-m", "game_translator_mcp"] } } }
LangChain Agent 集成(PYTHONPATH 指向 src/):
{
"mcpServers": { "game-translator-mcp": { "command": "python", "args": ["-m", "game_translator_mcp"], "env": { "PYTHONPATH": "/path/to/game-translator-mcp/src" } } } }
# 零成本预览:先看会扫到哪些文件、多少条文本、预估多少 token(不调用 AI、不写文件)
python -m game_translator_mcp preview <游戏目录路径>
python -m game_translator_mcp preview <游戏目录路径> --max-size-mb 30
python -m game_translator_mcp check <游戏目录路径>
python -m game_translator_mcp translate <游戏目录路径> --modid mygame
python -m game_translator_mcp dry-run <游戏目录路径>
python -m game_translator_mcp steam
💡 先 preview 再 translate:翻译会消耗 token,默认输出到独立目录
translated_output/不会覆盖原文件。正式执行前先跑preview估一下工作量,避免白花 token。
| 工具名 | 功能 |
|---|---|
preview_translate_game | 零成本预览(--dry-run):先扫出会处理哪些文件、每种格式数量、总条目数、预估 token,不调 AI、不消耗额度、不写文件 |
scan_game_directory | 扫描目录,返回可翻译文件列表 + 文本量估算 |
translate_game | 完整汉化流程:扫描 → AI 翻译 → 回写 → 生成报告 |
dry_run_translate | 抽样预览翻译效果(会调用 AI 翻译一小部分样例),不实际写入文件 |
list_steam_games | 发现本地 Steam 库中已安装的可翻译游戏 |
"帮我扫描一下我的 Steam 游戏里哪些有可翻译文本"
"帮我翻译 'RimWorld' 这个游戏的英文文本"
"预览一下 'Factorio' 的汉化效果,不要实际写入"
# 汉化一个模组目录
python -m game_translator_mcp translate "path/to/my-mod" --modid mymod
python -m game_translator_mcp preview "游戏目录" → 看会翻译多少条。python -m game_translator_mcp translate "游戏目录" --modid mygame → 结果输出到 translated_output/,原文件一个都不动。本工具默认是copy 模式:只把翻译结果写到 translated_output/ 目录,绝不侵入你的原游戏文件。这样安全,但中文不会立即生效——你需要自己把汉化文件放进游戏认得到的位置。不同游戏的「位置」不一样,通常是这三种情况:
| 游戏类型 | 汉化文件该放哪 | 说明 |
|---|---|---|
| 我的世界模组/资源包 | 装成一个资源包(把 translated_output 里的 .json 按 assets/ /lang/ 结构打包,或用 mc-pack-builder-mcp 生成),在游戏里启用该资源包 | 模组文案以官方资源包方式覆盖 |
| Steam / 大多单机游戏 | 找到游戏目录里的原语言文件(英文的 en_us.json / Localization 文件夹),把汉化文件改名成游戏读取的那个语言名(比如 zh_cn.json),覆盖进去 | 改完重进游戏/重启生效 |
| 只有特定语言名的 | 作为可选语言丢进游戏的本地化目录 | 在游戏设置里切换语言到中文 |
⚠️ 覆盖前请一定留备份——这是能安全撤回去的唯一办法:
# 以某游戏的 Localization/english.json 为例:先把原文件备份,再覆盖
cp "游戏目录/Localization/english.json" "游戏目录/Localization/english.json.bak" cp "translated_output/你汉化后的文件.json" "游戏目录/Localization/english.json"
如果你不确定该放哪,直接把游戏目录 + 汉化输出目录一起发给 AI,让它帮你判断文件对应关系、给出准确的复制命令 —— 因为本工具就是给 AI Agent 调用的。
需要我把这份「导入/覆盖」说明做成逐步演示(配上具体游戏的实际路径)吗?告诉我你的游戏和目录,我就演示给你看。
translated_output/
├── my-mod/ │ ├── assets/my-mod/lang/zh_cn.json │ └── ...(保持原目录结构) ├── rimworld/ │ ├── Assets/StreamingAssets/Localization/zh-cn.json │ └── ... └── report.txt # 汉化报告
| 模块 | 功能 |
|---|---|
scanner.py | 扫描游戏目录,识别可翻译文件,过滤二进制/大文件 |
parser.py | 多格式文本解析器(JSON / LANG / TXT / INI / XML / YAML / SII / TSV / VDF / CSV / properties / PO / strings / resx / xliff / rpy / srt / ass) |
translator.py | 任意 OpenAI 兼容供应商批量翻译(custom / agnes / 通义 / DeepSeek)+ SHA-256 缓存 |
writer.py | 回写翻译结果,保持原格式,支持 copy / inplace 两种模式 |
reporter.py | 生成清晰的汉化报告(成功 / 跳过 / 失败统计) |
steam.py | Steam 游戏发现,解析 VDF 索引文件 |
mcp_server.py | MCP 服务器入口,暴露 5 个工具供 AI Agent 调用 |
cli.py | 命令行接口,支持 check / preview / dry-run / translate / steam 子命令 |
{modid}::key::value 做 SHA-256 哈希,相同原文只翻译一次,结果持久化到 translator_cache.jsonpreview_translate_game 先扫文件、估条目数和 token,不调 AI、不写文件,帮你决定要不要花钱翻译BATCH_SIZE 个条目,一次 API 调用返回全部结果,大幅降低 token 和延迟python -m pytest tests/ -v
pytest tests/ -v
所有测试均在 Windows + Python 3.14 环境下通过(89 tests passed,含新增 8 类明文格式用例与零成本预览 preview 用例)。
结合真实游戏文件做了端到端汉化验证(使用 agnes ai),结果已归档到 tests/reports/:
Menu/HUD/Game.tsv 共 603 条,全部真实翻译并回写为 TSV,成功 602 条basemodui_english.txt 共 2231 条明文可翻译,回写保留 UTF-16 BOMlocalization_en.txt 明文 key=value 928 条,可直接汉化.csv / .properties / .po / .strings / .resx / .xliff / .rpy / .srt / .ass 全部做了真实翻译与回写验证;其中 .rpy/.srt/.ass 采用原位 token 回填,不破坏脚本/字幕结构本工具支持任意明文文本格式的游戏/模组。如果你的游戏文案以明文文件(.json / .tsv / .lang / .sii / .vdf 等)存储,欢迎通过 Issue / PR 补充游戏库,一起扩展现有解析器。
tests/reports/| 工具 | 协作方式 |
|---|---|
mc-translator-mcp | Minecraft 专用强化版;本工具的 MC 子集 |
mc-pack-builder-mcp | 构建整合包时自动检测模组是否需要汉化,并调用本工具完成翻译 |
mc-mod-config-mcp | 汉化完成后检查配置文件格式是否正常 |
| LangChain Agent | 通过 MCP stdio 协议接入,支持自然语言驱动汉化流程 |
添加对新游戏格式的支持:
parser.py 中添加新的解析函数(如 _parse_locres)_PARSERS 字典scanner.py 的 SUPPORTED_EXTENSIONS 中添加扩展名tests/test_parser.py 中添加对应测试MIT License — 自由使用、修改和分发。