ISO-8859-1文件写入器MCP
](https://www.npmjs.com/package/mcp-iso8859-writer)
MCP服务器,用于以ISO-8859-1编码写入文件。专为需要ISO-8859-1而不是UTF-8的遗留代码库而设计。
问题
AI代理(Claude、Cursor等)以UTF-8生成代码。当使用使用ISO-8859-1编码的旧代码库时,直接文件会写入损坏的特殊字符(重音符号、ñ等)。此MCP透明地将UTF-8转换为ISO-8859-1。
安装
将以下配置添加到MCP设置中:
{
"mcpServers": {
"iso-writer": {
"command": "npx",
"args": ["-y", "mcp-iso8859-writer"]
}
}
}配置文件位置:
- 克劳德代码:
.mcp.json(项目)或~/.claude/settings.json(全球) - 光标:MCP设置
- 克劳德桌面版:
claude_desktop_config.json
可选:限制到一个目录
默认情况下,MCP可以写入任何绝对路径。要将操作限制到特定目录,请设置 MCP_ISO_BASE_PATH 环境变量:
{
"mcpServers": {
"iso-writer": {
"command": "npx",
"args": ["-y", "mcp-iso8859-writer"],
"env": {
"MCP_ISO_BASE_PATH": "/var/www/html"
}
}
}
}可选:自定义备份位置
备份存储在集中式 .mcp-iso8859-writer/ 目录。默认情况下,这是在当前工作目录中创建的。要指定自定义位置,请执行以下操作:
{
"mcpServers": {
"iso-writer": {
"command": "npx",
"args": ["-y", "mcp-iso8859-writer"],
"env": {
"MCP_ISO_BACKUP_ROOT": "/path/to/project"
}
}
}
}备份系统在备份文件夹中保留目录结构。
工具
write_file_iso
以ISO-8859-1编码创建新文件。
输入:
filePath:文件的绝对路径content:UTF-8格式的文件内容
输出:
success:booleanpath:标准化路径encoding:“iso-8859-1”corruption_count:损坏的字符数is_clean:如果没有腐败,则为true
edit_file_iso
通过替换特定行来编辑现有的ISO-8859-1文件。在编辑之前自动创建备份。
输入:
filePath:文件的绝对路径startLine:起始行(从1开始)endLine:结束行(包括,从1开始)newContent:UTF-8格式的替换内容
输出:
success:booleanpath:标准化路径encoding:“iso-8859-1”corruption_count:损坏的字符数is_clean:如果没有腐败,则为truelines_replaced:替换的行数total_lines:编辑后文件中的总行数backup_path:备份文件的路径
read_file_iso
读取ISO-8859-1文件并返回UTF-8格式的内容。
输入:
filePath:文件的绝对路径
输出:
success:booleanpath:标准化路径content:文件内容转换为UTF-8lines:行数line_ending:“CRLF”或“LF”
特性
- 原子写入:用途
write-file-atomic防止写入中断时文件损坏 - 自动备份:每次编辑前创建带时间戳的备份
- 线路末端保护:检测并保留CRLF(Windows)或LF(Unix)行结尾
- 编码验证:报告任何无法完全转换的字符
发展
git clone https://github.com/lmendezz/mcp-iso8859-writer.git
cd mcp-iso8859-writer
npm install
npm run dev # Run with tsx (hot reload)
npm run build # Compile TypeScript
npm test # Run tests许可证
麻省理工学院
