mac2win-zip MCP Server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mac2win-zip MCP ServerCreate a Windows-compatible zip of my Documents folder."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
mac2win-zip MCP Server
An MCP (Model Context Protocol) server for creating Windows-compatible ZIP files.
This MCP server wraps the functionality of mac2win-zip to create ZIP files that work perfectly on Windows from macOS.
Why mac2win-zip MCP Server?
The Problem
macOS uses NFD (Normalization Form Decomposed) for Unicode filenames, while Windows uses NFC (Normalization Form Composed). When you create a ZIP file on macOS containing files with Unicode characters (like Korean, Japanese, or special characters), Windows users often see garbled filenames.
macOS (ZIP created) | Windows (ZIP opened) |
π Hello?.pdf | β (removed) |
π μλ νμΈμ μΈμ.pdf | β (removed) |
The Solution
This MCP server automatically:
Normalizes all filenames from NFD to NFC
Removes or replaces Windows-forbidden characters
Excludes macOS-specific files (
.DS_Store, etc.)Preserves the folder structure
Result: ZIP files that work perfectly on both macOS and Windows!
macOS (ZIP created) | Windows (ZIP opened) |
π Hello.pdf | β Hello.pdf |
π μλ νμΈμ μΈμ.pdf | β μλ νμΈμ μΈμ.pdf |
Related MCP server: ZIP MCP
Installation
Quick Start - One Command! π
The easiest way to add this MCP server to Claude Desktop:
claude mcp add --transport stdio mac2win-zip -- uvx mac2win-zip-mcpThat's it! Restart Claude Desktop and it's ready to use.
For Developers
Contributing or developing? Clone and install in editable mode:
git clone https://github.com/Wordbe/mac2win-zip-mcp.git
cd mac2win-zip-mcp
uv pip install -e ".[dev]"Usage
MCP Tools
This server provides the following tools:
create_windows_compatible_zip
Create a Windows-compatible ZIP file from files and/or folders.
Parameters:
paths(array, required): List of file or folder paths to zipoutput(string, optional): Output ZIP filename (default: "archive.zip")working_dir(string, optional): Base directory for relative paths
Example usage:
Create a Windows-compatible ZIP of the current directory
Paths: ["."]
Output: "backup.zip"validate_zip_for_windows
Validate if a ZIP file is Windows-compatible.
Parameters:
zip_path(string, required): Path to the ZIP file to validateworking_dir(string, optional): Base directory for relative path
Example usage:
Check if a ZIP file is Windows-compatible
ZIP Path: "archive.zip"Example Usage
Once configured in Claude Desktop, simply ask Claude in natural language:
Create a Windows-compatible ZIP:
Create a Windows-compatible ZIP of my Documents folder.Validate an existing ZIP:
Check if backup.zip is Windows-compatible.Batch processing:
Create Windows-compatible ZIPs for all folders in ~/ProjectsClaude will automatically use the MCP tools to create properly formatted ZIP files that work perfectly on Windows!
Features
Unicode Normalization: Converts macOS NFD filenames to Windows-compatible NFC
Character Sanitization: Removes Windows-forbidden characters (
<>:"|?*\)Auto Recursive: Automatically includes all subdirectories when zipping folders
Smart Naming: Creates
folder-name.zipby default (no -o needed for single folder)Structure Preservation: Maintains original folder hierarchy in ZIP
Smart Filtering: Excludes hidden files (
.DS_Store, etc.)Korean Support: Perfect handling of Korean and other Unicode filenames
MCP Protocol: Works with any MCP-compliant AI assistant (Claude, etc.)
Requirements
uv - Fast Python package runner
Install:
brew install uvorcurl -LsSf https://astral.sh/uv/install.sh | sh
Claude Desktop (or any MCP-compatible AI assistant)
Note: Python is NOT required! uvx automatically downloads and manages Python 3.10+ for you.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Architecture
This MCP server is a thin wrapper around the mac2win-zip library, exposing its functionality via the Model Context Protocol. This means:
Single source of truth: Core ZIP creation logic lives in
mac2win-zipAlways in sync: Updates to
mac2win-zipautomatically benefit this MCP serverSeparation of concerns: CLI tool and MCP server share the same battle-tested code
Related Projects
mac2win-zip - CLI tool for creating Windows-compatible ZIP files (core library)
Model Context Protocol - The protocol powering this server
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Fork the repository
Create your feature branch (
git checkout -b feature/amazing-feature)Commit your changes (
git commit -m 'Add some amazing feature')Push to the branch (
git push origin feature/amazing-feature)Open a Pull Request
Bug Reports
If you discover any bugs, please create an issue on GitHub with:
Your operating system and version
Python version
MCP client information
Steps to reproduce the bug
Expected vs actual behavior
Show Your Support
If this project helped you, please give it a star!
Available Tools
2 toolscreate_windows_compatible_zipA
Create Windows-compatible ZIP file from files and/or folders.
Args: paths: List of file or folder paths to zip output: Output ZIP filename working_dir: Base directory for relative paths
| Name | Required | Description | Default |
|---|---|---|---|
| paths | Yes | ||
| output | No | archive.zip | |
| working_dir | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations present, the description carries the full burden of behavioral disclosure, but it only states that a Windows-compatible ZIP is created. It does not reveal important behavioral traits such as whether existing output files are overwritten, how directories are traversed, what compatibility adjustments are made, or what side effects occur on failure. The term 'Windows-compatible' is vague and not elaborated, leaving common implementation details undisclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured: a single purpose line followed by a focused Args list. Every sentence contributes useful information, and the front-loaded purpose statement makes the tool's intent immediately clear without unnecessary fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description is incomplete for a side-effecting file-creation tool. It covers parameter meanings but omits critical context such as return behavior, overwrite handling, recursion details, error conditions, and any relationship or follow-up with sibling 'validate_zip_for_windows'. An agent would need to make many assumptions before safely invoking this tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides no descriptions (0% coverage), but the description's Args section fully compensates by explaining each parameter: paths are file or folder paths, output is the output ZIP filename, and working_dir is the base directory for relative paths. This adds meaningful semantic clarity beyond the raw schema types and defaults.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function with a specific verb ('Create') and resource ('Windows-compatible ZIP file from files and/or folders'). It distinguishes itself from the sibling tool 'validate_zip_for_windows' by focusing on creation rather than validation, so there is no ambiguity about the tool's purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use it ('Create Windows-compatible ZIP file') but does not provide explicit usage context or exclusions. It does not mention alternatives like 'validate_zip_for_windows' or explain when the tool should not be used, leaving the agent to infer the appropriate scenario from the tool name and one-line summary.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_zip_for_windowsB
Validate if a ZIP file is Windows-compatible.
Args: zip_path: Path to the ZIP file to validate working_dir: Base directory for relative path
| Name | Required | Description | Default |
|---|---|---|---|
| zip_path | Yes | ||
| working_dir | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose side effects and return values. It only says 'Validate' without explaining the output, error behavior, or whether it modifies anything.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is succinct and front-loaded with a clear purpose statement, followed by a structured parameter list. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description lacks essential context: no return value, no validation criteria, and no output schema. It is too sparse for a tool with no annotations or schema hints.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description includes an Args section that explains 'zip_path' and 'working_dir', which supplements the schema where descriptions are absent. However, the explanation is minimal and doesn't clarify how 'working_dir' affects validation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function with a specific verb ('Validate') and resource ('a ZIP file'), and the scope 'Windows-compatible' distinguishes it from the sibling tool 'create_windows_compatible_zip'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance on when to use this tool vs the sibling tool. The description only states what it does, not when to prefer it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
2 tool updates
v1.0.0- First observed
create_windows_compatible_zip - First observed
validate_zip_for_windows
TDQS
The two tools are clearly distinct: one creates a Windows-compatible ZIP, the other validates an existing ZIP. There is no overlap in their purposes, so an agent can unambiguously choose the right tool.
Both tool names follow a consistent verb_noun pattern: create_windows_compatible_zip and validate_zip_for_windows. While the second name uses a preposition, the overall structure is uniform and predictable.
With only two tools, the server is tightly scoped to its stated purpose of creating and validating Windows-compatible ZIP files. Each tool is essential and there is no unnecessary bloat.
For the domain of Windows-compatible ZIP handling, the server covers both primary operations: creation and validation. This is a complete workflow with no missing steps or dead ends.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Create, inspect and extract zip archives offline, with traversal, symlink and zip-bomb guards.
MCP connector for iMessage & Contacts via a local Mac agent + Vercel relay
Deterministic cleanup tools for decimals, whitespace, filenames, delimiters, and booleans.
Convert and compress PDFs and images, redact personal data, and run text and data utilities.
Related MCP Servers
- AlicenseNot gradedqualityNot gradedmaintenanceEnables comprehensive file and document operations including image compression, archive creation/extraction, file copying/moving, PDF merging/splitting/conversion, SQLite database queries, and advanced text processing.-
- AlicenseNot gradedqualityDmaintenanceA powerful ZIP file processing tool that enables creating, extracting, listing, adding, deleting, viewing, and verifying ZIP files through MCP protocol integration with AI development environments.50MIT
- AlicenseAqualityNot gradedmaintenanceEnables comprehensive filesystem operations across Linux, macOS, and Windows with platform-aware command execution, secure path restrictions, and intelligent adaptations for file search, directory management, and shell commands specific to each operating system.13-
- AlicenseBqualityFmaintenanceProvides tools for AI assistants to compress, decompress, and manage ZIP archives including metadata retrieval. It supports directory compression, password protection, and configurable extraction options.421ISC
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Wordbe/mac2win-zip-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server