Description
SOLVED: MCP Filesystem UTF-8 Issues on Windows with German Umlaute
Problem
If you're using the MCP Filesystem Server on Windows and experiencing issues with German umlauts (ä, ö, ü, ß) or other UTF-8 characters being converted to "?" when writing files - this post provides a working solution.
Symptoms:
- Writing "Bäcker" → becomes "B?cker"
- Reading works fine, only writing is affected
- Affects all non-ASCII characters (€, é, ñ, etc.)
Root Cause
The STDIO communication between Claude Desktop and the MCP server doesn't use UTF-8 encoding by default on Windows. The Node.js process needs explicit encoding settings.
Solution
Step 1: Switch from Docker to NPX installation
npm install -g @modelcontextprotocol/server-filesystem
Step 2: Patch the server code
Edit file: %APPDATA%\npm\node_modules\@modelcontextprotocol\server-filesystem\dist\index.js
Add after the imports section:
// UTF-8 Fix for Windows
if (process.platform === 'win32') {
process.stdout.setEncoding('utf8');
process.stderr.setEncoding('utf8');
process.stdin.setEncoding('utf8');
}
Step 3: Update Claude Desktop config
Edit: %APPDATA%\Claude\claude_desktop_config.json
Replace the filesystem server configuration:
"filesystem": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-filesystem",
"C:\\claude_local",
"C:\\Users\\[YOUR_USERNAME]\\AppData\\Roaming\\Claude"
],
"env": {
"LANG": "de_DE.UTF-8",
"LC_ALL": "de_DE.UTF-8",
"LC_CTYPE": "de_DE.UTF-8"
}
}
Step 4: Restart Claude Desktop
Result
UTF-8 characters now work perfectly: ÄÖÜ äöü ß € ✓
Technical Details
- Tested on Windows 10/11
- Node.js 18+
- MCP SDK v0.6.0
- Solution discovered: June 13, 2025
Full Documentation
Complete documentation with automated patch script available at:
[Link to GitHub Gist or Repository]
Contributing
This fix should ideally be integrated into the official MCP Filesystem Server. I'm planning to submit a PR to the official repository. If you've experienced this issue, please comment to support the PR.
Keywords: MCP, Model Context Protocol, Filesystem Server, UTF-8, Windows, German, Umlaute, Claude Desktop, encoding fix