mcp-7zip-server
Provides tools for listing, extracting, and creating archives using 7-Zip, supporting formats such as 7z, zip, rar, tar, gz, bz2, and xz, with optional password protection and compression level settings.
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., "@mcp-7zip-serverlist the contents of /path/to/archive.7z"
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.
MCP 7-Zip Server
⚠️ 注意:本项目为个人练手项目,目前暂时无法使用,仅供学习参考。
一个基于 Model Context Protocol (MCP) 的 7-Zip 压缩文件操作服务器,采用双引擎架构设计。本项目为个人学习 MCP 协议开发的练手作品,尚未完成全部功能验证,暂时无法正常使用。
✨ 核心特性
🔄 双引擎架构:同时支持内置打包引擎和系统本地引擎
🛡️ 安全沙盒:解压操作限制在安全目录,防止路径遍历攻击
📦 多格式支持:7z, zip, rar, tar, gz, bz2, xz 等主流格式
🔐 密码支持:支持加密压缩和解压
⚡ 智能探测:自动检测并选择可用的 7-Zip 引擎
Related MCP server: mcp-tmpfs-server
🚀 快速开始
模式 A:开箱即用版(推荐小白)
由于使用了 optionalDependencies,默认 npx 会自动下载并使用内置的 7-Zip 引擎,无需额外配置。
Claude Desktop 配置 (~/Library/Application Support/Claude/claude_desktop_config.json 或 %APPDATA%\Claude\claude_desktop_config.json):
{
"mcpServers": {
"7zip": {
"command": "npx",
"args": ["-y", "mcp-7zip-server"]
}
}
}Cursor 配置 (.cursor/mcp.json):
{
"mcpServers": {
"7zip": {
"command": "npx",
"args": ["-y", "mcp-7zip-server"]
}
}
}模式 B:轻量化极速版(推荐极客)
如果你已经安装了系统 7-Zip,可以跳过下载内置引擎,使用更轻量的安装方式:
npm install -g mcp-7zip-server --no-optionalClaude Desktop 配置:
{
"mcpServers": {
"7zip": {
"command": "mcp-7zip-server",
"env": {
"USE_SYSTEM_7ZIP": "true"
}
}
}
}Cursor 配置:
{
"mcpServers": {
"7zip": {
"command": "mcp-7zip-server",
"env": {
"USE_SYSTEM_7ZIP": "true"
}
}
}
}📋 环境变量
环境变量 | 说明 | 默认值 | 示例 |
| 手动指定 7-Zip 可执行文件的绝对路径 | - |
|
| 强制使用系统安装的 7-Zip |
|
|
| 自定义沙盒目录路径 |
|
|
引擎优先级
服务器按以下优先级选择 7-Zip 引擎:
最高优先级:
SEVEN_ZIP_PATH环境变量指定的路径次高优先级:
USE_SYSTEM_7ZIP=true强制使用系统 7-Zip默认行为:尝试内置引擎 → 降级到系统 7-Zip
🔧 MCP Tools
list_archive
列出压缩文件中的内容。
参数:
archivePath(必填):压缩文件的绝对路径password(可选):解压密码
示例:
{
"archivePath": "/path/to/archive.7z"
}extract_archive
解压文件到沙盒目录。
参数:
archivePath(必填):压缩文件的绝对路径targetDir(可选):解压目标目录(相对于沙盒目录)password(可选):解压密码overwrite(可选):覆盖策略 -overwrite(默认)、skip、rename
示例:
{
"archivePath": "/path/to/archive.zip",
"targetDir": "my-extracted-files",
"overwrite": "skip"
}create_archive
创建压缩文件。
参数:
archivePath(必填):输出压缩文件的路径files(必填):要压缩的文件/目录路径列表format(可选):压缩格式 -7z(默认)、zip、tar、gz、bz2、xzpassword(可选):加密密码compressionLevel(可选):压缩级别 0-9(默认 5)
示例:
{
"archivePath": "/path/to/output.7z",
"files": ["/path/to/file1.txt", "/path/to/folder"],
"format": "7z",
"compressionLevel": 9
}🛡️ 安全特性
防命令注入
使用
execFile而非exec,参数以数组形式传递不使用 shell 执行,防止命令注入攻击
防路径遍历(沙盒机制)
解压操作强制限制在沙盒目录(默认
~/.mcp-7zip-sandbox)压缩时校验输入路径,禁止读取
/etc、~/.ssh等敏感目录可通过
MCP_7ZIP_SANDBOX环境变量自定义沙盒位置
防上下文爆炸
list_archive输出超过 4000 字符自动截断截断时显示文件总数统计,提示使用过滤条件
📦 支持的格式
格式 | 读取 | 写入 | 说明 |
7z | ✅ | ✅ | 高压缩比,推荐 |
zip | ✅ | ✅ | 通用兼容 |
rar | ✅ | ❌ | 只读支持 |
tar | ✅ | ✅ | Unix 归档 |
gz | ✅ | ✅ | gzip 压缩 |
bz2 | ✅ | ✅ | bzip2 压缩 |
xz | ✅ | ✅ | xz 压缩 |
🔍 故障排除
"未找到 7-Zip 引擎" 错误
解决方案(任选其一):
安装系统 7-Zip
Windows: https://www.7-zip.org/download.html
macOS:
brew install p7zipLinux:
sudo apt install p7zip-full或sudo yum install p7zip
重新安装内置引擎
npm install -g mcp-7zip-server手动指定路径
{ "env": { "SEVEN_ZIP_PATH": "/path/to/7z" } }
权限问题
如果遇到权限错误,确保沙盒目录有写入权限:
mkdir -p ~/.mcp-7zip-sandbox
chmod 755 ~/.mcp-7zip-sandbox🏗️ 开发
# 克隆仓库
git clone https://github.com/your-username/mcp-7zip-server.git
cd mcp-7zip-server
# 安装依赖
npm install
# 开发模式(监听文件变化)
npm run dev
# 构建
npm run build
# 运行
npm start📄 许可证
MIT License - 详见 LICENSE 文件
🤝 贡献
欢迎提交 Issue 和 Pull Request!
🙏 致谢
7-Zip - 强大的开源压缩软件
7zip-bin - 7-Zip 预编译二进制文件
Model Context Protocol - MCP 协议规范
Available Tools
3 toolscreate_archiveB
创建压缩文件(支持 7z, zip, tar, gz, bz2, xz 格式)
| Name | Required | Description | Default |
|---|---|---|---|
| archivePath | Yes | 输出压缩文件的路径 | |
| files | Yes | 要压缩的文件/目录路径列表 | |
| format | No | 压缩格式 | 7z |
| password | No | 加密密码 | |
| compressionLevel | No | 压缩级别 (0-9) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It only mentions supported formats and does not disclose behaviors like overwriting, permissions, or performance implications.
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 a single sentence that concisely states the core action. However, it could be slightly expanded with usage notes without losing conciseness.
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?
No output schema, and the description does not explain return values, error handling, or side effects. For a 5-parameter tool, this is insufficient.
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 100%, so baseline is 3. The description adds no extra meaning beyond the schema's parameter descriptions; it merely repeats the format list already present in the enum.
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 ('创建压缩文件' meaning 'create compressed file') and the resource (archive), and lists supported formats (7z, zip, tar, gz, bz2, xz), which distinguishes it from sibling tools 'extract_archive' and 'list_archive'.
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?
Usage is implied by the description ('create compressed file') and the context of sibling tools, but no explicit when-to-use or when-not-to-use guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
extract_archiveB
解压文件到指定目录(默认解压到沙盒目录)
| Name | Required | Description | Default |
|---|---|---|---|
| archivePath | Yes | 压缩文件的绝对路径 | |
| targetDir | No | 解压目标目录(相对于沙盒目录) | |
| password | No | 解压密码(如果加密) | |
| overwrite | No | 文件覆盖策略 | overwrite |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden for behavioral traits. It mentions only the default sandbox directory. It does not disclose side effects, supported archive formats, error handling, or other important behaviors beyond what the schema already indicates.
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 a single, concise sentence with no redundancy. It is front-loaded with the core action and resource, earning its place without waste.
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 4 parameters, no output schema, and no annotations, the description is insufficient. It lacks details on return values, error conditions, or specific usage scenarios. The default behavior is noted, but overall completeness is low for a tool with multiple options.
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 100%, so baseline is 3. The description adds minimal value beyond the schema (only mentioning default target directory). It does not provide additional context for parameters like password or overwrite policies.
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 purpose: extract files to a specified directory. It uses a specific verb (extract) and resource (archive), and distinguishes from sibling tools (create_archive, list_archive) which perform different operations.
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 on when to use this tool versus alternatives. The description does not provide context for when extraction is appropriate or mention any prerequisites. There are no explicit exclusions or comparisons to sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_archiveB
列出压缩文件中的内容(支持 7z, zip, rar, tar, gz 等格式)
| Name | Required | Description | Default |
|---|---|---|---|
| archivePath | Yes | 压缩文件的绝对路径 | |
| password | No | 解压密码(如果加密) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description carries full burden. It does not disclose whether the operation is destructive (likely not), authentication needs, or performance implications. It only says 'list contents' without clarifying behavior like temporary extraction or metadata detail.
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?
Single sentence that front-loads the purpose. No unnecessary words; every part earns its place.
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?
Tool is simple with two parameters and no output schema. Description covers supported formats and basic action, but lacks information about return value structure, error behavior, or password handling nuances.
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 100% with clear parameter descriptions. The tool description adds no additional meaning beyond what the schema already provides.
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?
Clearly states the verb 'list' and resource 'contents of compressed files', and explicitly lists supported formats (7z, zip, rar, tar, gz), distinguishing it from sibling tools create_archive and extract_archive.
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 on when to use or when not to use. No mention of alternatives or exclusions. The description only states the function without contextual usage advice.
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.
3 tool updates
v1.0.0- First observed
create_archive - First observed
extract_archive - First observed
list_archive
TDQS
Each tool has a distinct purpose: creating, extracting, and listing archives. No overlap or ambiguity.
All tool names follow a consistent verb_noun pattern: create_archive, extract_archive, list_archive.
3 tools cover the core archiving operations. The count is slightly low for a full-featured server but appropriate for a focused utility.
Basic create, extract, and list are covered, but update and delete operations are missing, which are common in an archiving context.
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
An MCP server that provides read access to your cloud storage providers, bank accounts and more.
MCP server for Superserve sandboxes: create, exec, and manage Firecracker microVMs
An MCP server for deep research or task groups
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 gradedqualityCmaintenanceMCP server that exposes file operations (list, read, write, delete, unzip) in a sandbox directory, preventing path traversal.14MIT
- AlicenseAqualityAmaintenanceSecurity-hardened MCP server that runs only allowlisted commands with no shell, jailed to a single directory, and bounded execution.2MIT
- AlicenseNot gradedqualityAmaintenanceA local-first MCP server for safely creating, inspecting, validating, testing, and packaging Minecraft Java Edition datapacks with guarded file access and deterministic builds.71MIT
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/Qiuerjun/mcp-7zip-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server