Skip to main content

Group Type

Working Group

Mission Statement

The File Uploads Working Group exists to define how MCP tools and elicitation requests declare file inputs so that hosts can present native file pickers and pass user-selected file content to servers. Today, servers that need a file from the user resort to prose instructions asking for base64 strings or local paths, which produces inconsistent UX and pushes encoding details onto end users. This WG will specify a minimal, schema-level mechanism for declaring file inputs and the wire format for delivering them, anchored on SEP-2356.

Scope

In Scope

  • Specification Work: SEPs defining declarative file input descriptors on tool input schemas and elicitation request schemas, the wire encoding for file content, and host-side handling requirements.
  • Reference Implementations: SDK types and helpers for FileInputDescriptor, data URI encoding, and a sample host flow demonstrating picker invocation and value substitution.
  • Cross-Cutting Concerns: Coordination with the MCP Apps WG where embedded UI surfaces present their own file pickers, and with the Security WG on host-side validation requirements.
  • Documentation: Specification sections covering file input declaration and a migration guide for servers currently using ad-hoc base64 instructions.

Out of Scope

  • Server-to-client file delivery, which is already covered by Resources and BlobResourceContents.
  • Changes to the transport layer or session model.
The WG may evaluate approaches such as streaming, chunked transfer, or presigned upload URLs as part of its design work; whether those land in the initial SEP or a follow-up is a WG decision rather than a charter constraint.
  • MCP Apps WG — embedded app UIs may surface their own file pickers; the descriptor format should be reusable in that context.
  • Security WG — host-side validation requirements for user-supplied file content (the SEP references OWASP ASVS V5 for general upload hygiene).
  • Tool Annotations IG — file input descriptors are a form of input-parameter metadata and should remain consistent with the broader annotation taxonomy.

Leadership

RoleNameOrganizationGitHubTerm
LeadDen DelimarskyAnthropic@localdenInitial
Sponsored by Den Delimarsky (@localden) and Nick Cooper (@nickcoai).

Authority & Decision Rights

Decision TypeAuthority Level
Meeting logistics & schedulingWG Leads (autonomous)
Proposal prioritization within WGWG Leads (autonomous)
SEP triage & closure (in scope)WG Leads (autonomous, with documented rationale)
Technical design within scopeWG consensus
Spec changes (additive)WG consensus → Core Maintainer approval
Spec changes (breaking/fundamental)WG consensus → Core Maintainer approval + wider review
Scope expansionCore Maintainer approval required
WG Member approvalWG Member sponsors

Membership

NameOrganizationGitHubDiscordLevel
Den DelimarskyAnthropic@localdenLead
Nick CooperOpenAI@nickcoaiWG Member
Olivier ChafikAnthropic@ochafikWG Member

Operations

MeetingFrequencyDurationPurpose
Working SessionBiweekly30 minTechnical discussion, proposal review
Discord: #file-uploads-wg

Deliverables & Success Metrics

Active Work Items

ItemStatusTarget DateChampion
SEP-2356: Declarative file inputsDraftEnd May@ochafik
TypeScript SDK reference implementationEnd May@ochafik
Reference implementation in a second Tier-1 SDKEnd JuneTBD

Success Criteria

  • An accepted SEP defining the file input descriptor and wire encoding.
  • Reference implementations in at least two Tier-1 SDKs.
  • At least one production host rendering a native file picker from the descriptor.
  • Conformance test coverage for the new schema keyword.

Changelog

DateChange
2026-04-23Initial charter