Skip to main content
Glama

McpStamp Zip Archives

Server Details

Create zip archives, list their contents with safety flags, and extract without unsafe entries.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Uptime
86.6% over 25 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
theluckystrike/mcp-servers
GitHub Stars
0
ChatGPT
–
Claude
–

TDQS

A3.8/5.0

Scored across 12 tools

Disambiguation4/5

Most zip_ tools are clearly distinct (upload vs create vs add vs extract vs list), and the license pair is unambiguous. However, zip_files, zip_list, and zip_history all sound like listing tools and require reading descriptions to separate uploaded files, archive entries, and archive history. zip_bundle_month is also a trap: it explicitly does nothing on this hosted endpoint, which can mislead an agent.

Naming Consistency4/5

The set uses a consistent zip_ and license_ prefix with mostly verb_noun forms (zip_add, zip_create, zip_extract, zip_upload). Deviations exist: zip_files and zip_history are noun-only, and zip_extract_text and zip_delete_upload stretch the pattern, while zip_bundle_month is an outlier name for a tool that does not work here.

Tool Count4/5

Twelve tools is a reasonable size for a zip-archive service with token-scoped uploads and licensing. The count is slightly inflated by zip_bundle_month, which is inert on this endpoint and directs callers to other tools, but the rest earn their place.

Completeness4/5

The surface covers the main lifecycle: upload, list uploads, delete uploads, create archives, add entries, inspect archives, extract files, read text entries, and review archive history with license state. Minor gaps remain: there is no tool to delete a created archive or remove entries from an existing archive, and archive cleanup depends on one-hour link expiry.

Available Tools

12 tools
license_activateActivate licenseAInspect

Turn Pro on for this connection with key, an MCPL1.. issued at checkout for this server or the bundle. Data under your token stays; a wrong or expired key changes nothing. license_status confirms it.

NameRequiredDescriptionDefault
keyYesLicense key from checkout, MCPL1.<payload>.<signature>

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is not read-only and not destructive, and the description adds useful behavioral detail: existing data under the token stays, and a wrong or expired key changes nothing. This goes beyond the annotation hints by explaining failure semantics and safety of the operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no filler. It front-loads the core action, then gives the key format and safety guarantees, and closes with the verification tool. Every sentence contributes essential information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter activation tool with annotations covering the safety profile, the description is complete: it states what the tool does, what input is needed, what happens on failure, and how to confirm success. There is no missing critical information for an agent to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already documents the key parameter and its format with 100% coverage. The description adds meaning by specifying that the key must be issued at checkout for this server or the bundle, which clarifies validity requirements not present in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: it 'turns Pro on' for the connection using a license key. It also distinguishes itself from the sibling license_status tool by saying license_status confirms the activation. This leaves no ambiguity about what the tool accomplishes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context for use: the key must be an MCPL1.<payload>.<signature> issued at checkout for this server or the bundle. It does not explicitly list exclusions or alternative tools, but it does reference license_status as the confirmation path, giving the agent a sense of the workflow.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

license_statusLicense statusA
Read-onlyIdempotent
Inspect

Report this endpoint's licence state for your token as JSON: the product, the tier free or pro, why it is not Pro, and the checkout URL. Call it to explain a free-tier refusal. No arguments, nothing changes.

NameRequiredDescriptionDefault

No parameters

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds useful context beyond annotations by specifying the JSON response contents and stating 'nothing changes,' reinforcing the read-only nature of the call.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two dense sentences cover output, purpose, usage context, and side-effect guarantee. Every sentence earns its place and the most important information is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description sufficiently describes the return value. With no parameters, annotations covering safety, and a clear use case, nothing essential is missing for an agent to invoke this tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There are zero parameters and the schema already fully documents that fact. The description explicitly says 'No arguments,' which is accurate and reinforces the schema without needing further elaboration.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description begins with a specific verb ('Report') and a precise resource ('this endpoint's licence state for your token'), and enumerates the exact output fields: product, tier, reason, and checkout URL. This clearly distinguishes it from sibling tools like license_activate.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly states when to call it: 'Call it to explain a free-tier refusal.' This is clear contextual guidance, though it does not name alternatives or explicitly state when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

zip_addAdd files to a zipAInspect

Call this tool to add files to an existing archive under their own names, or under prefix. A name clash is refused unless replace. An archive holding unsafe entries is refused rather than rewritten.

NameRequiredDescriptionDefault
pathYesPath to the existing .zip file
levelNoDeflate level 0 to 9 for the new entries, default 6
pathsYesFiles to add, each stored under its own file name. A directory contributes its tree under its own name
prefixNoPut the new entries under this folder inside the archive, for example "invoices"
replaceNoReplace an entry whose name is already in the archive. Default false: a name clash is refused and nothing is changed
passwordNoNot supported. Passing it is refused rather than ignored

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description goes beyond the annotations (readOnlyHint=false, destructiveHint=false) by disclosing two meaningful behaviors: a name clash is refused unless replace, and an archive holding unsafe entries is refused rather than rewritten. These are concrete, actionable details. It does not contradict the annotation hints.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is exactly two sentences, front-loading the primary action and then stating the key behavioral caveats. There is no filler or redundant restatement of the title.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given full schema coverage, absence of an output schema, and a moderate parameter count, the description captures the core use, the file-placement modes, and the two important refusal behaviors. An agent can decide when to call and what to expect on basic conflicts, though it stops short of explaining success return values or what 'unsafe entries' means exactly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema fully describes all 6 parameters, so the baseline is 3. The description reinforces the meaning of paths and prefix ('under their own names, or under prefix') and the replace rule ('name clash is refused unless replace'), but it adds no parameter-level detail beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb and resource: add files to an existing archive. The phrase 'existing archive' clearly distinguishes it from sibling tools like zip_create, and the mention of 'under their own names, or under prefix' captures the core operation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly establishes the context — adding to an existing archive — which implies when to use it versus creation, extraction, or listing tools. It does not explicitly name an alternative or state when not to use it, so it only falls short of full exclusion guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

zip_bundle_monthBundle a month of documentsAInspect

Local (stdio) install only. On this hosted endpoint /mcp/invoice, /mcp/quotes, /mcp/expense-tracker, /mcp/docx and /mcp/resume return their documents as one-hour download links and keep no output folder to read, so there is nothing for this tool to bundle. Pack the files with zip_upload plus zip_create instead.

NameRequiredDescriptionDefault
monthNoMonth as YYYY-MM. Default: this month. Files are chosen by their modification date
dry_runNoReport what would go in and write nothing
serversNoOnly these sibling servers: invoice, quotes, expense-tracker, docx, resume. Default: all five
out_pathNoName for the bundle. Default: the month, e.g. 2026-09
overwriteNoReplace out_path if it exists. Default false

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations are all false and provide no meaningful behavioral constraints. The description adds useful environment context (hosted servers return one-hour download links and keep no output folder), but it says nothing about what happens when the tool does run—what file is produced, side effects, or overwrite behavior. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences, front-loaded with the hard constraint 'Local (stdio) install only.' It avoids repeating schema content and spends its length on the routing caveat. Compact, though one sentence stating the local behavior would have made it stronger.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with five optional parameters, no output schema, and no helpful annotations, the description provides crucial environment routing but omits the core local behavior and outcome. An agent can infer much from title and schema, but the definition is not self-sufficient and has clear gaps around what is produced and where.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and all five parameters have descriptions, so the description does not need to repeat them. It adds no parameter-specific meaning beyond what the schema already provides, matching the baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description never states the core action ('bundle a month of documents from sibling servers into a zip')—it relies on the title and parameter names. It does usefully narrow scope by naming the five servers and the hosted-endpoint caveat, but the main verb and resource are left implicit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states the tool is local/stdio only, that on the hosted endpoint there is nothing to bundle, and names the exact alternative pathway (zip_upload plus zip_create). This is direct when/when-not/alternative guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

zip_createCreate a zip archiveAInspect

Call this tool to pack files uploaded with zip_upload into a new .zip and get a download link valid for one hour. Entry names are always relative, so the archive cannot write outside where it is unpacked.

NameRequiredDescriptionDefault
dirNoNot available on this hosted endpoint: there are no directories. Passing it is refused rather than ignored, so nobody believes a tree was packed
levelNoDeflate level 0 to 9, default 6. 0 stores without compressing
pathsNoNames of files uploaded with zip_upload, each packed under that name
excludeNoDrop entries matching one of these globs, applied after patterns
out_pathYesName for the archive, e.g. reports. It comes back as a download link valid for one hour; a name already produced in this request is refused without overwrite
passwordNoNot supported. Passing it is refused rather than ignored, so no one believes an archive is encrypted when it is not
patternsNoOnly entries matching one of these globs (* and ? inside a segment, ** across segments; a pattern with no slash also matches the file name at any depth)
overwriteNoReplace out_path if a file is already there. Default false: an existing file is never overwritten

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations are all false and carry little behavioral information, so the description bears the responsibility for disclosure. It adds meaningful traits beyond the schema: the resulting link expires in one hour, and entry names are always relative, preventing writes outside the unpack destination. This is useful, non-obvious behavior not available in annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences with no filler. The primary action and outcome are front-loaded in the first sentence; the second sentence adds an important security-relevant behavior. Every clause earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 8 parameters, one required parameter, and no output schema, the description adequately covers the core behavior, the returned artifact (download link with one-hour validity), and a key constraint. The remaining parameter details are covered by the exhaustive schema descriptions, so nothing critical is missing for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so this dimension is at baseline 3. The description adds no parameter-specific detail, but the input schema already provides rich explanations for every parameter, including refusal behavior for dir and password and the default for overwrite. The description does not need to compensate for any coverage gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb and resource: 'pack files uploaded with zip_upload into a new .zip' and states the outcome ('get a download link valid for one hour'). It clearly distinguishes this from siblings like zip_upload (uploading) and zip_add (likely adding to an existing archive) by emphasizing that a new archive is created.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description opens with 'Call this tool to...' and clearly states the intended use case: packing previously uploaded files into a zip for download. It does not explicitly mention when not to use it or name alternative tools, but the purpose is specific enough that an agent can decide to invoke it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

zip_delete_uploadDelete an uploaded fileB
Destructive
Inspect

Delete one uploaded file stored for your token. The register rows zip_history lists are kept.

NameRequiredDescriptionDefault
nameYes

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true, readOnlyHint=false, and idempotentHint=false, so the safety profile is covered. The description adds a genuinely useful non-obvious side effect — that zip_history register rows are retained — which is exactly the kind of context annotations cannot express. It stops short of disclosing reversibility, permission requirements, or behavior when the file is missing.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences with the action front-loaded and the retention caveat second. The phrasing 'The register rows zip_history lists are kept' is slightly awkward but adds real information rather than padding.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter destructive tool with no output schema, the description covers the main destructive scope and the history-retention side effect. It leaves out error behavior and the exact meaning of the required name argument, which an agent needs to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the single parameter 'name' carries no documented meaning beyond minLength/maxLength. The description never clarifies whether 'name' is a filename with extension, a path, or an identifier, nor whether it must match an existing uploaded file exactly. This is a real gap for the one input the agent must supply.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Delete one uploaded file') plus a scope qualifier ('stored for your token'), which distinguishes it from account-wide or bundle operations. It also implicitly separates itself from the zip_history sibling by noting that history rows survive. It does not, however, explicitly distinguish deleting an uploaded file from zip_add/zip_create/zip_extract operations on archives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is only implied: the agent can infer this is for removing a previously uploaded file while preserving audit history. There is no explicit statement of when to use this versus zip_list/zip_history, nor any prerequisite or failure condition (e.g., what happens if the name does not exist).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

zip_extractExtract a zip archiveAInspect

Call this tool to unpack an archive; every entry comes back as its own download link valid for one hour. Traversal, absolute-path and symlink entries are refused, a size and ratio cap stops a zip bomb, and dry_run reports exactly what would be written.

NameRequiredDescriptionDefault
pathYesPath to the .zip file
dry_runNoReport what would be written, byte counts included, and write nothing
out_dirNoIgnored on this hosted endpoint: there are no directories, and every extracted entry comes back as its own download link valid for one hour
patternsNoOnly entries matching one of these globs (* and ? inside a segment, ** across segments)
max_ratioNoRefuse an entry whose uncompressed/compressed ratio is above this. Default 100
overwriteNoReplace files that already exist in out_dir. Default false: the whole extraction is refused if any would be replaced
skip_unsafeNoSkip the dangerous entries and extract the rest, naming what was skipped. Default false: one bad entry refuses the whole archive
max_total_mbNoRefuse if the selected entries declare more than this uncompressed. Default 1024

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With all annotations false, the description carries the full burden of behavioral disclosure. It goes beyond annotations by detailing safety mechanisms (traversal/absolute-path/symlink refusal, zip bomb size and ratio caps, dry_run behavior) and the unusual output format (per-entry download links valid for one hour). It does not explicitly state whether it writes to disk, but the 'no directories' and download-link phrasing strongly imply a non-persistent extraction. This is substantial added context beyond the minimal annotation signals.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with zero filler. The core action is front-loaded, followed by the most critical behavioral notes (safety and output format). Every clause earns its place, and the structure makes the essential facts immediately visible.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For an 8-parameter tool with no output schema and empty annotations, the description covers the key behaviors: extraction scope, safety guards, dry_run semantics, and the return format (download links). It does not enumerate default values (though those are in the schema) or error conditions, but for an agent deciding whether to call it, the essential information is present. The lack of an output schema is mitigated by the explicit statement about download links.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptive parameter comments for all 8 parameters, so the baseline is 3. The description reinforces safety parameters (max_ratio, max_total_mb) and dry_run, but does not add format or syntax details beyond what the schema already provides. It does mention the out_dir is ignored (via 'no directories'), but that is already in the schema description. Overall, the description does not significantly augment parameter understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a clear verb+resource ('unpack an archive') and immediately distinguishes itself from sibling tools like zip_extract_text by noting every entry comes back as a download link, which is a unique behavior. This is specific enough that an agent can tell it apart without opening other tool schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description states when to call it ('Call this tool to unpack an archive'), providing a clear context. However, it does not mention any alternative tools (e.g., zip_list for listing, zip_extract_text for text-only extraction) or any exclusions, so it lacks the explicit when-not-to-use guidance that would earn a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

zip_extract_textRead one entry as textAInspect

Call this tool to read one text entry out of an archive without unpacking anything: give the entry name and the text comes back inline. Binary entries are refused by name rather than printed as noise.

NameRequiredDescriptionDefault
pathYesPath to the .zip file
entryYesExact entry name, as zip_list prints it. A glob is accepted when it matches exactly one entry
max_charsNoStop after this many characters (default 200000). The answer says when it was cut

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses key behaviors: it does not unpack anything, returns text inline, and refuses binary entries by name rather than printing noise. Since annotations provide no positive safety profile (readOnlyHint false, destructiveHint false, etc.), this behavioral detail carries value beyond the schema. It does not mention side effects (likely none) or permissions, but the provided traits are helpful and non-contradictory.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact: two sentences that immediately state the invocation context and a key behavioral constraint. It is front-loaded with the core action ('read one text entry... without unpacking'), followed by a valuable edge-case note. No redundant or filler phrases.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a small, focused read tool with three parameters and no output schema, the description covers the core capability, the no-unpacking behavior, and the binary-entry refusal. It does not mention return format details (though 'text comes back inline' gives a hint) or prerequisites like using zip_list to find entry names, but the schema's reference to zip_list partially covers that. The description is adequate for simple usage without major gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents all three parameters. The description adds minimal semantic value beyond the schema—'give the entry name and the text comes back inline' simply reinforces the entry parameter's effect but does not specify formats, defaults, or edge cases beyond what the schema already states. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: 'read one text entry out of an archive without unpacking anything.' It clearly differentiates from zip_extract by emphasizing no extraction occurs, and the title 'Read one entry as text' reinforces the scope. An agent can distinguish this from siblings like zip_list (listing) and zip_extract (extracting) without opening schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The opening phrase 'Call this tool to...' provides clear context for when to use it: when a single text entry is needed inline without extraction. However, it does not explicitly name alternatives or state when not to use it (e.g., 'use zip_extract for binary files'), though the binary-refusal note implies such an exclusion. This is a clear context but lacks explicit sibling routing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

zip_filesList uploaded filesA
Read-onlyIdempotent
Inspect

List the files stored for your token on this endpoint, with their sizes. These are the names every path argument here resolves against.

NameRequiredDescriptionDefault

No parameters

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and a closed-world scope, so safety is covered. The description adds genuinely new behavioral context: results are scoped to the caller's token/endpoint, sizes are included, and the returned names are the resolution basis for path arguments elsewhere. It does not mention ordering or result limits, which keeps it from a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences with zero filler, and the core purpose is stated first. The second sentence earns its place by explaining what the output names are for.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There are no parameters and no output schema, so the description carries little burden and it does disclose that sizes come back with each file. The one real gap is the unresolved relationship to the sibling zip_list, which an agent needs in order to route correctly between the two listing-like tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters, so there is nothing the description needs to disambiguate; baseline 4 applies. The description's only parameter-adjacent claim is about how the returned names are consumed by other tools, which is accurate framing for a no-arg call.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description gives a specific verb and resource: "List the files stored for your token on this endpoint, with their sizes." It also clarifies what the returned names mean (they are the basis for every path argument). However, it never distinguishes this from the sibling zip_list, which an agent could plausibly read as the same operation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The sentence "These are the names every path argument here resolves against" implies this is the discovery step before path-based calls, but that inference is left to the agent. There is no explicit when-to-use, no when-not-to-use, and no mention of zip_list as the alternative.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

zip_historyArchives createdAInspect

List the archives created for your token, newest first, with entry counts, sizes and names, plus how much of the free 20 a month is used. Each download link expires after an hour; the row keeps the name.

NameRequiredDescriptionDefault
limitNoHow many rows to show, newest first (default 20)

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations are all false, so the description carries the burden; it adds useful behavior: results are newest-first, the free monthly quota is shown, and download links expire after an hour while the row/name remains. It does not explicitly describe any side effects, but nothing in the description contradicts the annotations, and 'List' is consistent with the tool name.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence states the core purpose before adding scoping, ordering, result fields, quota, and retention/link-expiry behavior. Every clause earns its place; no filler or restatement of the title.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-optional-parameter listing tool with no output schema, the description is complete: it names the returned fields, ordering, quota accounting, and link-expiry/retention behavior. An agent has enough information to invoke it and interpret the result correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% for the only parameter, limit, including bounds and default, so the description does not need to compensate. The phrase 'newest first' in the description aligns with the schema, but the description adds no parameter detail beyond it.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('List'), a precise resource ('archives created for your token'), and the content of the listing (entry counts, sizes, names, quota use, newest-first). This clearly separates it from siblings like zip_create or zip_extract, which operate on archives rather than listing history.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description makes the intended use clear: retrieve the caller's archive-creation history with default/limited rows. It names the access scope ('for your token') and gives the context needed to choose it over mutation tools, but it does not explicitly name alternatives or state when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

zip_listList a zip archiveA
Read-onlyIdempotent
Inspect

Call this tool to list an archive's entries with sizes and ratios and flag what is dangerous: absolute paths, .., symlinks, encrypted entries, duplicate names and bombs. Read-only. Run it before zip_extract.

NameRequiredDescriptionDefault
pathYesPath to the .zip file. Read-only: the archive is never modified and nothing is extracted
limitNoHow many entries to print, largest first (default 50). The totals always cover every entry
patternsNoOnly entries matching one of these globs
max_ratioNoFlag an entry whose uncompressed/compressed ratio is above this. Default 100

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and the description repeats 'Read-only' which is redundant but does not contradict. It adds valuable behavioral context beyond annotations: the tool flags dangerous entries (absolute paths, .., symlinks, encrypted entries, duplicate names, bombs) and is intended to run before zip_extract. This enriches the agent's understanding of what the tool does at runtime despite the annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences plus a short fragment: it front-loads the core action and safety flags, then gives usage guidance. The standalone 'Read-only.' is redundant with annotations and could be folded in, but it is short and does not bloat the text. Overall it is tight and efficient with no filler, only the repeated annotation costs a small deduction.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a list tool with no output schema, the description adequately conveys what the tool returns at a high level (entries with sizes/ratios plus danger flags) and notes that totals always cover every entry (in the limit parameter description). Combined with annotations covering safety, the description is sufficient for an agent to invoke it correctly before extraction. It could be more explicit about the exact return structure, but that is not essential for a listing operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so each parameter (path, limit, patterns, max_ratio) already has a clear description. The main description mentions 'sizes and ratios' which relates to output and max_ratio, and 'flag what is dangerous' connects to the safety checks, but it doesn't add new semantic nuance beyond the schema. Baseline 3 applies because the schema carries the parameter semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: 'list an archive's entries with sizes and ratios' and clearly defines the uniqueness via safety flags (absolute paths, .., symlinks, encrypted entries, duplicate names, bombs). It also names the sibling zip_extract for context, which differentiates it from a plain listing tool. The purpose is unmistakable and distinguishes the tool from the sibling set.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives explicit usage direction: 'Run it before zip_extract.' This tells the agent exactly when to invoke it as a pre-extraction safety check. However, it does not mention alternatives (e.g., zip_files) or state when not to use it, so it falls short of full 5 because exclusions and alternative routing are absent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

zip_uploadUpload a file or an archiveA
DestructiveIdempotent
Inspect

Send a file to this hosted endpoint. There is no filesystem here, so instead of a path you upload the file once with zip_upload and then pass its name wherever a path is asked for: an archive to zip_list, zip_extract, zip_extract_text or zip_add, a plain file to zip_create. Give exactly one of content_base64 (the file's bytes, the only paste form an archive can take), content (text, for a text file to pack) or url. url: fetch a public file instead of pasting base64 (recommended above about 10 KB): the url is fetched here with a 10 second timeout, at most 3 redirects, public http(s) hosts only, and a 1 MB cap, and a name ending .zip is checked for the PK magic before anything is stored. Uploads are kept for your token between calls; zip_files lists them and zip_delete_upload removes one. The request body cap is 256 KB, so the practical ceiling on a paste is about 190 KB of file once it is base64 inside a JSON-RPC envelope.

NameRequiredDescriptionDefault
urlNourl: fetch a public file instead of pasting base64 (recommended above about 10 KB). Public http(s) only; private, link-local and this endpoint's own zone are refused
nameYesName to refer to this file by: 1-64 characters of letters, digits, underscore or dash, with an optional extension. No extension means .zip, e.g. "reports" or "notes.txt"
contentNoThe file as text (a .txt, .csv, .md or source file to pack). Not accepted for a .zip
content_base64NoThe file's bytes, base64-encoded. This is the only paste form an archive can be uploaded in

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare destructiveHint=true and idempotentHint=true, and the description adds substantial operational context beyond them: 10-second fetch timeout, max 3 redirects, public http(s) only, 1 MB cap, PK magic validation for .zip, per-token persistence between calls, and a 256 KB body cap yielding ~190 KB of paste. The one untouched trait is what 'destructive' means here — re-uploading an existing name replaces it — so a 4 rather than a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose and the name-passing model are front-loaded, and the per-parameter elaboration is prefixed with 'url:' to keep it scannable. It is still a dense single block covering four parameters plus limits; the size-cap material could be compressed, but no sentence is genuinely filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 4-parameter upload tool with no output schema, it covers the full lifecycle: storage scope (your token), limits, validation, listing and deletion. The remaining gap is the response behavior — whether the stored name is echoed back and what happens on a name collision — which matters given idempotentHint/destructiveHint.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, but the schema does not encode mutual exclusivity; the description supplies the critical rule 'Give exactly one of content_base64, content or url', plus that content is rejected for a .zip and that base64 is the sole paste form for archives. That is genuine meaning the schema alone would not convey.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Names a specific verb and resource ('Send a file to this hosted endpoint') and immediately frames the unusual no-filesystem upload model that distinguishes it from all other zip_* siblings. The final clause routes the resulting name to zip_list/zip_extract/zip_add for archives and zip_create for plain files, so the agent can tell what this tool is for without opening a schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states which downstream tool consumes the uploaded name depending on file type, and names zip_files for listing and zip_delete_upload for removal. It also gives a decision rule between content_base64, content and url (url recommended above ~10 KB, url not accepted for archives), which is exactly the when-to-use guidance an agent needs.

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.

  1. 10 tool updates
    • Changedlicense_activate1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedzip_add1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedzip_bundle_month1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedzip_create1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedzip_delete_upload1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedzip_extract1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedzip_extract_text1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedzip_history1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedzip_list1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedzip_upload1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
  2. 10 tool updates
    • Changedlicense_activate1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedzip_add1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedzip_bundle_month1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedzip_create1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedzip_delete_upload1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedzip_extract1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedzip_extract_text1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedzip_history1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedzip_list1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedzip_upload1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
  3. 12 tool updates
    • First observedlicense_activate
    • First observedlicense_status
    • First observedzip_add
    • First observedzip_bundle_month
    • First observedzip_create
    • First observedzip_delete_upload
    • First observedzip_extract
    • First observedzip_extract_text
    • First observedzip_files
    • First observedzip_history
    • First observedzip_list
    • First observedzip_upload

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Enables AI agents to inspect, list, read, search, verify, create, and safely extract zip/tar archives, including reading members without extraction, while blocking path traversal, symlink escapes, and decompression bombs.
    7
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Provides 13 ZIP tools for AI agents: inspect and list entries without extracting, verify integrity, extract with zip-slip, zip-bomb, and symlink guards, create deterministic reproducible archives, and modify ZIPs without recompression, all with no network access.
    15
    68 npm
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables secure extraction, creation, and inspection of ZIP archives and media files, with anti Zip-Slip protections, Windows long-path support, and dependency-free binary image dimension inspection.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.