ServerFS MCP v0.5.0
ServerFS MCP v0.5.0 adds ChatGPT-native file-parameter ingress for binary uploads while keeping the main MCP container without Internet egress.
Highlights
upload_binary_filecan now accept a ChatGPT/OpenAIfileparameter when optional file ingress is enabled, while strict RFC 4648data_base64remains available for generic MCP clients. Exactly one source is accepted, and the explicit ServerFSpathremains authoritative.- New optional
serverfs-file-ingresssidecar isolates temporary-file HTTPS retrieval from the MCP container. It has no workdir mounts, OpenAI/tunnel credentials, or published ports; accepts HTTPS/443 only; and enforces exact-host or explicitly enabled constrained OpenAI Azure Blob host-family policy, public DNS validation, IP pinning with original-host TLS verification, redirect revalidation, byte limits, and timeouts. - Streamable HTTP request-body sizing now derives from the effective binary-transfer ceiling so the advertised 8 MiB raw whole-file Base64 path is not truncated by the MCP SDK default request-body limit.
- Agent Bridge remains an independent frozen host-side contract; v0.5.0 keeps the existing writer-lease, revision, atomic mutation, no-shell, no-main-container-egress, and capability-gating boundaries intact.
Upgrade
The upgrade is backward-compatible by default: file ingress remains disabled unless explicitly enabled.
For ChatGPT file parameters, enable binary transfer plus file ingress and the constrained OpenAI Blob family, then start Compose with the file-ingress profile. If Agent Bridge is enabled, keep compose.yml + compose.agent.yml and add the profile rather than replacing the Agent overlay. No workdir data migration is required.
Validation
- Root test suite: 802 passed
- Agent Bridge: 83 passed
- Ruff lint/format: pass
- Site build: 17 pages
- Four required Compose render variants: pass
- Real ChatGPT file-parameter PNG round trip: byte-for-byte SHA-256 integrity verified
- Release Container workflow: success; multi-arch
0.5.0,0.5, andlatestimages published for linux/amd64 and linux/arm64