mcp-compress mcp

v1.0.2 · MCP Tool · data · registry.pascalai.org

ZIP compression and decompression using Delphi built-in System.Zip. Operations: list (entries with sizes and ratio), info (summary), compress (create ZIP from files list or folder), extract (to output_dir), add (add files to existing or new ZIP). Pure RTL, no external dependencies.

zipcompressdecompressarchivedeflateextract

Input Parameters

ParameterTypeDescription
operationrequired string list/info/extract/add: path to ZIP required. compress: path is output ZIP. One of: list, info, compress, extract, add.
pathoptional string ZIP file path. Source for list/info/extract/add; output for compress.
filesoptional string compress/add: comma-separated list of file paths to include.
folderoptional string compress: folder to compress recursively (alternative to files).
outputDiroptional string extract: output directory. Default: same folder as ZIP.
entriesoptional string extract: comma-separated entry names to extract. Empty = all entries.
leveloptional integer compress/add: compression level 0-9. 0=store, 1-9=deflate. Default: 6. Default: 6.

Output Fields

FieldTypeDescription
ok boolean
path string
zip_size integer
count integer
entry_count integer
total_size integer
compressed_size integer
ratio_pct number
entries array[object]
added array[string]
extracted array[string]
output_dir string
error string

Examples

List entries in a ZIP

// Input
{
  "operation": "list",
  "path": "C:/project/archive.zip"
}

// Output
{
  "ok": true,
  "count": 5,
  "entries": [
    {
      "name": "file.txt",
      "size": 1024,
      "ratio": 45.2
    }
  ]
}

Compress a folder

// Input
{
  "operation": "compress",
  "path": "C:/backup.zip",
  "folder": "C:/project",
  "level": 6
}

// Output
{
  "ok": true,
  "path": "C:/backup.zip",
  "count": 23,
  "zip_size": 204800
}

Extract all entries

// Input
{
  "operation": "extract",
  "path": "C:/backup.zip",
  "outputdir": "C:/restore"
}

// Output
{
  "ok": true,
  "output_dir": "C:/restore",
  "count": 23
}

Install & Discovery

Install

ppm install mcp-compress

Get JSON Schema

GET /v1/packages/mcp-compress/1.0.2/schema

Discover by keyword

GET /v1/mcp/discover?q=zip
Discovery hint: Install with ppm install mcp-compress or invoke remotely via POST /v1/invoke/mcp-compress on the MCP Service.

PascalAI Usage

uses toolslib;
var Tool := LoadTool('mcp-compress');
var R := Tool.Call(JsonObj(['operation','compress','path','C:/out.zip','folder','C:/project']));
Writeln(R.ToJSON);