RemoteZip MCP Server
The RemoteZip MCP Server allows you to interact with remote zip files over HTTP, HTTPS, and FTP without downloading the entire archive.
List Files: Retrieve a complete list of all files contained within a remote zip archive
Extract Files: Extract specific files from remote zip archives to local storage with optional path specification
Get File Information: Obtain detailed information about individual files within zip archives
Get Zip Statistics: Access overall statistics about remote zip archives (size, file count, etc.)
Partial Reading: Only downloads necessary portions of zip files for efficient bandwidth usage
Includes automated release workflows that build and release Python packages when version tags are pushed to GitHub repositories
Provides tools for accessing remote zip files over HTTP, HTTPS, and FTP protocols, allowing file listing, extraction, and statistics without downloading entire archives
Click on "Deploy 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., "@RemoteZip MCP Serverlist files in https://example.com/data.zip"
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.
RemoteZip MCP Server
An MCP server that provides tools for accessing remote zip files over HTTP, HTTPS, and FTP protocols without downloading the entire archive.
Features
List files in remote zip archives
Extract individual files from remote zip archives
Get file information and statistics
Support for HTTP, HTTPS, and FTP protocols
Partial reading - only downloads necessary parts of the zip file
Related MCP server: Filesystem MCP Server (HTTP Streaming)
Installation
From Source
Install Python 3.10 or higher
Clone the repository:
git clone https://github.com/yourusername/remotezip-mcp.git cd remotezip-mcpInstall dependencies:
pip install -e .
From GitHub Releases
Download the latest release from the Releases page and install:
pip install remotezip_mcp-1.0.0-py3-none-any.whlMCP Server Configuration
For VSCode
Install the MCP extension:
Search for "MCP (Model Context Protocol)" in VSCode extensions
Install the extension by Anthropic
Create MCP configuration file:
Create the file
~/.vscode/mcp.json(on macOS/Linux) or%APPDATA%\Code\User\mcp.json(on Windows)Or use the global config:
~/.config/mcp/mcp.json
Add the following configuration to your mcp.json:
{
"mcpServers": {
"remotezip": {
"command": "remotezip-mcp",
"args": [],
"env": {
"PATH": "$PATH"
}
}
}
}Restart VSCode to load the MCP server
For Cursor
Open Cursor settings:
Press
Cmd/Ctrl + ,to open settingsOr go to File → Preferences → Settings
Navigate to MCP settings:
Search for "mcp" in the settings search bar
Look for "MCP: Servers" or "Model Context Protocol" section
Add a new MCP server with these exact settings:
Name:
RemoteZip MCP ServerCommand:
remotezip-mcpArguments: Leave this field empty
Environment Variables: (optional)
Save and restart Cursor to activate the MCP server
Alternative: Manual MCP Configuration
If your editor doesn't have built-in MCP support, you can also run the server manually:
# Start the MCP server
remotezip-mcpThen connect to it using your MCP client with the server running on the default port.
Troubleshooting
Command not found: Make sure
remotezip-mcpis in your PATH after installationPermission denied: Try running with
sudoor check file permissionsServer won't start: Verify the installation with
remotezip-mcp --helpConfiguration not loading: Check the JSON syntax in your mcp.json file
Usage
Run the server:
python remotezip_server.pyOr use the installed command:
remotezip-mcpTools
list_files(url): Get list of files in the archiveextract_file(url, filename, local_path): Extract a file to local storageget_file_info(url, filename): Get details about a specific fileget_zip_statistics(url): Get overall statistics of the archive
Development
Setup Development Environment
# Create virtual environment
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
# Install in development mode
pip install -e .Running Tests
# Run the MCP server
python remotezip_server.pyCreating Releases
Use the provided release script:
./release.sh 1.0.0This will:
Create a git tag
r1.0.0Push the tag to GitHub
Trigger GitHub Actions to build and release
GitHub Actions
The repository includes automated release workflows:
Release Workflow (
.github/workflows/release.yml): Automatically builds and releases when version tags are pushedTriggers on tags matching pattern
r*Builds Python wheel and source distribution
Creates GitHub release with generated release notes
Dependencies
remotezip: For partial reading of remote zip filesmcp: Model Context Protocol frameworkfastmcp: FastMCP server implementation
License
MIT License - see LICENSE file for details
Available Tools
4 toolsextract_fileB
Extract a specific file from a remote zip archive to local storage.
Args:
url: URL of the remote zip file
filename: Name of the file to extract
local_path: Local directory to extract to (default: current directory)
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | ||
| filename | Yes | ||
| local_path | No | . |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It states it extracts a file to local storage but does not disclose potential side effects (e.g., overwriting existing files), permissions required, or behavior with large archives. The write operation implies destructiveness that is not addressed.
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 very concise, with a clear one-line summary followed by parameter definitions in a standard format. However, it could be slightly more structured with a separate 'Use Cases' section to improve readability.
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 tool is simple with 3 parameters and an output schema, so the description covers the basics. However, it misses important context such as error handling (e.g., file not found in archive), network requirements, and example usage. With better annotations, more might be expected.
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?
Schema description coverage is 0%, so the description must compensate. While parameter names are self-explanatory, the descriptions are minimal (e.g., 'URL of the remote zip file'). They do not specify expected formats, constraints (e.g., is filename a path inside the archive?), or error conditions. More detail is needed for each parameter.
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 extracts a specific file from a remote zip archive to local storage. The verb 'extract' and resource 'specific file from remote zip' are precise, and the tool is distinct from siblings like list_files and get_file_info, which serve informational purposes.
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 provides no guidance on when to use this tool vs alternatives. It does not mention prerequisites (e.g., ensuring the zip is accessible) or scenarios where sibling tools should be used first, such as listing contents before extraction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_file_infoC
Get information about a specific file in the remote zip archive.
Args:
url: URL of the remote zip file
filename: Name of the file
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | ||
| filename | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It does not mention whether the operation is read-only, any side effects, or required permissions. The minimal description fails to disclose behavioral traits.
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 very short and to the point, with the primary purpose stated first and organized with an Args section. However, it is more under-specified than concise.
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 low complexity (2 required params, no enums, output schema present), the description is minimally adequate. However, it fails to specify what kind of information is returned, relying entirely on the output schema.
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?
Schema description coverage is 0%, and the description only lists parameter names in an Args section without adding any further meaning or constraints. It adds virtually no value over the input schema.
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 action ('get information') and the resource ('a specific file in the remote zip archive'). It is specific and distinct from sibling tools like extract_file, get_zip_statistics, and list_files.
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 does not provide any guidance on when to use this tool versus its siblings, nor does it mention limitations or prerequisites. It simply states the function.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_zip_statisticsB
Get statistics about the remote zip archive.
Args:
url: URL of the remote zip file
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It only states the action without disclosing behavioral traits like whether the operation is read-only, requires authentication, or has rate limits. The minimal description fails to add transparency.
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 very concise and front-loaded with the purpose. It uses a docstring style with Args section, which is structured. Every sentence earns its place but could be more informative without adding length.
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?
Despite having an output schema, the description fails to explain what statistics are returned (e.g., total size, file count). For a single-parameter tool, the description should provide more context about the tool's output or behavior beyond the minimal statement.
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?
Schema description coverage is 0%, but the description adds meaning by stating 'url: URL of the remote zip file', explaining that the parameter is a URL for a remote zip file. However, it does not specify format or accessibility requirements.
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 'Get statistics about the remote zip archive' with a specific verb ('Get') and resource ('remote zip archive'). It is distinct from sibling tools like extract_file, get_file_info, and list_files.
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?
No guidance is provided on when to use this tool versus alternatives, such as when to prefer get_zip_statistics over get_file_info or list_files. No explicit context or exclusions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_filesA
Get list of files in a remote zip archive.
Args:
url: URL of the remote zip file (http, https, ftp supported)
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry behavioral transparency. It states the tool retrieves a file list, but does not disclose performance, error handling, or whether the entire archive is downloaded. Basic but incomplete.
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 very concise: a single sentence for the purpose plus a clear parameter list. No unnecessary text, well front-loaded.
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?
With an output schema present, return values need not be described. However, the description lacks details on behavior for invalid URLs, non-zip files, or large archives. It is adequate for a simple tool but not fully complete.
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 single parameter 'url' has 0% schema description coverage, but the description adds meaning by specifying it is for a remote zip file and supporting http, https, and ftp. This compensates well for the schema gap.
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 specifies the action (Get list of files) and resource (remote zip archive), and distinguishes it from sibling tools like extract_file and get_file_info.
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 usage for listing files in a zip, but does not provide explicit when-to-use, when-not-to-use, or alternative tools. It mentions supported URL schemes, but lacks guidance on context.
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.
4 tool updates
- First observed
extract_file - First observed
get_file_info - First observed
get_zip_statistics - First observed
list_files
TDQS
Scored across 4 tools
Each tool has a clear and distinct purpose: listing files, getting file info, getting archive statistics, and extracting a file. No overlap or ambiguity.
All tools follow a consistent verb_noun pattern (extract_file, get_file_info, get_zip_statistics, list_files) with underscores, forming a predictable naming convention.
4 tools is ideal for a focused utility server that reads and extracts from remote zip archives. Each tool adds value without redundancy.
The set covers essential read operations (list, info, stats) and a single extraction action. Missing batch extraction or pattern-based extraction, but core workflows are supported.
Maintenance
Related MCP Connectors
Create, inspect and extract zip archives offline, with traversal, symlink and zip-bomb guards.
Cloud file relay: chunked uploads, folders, share links, inline text reads, ZIP packing.
Reliable web access for AI agents: smart HTTP, rotating proxies, and full-browser rendering.
Get share links, publish and manage websites, artifacts and agents. No account needed.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA local MCP server that provides tools for working with 7-Zip archives, enabling archive creation, extraction, item management, and file system operations through a standardized interface.MIT
- AlicenseNot gradedqualityDmaintenanceEnables remote file system operations (read/write files, manage directories, search files) over HTTP using OAuth 2.0 authentication, with support for web-based clients and multiple concurrent sessions.11 npmMIT
- 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.13 npmMIT
- 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.47 npmISC