addedInput schema / properties / access
Added value: +{
+ "default": "auto",
+ "description": "'auto' (default): in memory, and a zipPath above 1073741824 bytes by byte ranges. 'range': always by byte ranges over the sandbox file (never a URL; memory ≈ the central directory). 'memory': always buffered (INPUT_TOO_LARGE above the cap).",
+ "enum": [
+ "auto",
+ "memory",
+ "range"
+ ],
+ "type": "string"
+}
changedInput schema / properties / fields / description
Previous value: -"Dot-path projection applied after verbosity (e.g. ['entryCount', 'entries.name']); array segments map over elements; unmatched paths are reported in _meta.unmatchedFields."New value: +"Dot-paths to keep, after verbosity (e.g. ['entryCount', 'entries.name']); unmatched ones are listed in _meta.unmatchedFields."
addedInput schema / properties / fields / items / pattern
Added value: +"^(?!(?:[^.]*\\.)*(?:__proto__|constructor|prototype)(?:\\.|$)).+$"
changedInput schema / properties / filter / description
Previous value: -"Select entries by name. `names` (exact, case-sensitive), `prefix` (path prefix) and `glob` (patterns: `*` within a segment, `**` across segments, `?` one character; a pattern without `/` matches at any depth, a trailing `/` matches a whole subtree) are ANDed when several are given; `includeDirectories` (default false) keeps explicit directory entries."New value: +"Select entries: `names` (exact), `prefix`, `glob` (`*` in a segment, `**` across, `?`, `[a-z]`; no `/` = any depth, trailing `/` = subtree), ANDed; `includeDirectories` (default false)."
changedInput schema / properties / filter / properties / glob / description
Previous value: -"Glob patterns; an entry matching ANY pattern is kept (e.g. ['**/*.json', 'docs/'])."New value: +"Patterns (≤ 1024 characters); ANY match keeps the entry (e.g. ['**/*.json', 'docs/'])."
addedInput schema / properties / filter / properties / glob / items / maxLength
Added value: +1024
addedInput schema / properties / includeExtendedTimestamps
Added value: +{
+ "default": false,
+ "description": "Add each entry's `extendedTimestamps` (zipnative getExtendedTimestamps: UT, then NTFS, then the DOS fields; ISO-8601, UTC).",
+ "type": "boolean"
+}
addedInput schema / properties / includeUnixIds
Added value: +{
+ "default": false,
+ "description": "Add each entry's `unixIds` (zipnative getUnixIds: the Info-ZIP ux uid / gid, or null).",
+ "type": "boolean"
+}
changedInput schema / properties / limits / description
Previous value: -"Override zipnative's named security bounds for this call (CWE-400 / CWE-409 guards). Every key is optional; absent keys keep the engine defaults (maxEntries 100000, maxEntryUncompressedSize 1 GiB, maxTotalUncompressedSize 8 GiB, maxCompressionRatio 1024, maxNameBytes 4096, maxExtraFieldBytes 65535, maxCommentBytes 65535, maxCentralDirectoryBytes 256 MiB). Values above the operator ceilings (ZIPNATIVE_MCP_MAX_UNCOMPRESSED_BYTES, ZIPNATIVE_MCP_MAX_ENTRIES) are refused with LIMIT_CEILING_EXCEEDED. Raise a bound for trusted input only."New value: +"Per-call override of zipnative's security bounds (CWE-400/409); absent keys keep the engine defaults (describe_engine.defaultLimits). A value above its operator ceiling is LIMIT_CEILING_EXCEEDED. Raise only for trusted input."
changedInput schema / properties / limits / properties / maxCentralDirectoryBytes / description
Previous value: -"Maximum central-directory size in bytes."New value: +"Bytes."
changedInput schema / properties / limits / properties / maxCommentBytes / description
Previous value: -"Maximum comment length in bytes."New value: +"Bytes."
changedInput schema / properties / limits / properties / maxCompressionRatio / description
Previous value: -"Maximum declared uncompressed/compressed ratio for entries >= 1 KiB compressed (zip-bomb guard)."New value: +"Declared ratio (entries ≥ 1 KiB compressed)."
changedInput schema / properties / limits / properties / maxEntries / description
Previous value: -"Maximum central-directory entry count."New value: +"Entries."
addedInput schema / properties / limits / properties / maxEntryCompressedSize
Added value: +{
+ "description": "Bytes, one compressed payload fetched by the byte-range reader (access range).",
+ "minimum": 1,
+ "type": "integer"
+}
changedInput schema / properties / limits / properties / maxEntryUncompressedSize / description
Previous value: -"Maximum decompressed size of one entry, bytes."New value: +"Bytes, one entry decompressed."
changedInput schema / properties / limits / properties / maxExtraFieldBytes / description
Previous value: -"Maximum extra-field block length in bytes."New value: +"Bytes."
changedInput schema / properties / limits / properties / maxNameBytes / description
Previous value: -"Maximum entry-name length in bytes."New value: +"Bytes."
changedInput schema / properties / limits / properties / maxTotalUncompressedSize / description
Previous value: -"Maximum total decompressed size across an extraction, bytes."New value: +"Bytes, all entries decompressed."
changedInput schema / properties / strict / description
Previous value: -"Escalate the first engine diagnostic (prepended data, duplicate name, name mismatch, …) to a ZIP_STRICT_DIAGNOSTIC error instead of reporting it."New value: +"Turn the first engine diagnostic into a ZIP_STRICT_DIAGNOSTIC error."
changedInput schema / properties / verbosity / description
Previous value: -"'summary' returns only the scalar verdict fields (drops arrays and payloads) — the token-frugal form."New value: +"'summary': scalar verdict fields only (the token-frugal form)."
changedInput schema / properties / zipBase64 / description
Previous value: -"The archive bytes as base64 (exactly once; a data: URI prefix is tolerated). Exclusive with zipPath. Decoded size ≤ 128 MiB."New value: +"Archive bytes, base64 (≤ 128 MiB decoded). Exclusive with zipPath."
changedInput schema / properties / zipPath / description
Previous value: -"Relative path of an archive inside the ZIPNATIVE_MCP_OUTPUT_DIR sandbox (no absolute paths, no '..'; container extensions only: .zip .jar .docx .epub …). Exclusive with zipBase64. Lets a create/modify → verify/extract chain avoid re-sending the bytes."New value: +"Archive path relative to the ZIPNATIVE_MCP_OUTPUT_DIR sandbox (container extensions: .zip .jar .docx .epub …). Exclusive with zipBase64; saves re-sending bytes between calls."
addedOutput schema / properties / access
Added value: +{
+ "description": "Present when the archive was read by byte ranges (access 'range', or a zipPath above the in-memory cap).",
+ "enum": [
+ "range"
+ ],
+ "type": "string"
+}
changedOutput schema / properties / diagnosticCounts / description
Previous value: -"Number of diagnostics received per code (counts every occurrence, including de-duplicated ones)."New value: +"Occurrences per code, duplicates included."
changedOutput schema / properties / diagnostics / description
Previous value: -"Non-fatal conformance concerns the engine raised while parsing or writing (de-duplicated by code + entry, at most 200). Empty for a clean archive. Codes: ZIP_PREPENDED_DATA, ZIP_MULTIPLE_EOCD, ZIP_NAME_MISMATCH, ZIP_UNICODE_PATH_CONFLICT, ZIP_INVALID_UTF8_NAME, ZIP_DUPLICATE_NAME, ZIP_EXTRA_FIELD_MALFORMED, ZIP_ZIP64_EXTRA_IGNORED, ZIP_TIMESTAMP_NOT_PINNED, ZIP_NONDETERMINISTIC_CODEC, ZIP_DEAD_BYTES_RATIO."New value: +"Non-fatal engine concerns (de-duplicated by code + entry, ≤ 200; codes in describe_engine.diagnosticCodes). Empty for a clean archive."
changedOutput schema / properties / diagnosticsTruncated / description
Previous value: -"Present (true) when more than 200 distinct diagnostics were dropped from `diagnostics`."New value: +"true when rows beyond 200 were dropped."
addedOutput schema / properties / entries / items / properties / extendedTimestamps
Added value: +{
+ "additionalProperties": false,
+ "description": "With includeExtendedTimestamps: modification / access / creation instants (ISO-8601, UTC) from the UT (0x5455) extra, else the NTFS (0x000a) extra, else the DOS fields (source names which); a missing one is null.",
+ "properties": {
+ "atime": {
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "ctime": {
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "mtime": {
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "source": {
+ "enum": [
+ "ut",
+ "ntfs",
+ "dos"
+ ],
+ "type": "string"
+ }
+ },
+ "type": "object"
+}
changedOutput schema / properties / entries / items / properties / nameEncoding / enum
Previous value: -[
- "utf-8",
- "cp437"
-]New value: +[
+ "utf-8",
+ "cp437",
+ "custom"
+]
addedOutput schema / properties / entries / items / properties / unixIds
Added value: +{
+ "additionalProperties": false,
+ "description": "With includeUnixIds: the Unix owner uid / gid from the Info-ZIP ux (0x7875) extra; null when the archive carries none.",
+ "properties": {
+ "gid": {
+ "minimum": 0,
+ "type": "integer"
+ },
+ "uid": {
+ "minimum": 0,
+ "type": "integer"
+ }
+ },
+ "type": [
+ "object",
+ "null"
+ ]
+}