Skip to content

Investigate: Should MCP support delivering zipped skill directories (.skill bundles)? #61

@olaservo

Description

@olaservo

Context

In SEP-2093 discussion, @mgoldsborough raised a question about skills that are more than a single SKILL.md — directory structures with templates, reference docs, scoring rubrics, etc.:

skill-author/
├── SKILL.md
└── templates/
    ├── process.template.md
    ├── dialogue.template.md
    └── audit.template.md

The emerging convention for distributing these has been to zip the directory as a .skill bundle with SKILL.md at the root. The question is: how should multi-file skills be delivered over MCP?

@pja-ant responded that .zip/.skill distribution is a real thing — the Agent Skills spec still defines a skill as a directory containing at least a SKILL.md, and the zip is just a distribution mechanism. He noted that whether to support zipped skill directories over MCP is a question for this IG, and that for SEP-2093 purposes, mimeType on the resource can distinguish format.

Questions to investigate

  1. Zip bundles vs. individual resources: Should multi-file skills be delivered as a single .skill/.zip blob via resources/read, or should each file be an individually addressable skill:// resource (as proposed in the Skill URI Scheme)?

  2. Client capabilities: If we support both, how does a client signal which delivery method it prefers? Can mimeType alone (per SEP-2093) handle this, or do we need additional convention?

  3. Relationship to SEP-2093 listable resources: SEP-2093 introduces per-resource capabilities: { list: true } and URI-scoped resources/list. This could enable a skill directory to be a listable resource whose children are the individual files — potentially making zip bundles unnecessary for MCP delivery while still supporting them for other distribution channels (git, registry, .well-known).

  4. Convention recommendation: Should the MCP Skills Convention take a position on this? E.g., "skills served over MCP SHOULD expose individual files as sub-resources; .skill bundles are for out-of-band distribution only."

Related

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status

    In review

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions