Witcher 3 String Editor MCP
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
Witcher 3 String Editor MCP
A local (stdio) MCP server for reading and editing
The Witcher 3 .w3strings localization files — inspect entries, search text, translate or replace
strings, add/delete entries, and save as version 162/163/164.
Every operation works on an in-memory document identified by a Guid handle; only
save_document writes to disk, so you can edit a game file without touching the original.
Tools
Tool | Description |
| Open a |
| Create a new empty document |
| Number of entries in a document |
| Whether the document has unsaved changes |
| Move relative to an entry ( |
| Get one entry by |
| Substring search over id, text and key name |
| Add a new entry |
| Change text / key name / key hash of an entry |
| Change the |
| Set the key name (in memory; only the hash is saved) |
| Delete an entry |
| Write the document to disk ( |
| Close a document and release its handle |
| List the supported language codes |
Related MCP server: ue-bridge
Install
The package is a .NET tool, so clients launch it through
dnx, which ships with the
.NET 10 SDK. There is nothing to install globally and nothing to add to PATH — the first launch
downloads the package from NuGet.org.
All configurations below launch the same stdio command:
dnx Witcher3StringEditor.MCP@0.1.0-beta.4 --yes--yes skips the download confirmation prompt; @0.1.0-beta.4 pins the version, so upgrade by
editing that number and restarting the client.
VS Code
Create .vscode/mcp.json in the workspace (or run MCP: Add Server from the Command Palette):
{
"servers": {
"w3strings": {
"type": "stdio",
"command": "dnx",
"args": ["Witcher3StringEditor.MCP@0.1.0-beta.4", "--yes"]
}
}
}Visual Studio
Create .mcp.json next to the .sln/.slnx. The servers block is identical to the VS Code one
above; Visual Studio reads the same file format.
Cursor
Create .cursor/mcp.json in the project (or ~/.cursor/mcp.json for all projects). Cursor uses the
mcpServers key:
{
"mcpServers": {
"w3strings": {
"command": "dnx",
"args": ["Witcher3StringEditor.MCP@0.1.0-beta.4", "--yes"]
}
}
}Claude Code
claude mcp add w3strings -- dnx Witcher3StringEditor.MCP@0.1.0-beta.4 --yesClaude Desktop
Edit %APPDATA%\Claude\claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"w3strings": {
"command": "dnx",
"args": ["Witcher3StringEditor.MCP@0.1.0-beta.4", "--yes"]
}
}
}Restart Claude Desktop after editing the file.
Running from source
Before a release, or while developing, point the client at the project instead of the published package:
{
"servers": {
"w3strings-dev": {
"type": "stdio",
"command": "dotnet",
"args": ["run", "--project", "Witcher3StringEditor.MCP/Witcher3StringEditor.MCP.csproj"]
}
}
}Without the .NET 10 SDK
Publish the self-contained build and point command at the executable instead of dnx:
dotnet publish .\Witcher3StringEditor.MCP -c Release -r win-x64{
"servers": {
"w3strings": {
"type": "stdio",
"command": "C:\\path\\to\\Witcher3StringEditor.MCP\\bin\\Release\\net10.0\\win-x64\\publish\\Witcher3StringEditor.MCP.exe"
}
}
}Verify the connection
After restarting the client, the server should expose 15 tools (open_document …
list_languages). If the client lists none, or every call fails with a generic message:
Check that
dnxresolves:dnx --helpmust work in a terminal (otherwise install the .NET 10 SDK).Check that the configured version actually exists on NuGet.org.
Read the log — the client only shows a generic error, the real exception is always in
%LOCALAPPDATA%\Witcher3StringEditor.MCP\logs\log<date>.txt(one file per day).
Build from source
dotnet run --project .\Witcher3StringEditor.MCP # run from source
dotnet pack -c Release -r win-x64 # build the win-x64 tool packagedotnet pack produces one platform-independent package plus one package per runtime identifier;
all of them must be pushed to NuGet.org for dnx to resolve the right binary.
Notes
.w3stringsstores no readable key name, only an 8-digit uppercase hex hash; key names are empty after reopening a file.163is written as162. Save with164for the Remastered edition,162/163for the classic and next-gen builds.Zero-hash key entries are dropped on save.
The server has no undo: save to a new file when editing game content.
Diagnostics go to the user's local application data, never to stdout and never to the working directory:
%LOCALAPPDATA%\Witcher3StringEditor.MCP\logs\log<date>.txton Windows and~/.local/share/Witcher3StringEditor.MCP/logs/log<date>.txton Unix-like systems. One file per day, with Serilog's default file retention of 31 files (1 GB per file).
License
Released under the MIT License.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
This server cannot be deployed
Maintenance
Related MCP Connectors
MCP server for Crowdin — projects, files, strings, translation progress, tasks, and members.
Translate MCP — LibreTranslate-compatible machine translation.
Create, update, and publish changelog entries on your Patchlog changelog from any MCP client.
Related MCP Servers
- AlicenseBqualityCmaintenanceMCP server for managing translation projects in Weblate. With the ability to search, read and write transltaions.2061 npm24MIT
- AlicenseBqualityBmaintenanceEnables AI agents and scripts to inspect objects, call functions, and run Lua in a running UE4SS game via MCP, with no sockets or admin rights required.2627 PyPI5MIT
- AlicenseNot gradedqualityCmaintenanceExposes 10 tools that let AI agents search Nexus Mods, inspect locally installed game modules, populate and fix translation flags, generate and translate templates with Microsoft/Google/DeepLX engines, and build external translation modules. Two of the tools write to disk, rewriting ModuleData XML files and creating sibling translation directories under the game's Modules folder.103 npm2MIT
- AlicenseBqualityCmaintenanceEnables MCP clients to explore a local War Selection installation by reading mod code, game JSON data, logs, and Lua API indexes, while also linting mods, parsing Lua log errors, diffing mod and game versions, generating scaffolds, and watching logs in real time.26MIT