Servidor ZIP MCP
Chino | Inglés
Introducción del proyecto
El servidor ZIP MCP es un servidor de compresión basado en fastMCP y zip.js, que implementa el Protocolo de Contexto de Modelo (MCP). Este proyecto proporciona funciones de compresión, descompresión y consulta de información de paquetes ZIP totalmente controladas por parámetros.
Related MCP server: MCP Claude Code
Características
Admite compresión y descompresión de archivos y datos.
Admite compresión de paquetes de múltiples archivos
Proporciona control del nivel de compresión (0-9)
Admite protección con contraseña y configuraciones de fortaleza de cifrado
Proporciona una función de consulta para metadatos de paquetes comprimidos
Estructura del proyecto
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 documentationInstalación
Puede instalar ZIP MCP Server globalmente usando npm:
npm install -g zip-mcpConfiguración de MCP
Después de la instalación, puede configurar ZIP MCP en su configuración JSON de MCP:
{
"mcpServers": {
"zip-mcp": {
"command": "zip-mcp",
"args": []
}
}
}Configurar el JSON de MCP en el cliente de IA
Cliente Claude: https://modelcontextprotocol.io/quickstart/user
Raycast: requiere instalar el complemento MCP
Cursor: https://docs.cursor.com/context/model-context-protocol#configuring-mcp-servers
Descripción de la herramienta MCP
El servidor ZIP MCP proporciona las siguientes herramientas, que se pueden llamar a través del protocolo MCP:
Herramienta de compresión (comprimir)
Comprime archivos o directorios locales en un archivo ZIP.
Parámetros:
input: Ruta del archivo o directorio que se va a comprimir (cadena o matriz de cadenas)output: Ruta del archivo ZIP de salidaoptions: Opciones de compresión (opcional)level: Nivel de compresión (0-9, el valor predeterminado es 5)password: Protección con contraseñaencryptionStrength: Fuerza de cifrado (1-3)overwrite: si se deben sobrescribir los archivos existentes (booleano)
Devoluciones:
Éxito: Contenido de texto que contiene información de éxito
Error: Contenido de texto que contiene información de error
Herramienta de descompresión (descomprimir)
Descomprime los archivos ZIP locales en el directorio especificado.
Parámetros:
input: Ruta del archivo ZIPoutput: Ruta del directorio de salidaoptions: Opciones de descompresión (opcional)password: Contraseña de descompresiónoverwrite: si se deben sobrescribir los archivos existentes (booleano)createDirectories: Si se deben crear directorios inexistentes (booleano)
Devoluciones:
Éxito: Contenido de texto que contiene información del resultado de la descompresión
Error: Contenido de texto que contiene información de error
Herramienta de información ZIP (getZipInfo)
Obtener información de metadatos de archivos ZIP locales.
Parámetros:
input: Ruta del archivo ZIPoptions: Opciones (opcionales)password: Contraseña de descompresión
Devoluciones:
Éxito: Contenido de texto que contiene información detallada del archivo ZIP, incluyendo:
Número total de archivos
Tamaño total
Tamaño comprimido
Relación de compresión
Información detallada de cada archivo
Error: Contenido de texto que contiene información de error
Herramienta de prueba (eco)
Devuelve el mensaje de entrada para probar si el servicio se está ejecutando normalmente.
Parámetros:
message: Mensaje a devolver
Devoluciones:
Contenido de texto que contiene el mensaje de entrada y la marca de tiempo actual
Ejemplos
Ejemplos de herramientas de llamada utilizando el cliente MCP:
// 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!",
});Contacto
Correo electrónico: gz7gugu@qq.com
Blog: https://7gugu.com