Extension Types
Loot Protocol currently supports Skills. MCP server support is coming soon. This page is the definitive reference for what a Skill requires.
Skill
A Skill is a single-purpose instruction set that teaches Claude how to perform a specific task. It is the simplest extension type -- at minimum, it is a single SKILL.md file with YAML frontmatter and a body of instructions. On install it is extracted to ~/.claude/skills/<slug> (or ~/.cursor/skills/<slug>).
File Structure
my-skill/
├── SKILL.md # REQUIRED
├── reference.md # optional - detailed reference documentation
├── examples.md # optional - usage examples
└── scripts/ # optional - executable helper scripts
└── *.sh|*.py|*.jsSKILL.md Specification
The SKILL.md file has two parts: frontmatter and body.
Frontmatter
YAML frontmatter is enclosed between two --- markers at the top of the file. The following fields are recognized:
| Field | Required | Type | Constraints |
|---|---|---|---|
description |
Yes | string | Must be non-empty |
name |
No | string | Lowercase letters and hyphens only (kebab-case), max 64 characters |
If name is omitted, Loot Protocol derives a slug from the directory name or display name provided during publishing.
Body
The body is everything after the closing --- of the frontmatter. It contains the natural-language instructions that Claude will follow when the skill is invoked.
- Minimum length: 10 characters
- The body should be clear, specific, and actionable
Validation Rules
| Rule | Error Message |
|---|---|
SKILL.md must exist at root |
SKILL.md not found at archive root |
| Must have valid YAML frontmatter | SKILL.md: invalid YAML frontmatter |
description field must be present |
SKILL.md: missing required field "description" |
description must be a non-empty string |
SKILL.md: "description" must be a non-empty string |
name (if present) must be kebab-case |
SKILL.md: "name" must be lowercase with hyphens only |
name (if present) max 64 characters |
SKILL.md: "name" must be 64 characters or fewer |
| Body must have at least 10 characters | SKILL.md: body must contain at least 10 characters |
| Total archive size must be under 5 MB | Archive exceeds maximum size of 5 MB |
Size Limit
Maximum archive size: 5 MB
Example
---
description: Performs thorough code reviews focusing on correctness, performance, and maintainability
name: code-review
---
When asked to review code, follow these steps:
1. Read the entire file or diff provided
2. Check for correctness issues:
- Logic errors and edge cases
- Off-by-one errors
- Null/undefined safety
- Error handling gaps
3. Evaluate performance:
- Unnecessary allocations or copies
- Algorithm complexity (O(n^2) where O(n) is possible)
- Missing memoization or caching opportunities
4. Assess maintainability:
- Naming clarity
- Function/method length and responsibility
- Documentation quality
5. Provide specific, actionable feedback with line references
6. Summarize with a severity rating: minor / moderate / majorMCP Server (coming soon)
Support for MCP (Model Context Protocol) servers is on the way. An MCP Server will let you share tools and resources that run on your own infrastructure (an npm package, a GitHub repo, or a hosted HTTPS endpoint) -- you'll register the connection details and Loot Protocol will wire them into a user's IDE on install, without hosting any server code.
This type is not available yet. For now, Skills are the only supported extension type. This page will be updated with the full specification when MCP support ships.