MCP ExplorerExplorer

Zip Mcp

@7guguon a year ago
9 MIT
FreeCommunity
AI Systems
#claude#cursor#local#mcp#mcp-server#compression#zip
An MCP tool that provides AI with the ability to compress and decompress local files.

Overview

What is Zip Mcp

zip-mcp is an MCP tool that enables AI to compress and decompress local files using the Model Context Protocol (MCP). It is based on fastMCP and zip.js, providing a fully parameter-controlled ZIP compression and decompression service.

Use cases

Use cases for zip-mcp include compressing large datasets for storage, packaging multiple files for easier transfer, securing sensitive information with password protection, and querying metadata for compressed files in data processing workflows.

How to use

To use zip-mcp, clone the project repository, install the necessary dependencies, and generate the MCP JSON configuration. Then, configure the MCP JSON in your AI Client to utilize the compression and decompression features.

Key features

Key features of zip-mcp include support for file and data compression and decompression, multi-file packaging, adjustable compression levels (0-9), password protection, encryption strength settings, and metadata querying for compressed packages.

Where to use

zip-mcp can be used in various fields, including software development, data management, and any application requiring efficient file storage and transfer, especially where compression is beneficial.

Content

ZIP MCP Server

中文 | English

Project Introduction

ZIP MCP Server is a compression server based on fastMCP and zip.js, implementing the Model Context Protocol (MCP). This project provides fully parameter-controlled ZIP compression, decompression, and query compression package information functions.

Features

  • Supports compression and decompression of files and data
  • Supports multi-file packaging compression
  • Provides compression level control (0-9)
  • Supports password protection and encryption strength settings
  • Provides query function for compressed package metadata

Project Structure

zip-mcp
├── src
│   ├── index.ts               # Application entry point
│   ├── utils
│   │   └── compression.ts     # Compression and decompression implementation
├── tsconfig.json              # TypeScript configuration file
├── package.json               # npm configuration file
└── README.md                  # Project documentation

Installation

You can install ZIP MCP Server globally using npm:

npm install -g zip-mcp

MCP Configuration

After installation, you can configure ZIP MCP in your MCP JSON configuration:

{
  "mcpServers": {
    "zip-mcp": {
      "command": "zip-mcp",
      "args": []
    }
  }
}

Configure the MCP JSON in the AI Client

MCP Tool Description

ZIP MCP Server provides the following tools, which can be called through the MCP protocol:

Compression Tool (compress)

Compress local files or directories into a ZIP file.

Parameters:

  • input: Path of the file or directory to be compressed (string or string array)
  • output: Path of the output ZIP file
  • options: Compression options (optional)
    • level: Compression level (0-9, default is 5)
    • password: Password protection
    • encryptionStrength: Encryption strength (1-3)
    • overwrite: Whether to overwrite existing files (boolean)

Returns:

  • Success: Text content containing success information
  • Failure: Text content containing error information

Decompression Tool (decompress)

Decompress local ZIP files to the specified directory.

Parameters:

  • input: Path of the ZIP file
  • output: Path of the output directory
  • options: Decompression options (optional)
    • password: Decompression password
    • overwrite: Whether to overwrite existing files (boolean)
    • createDirectories: Whether to create non-existent directories (boolean)

Returns:

  • Success: Text content containing decompression result information
  • Failure: Text content containing error information

ZIP Info Tool (getZipInfo)

Get metadata information of local ZIP files.

Parameters:

  • input: Path of the ZIP file
  • options: Options (optional)
    • password: Decompression password

Returns:

  • Success: Text content containing detailed information of the ZIP file, including:
    • Total number of files
    • Total size
    • Compressed size
    • Compression ratio
    • Detailed information of each file
  • Failure: Text content containing error information

Test Tool (echo)

Returns the input message to test if the service is running normally.

Parameters:

  • message: Message to be returned

Returns:

  • Text content containing the input message and current timestamp

Examples

Examples of calling tools using the MCP client:

// Compress files
await client.executeTool("compress", {
  input: "/path/to/files/or/directory",
  output: "/path/to/output.zip",
  options: {
    level: 9,
    comment: "Test compression",
    password: "secret",
    overwrite: true,
  },
});

// Decompress files
await client.executeTool("decompress", {
  input: "/path/to/archive.zip",
  output: "/path/to/extract/directory",
  options: {
    password: "secret",
    overwrite: true,
    createDirectories: true,
  },
});

// Get ZIP info
await client.executeTool("getZipInfo", {
  input: "/path/to/archive.zip",
  options: {
    password: "secret",
  },
});

// Test service
await client.executeTool("echo", {
  message: "Hello, ZIP MCP Server!",
});

Contact

Tools

No tools

Comments

Recommend MCP Servers

View All MCP Servers