3.2 KiB
icon
| icon |
|---|
| lucide/braces |
Frontmatter Contract
This page defines frontmatter ownership for native skills and prompt documentation.
Skill Frontmatter
Skills use the standard Agent Skills fields consumed by the FastMCP Skills Provider:
---
name: <skill-id>
description: <what the skill does and when to use it>
---
Rules:
nameanddescriptionare required.namemust equal the skill directory name.- The repository uses lowercase kebab-case directory names.
- Skill frontmatter contains no
x-personal-mcpcatalog metadata. - Supporting files require no frontmatter manifest. The provider discovers files recursively and generates
_manifestwith relative paths, byte sizes, and SHA256 hashes.
The provider uses the directory name as the URI identity and the frontmatter description as the main resource description. Repository tests enforce directory/name parity and reject extra skill frontmatter fields.
Prompt Documentation Frontmatter
Each prompt stores runtime metadata in a nested prompt mapping beside fields consumed by the static documentation site. The runtime mapping uses this shape:
---
icon: lucide/messages-square
prompt:
version: "1.0.0"
description: Describe when to use the prompt.
tags: [example, prompts]
arguments: {topic: {description: "Topic to process.", required: true, choices: [first, second]}, notes: {description: "Optional constraints.", required: false}}
---
Prompt rules:
version,description,tags, andargumentsare required; unknown fields insidepromptor an argument are rejected.- The directory name supplies the prompt id. Do not add a duplicate
namefield. - Argument names must be valid identifiers and preserve their authored mapping order.
- Every argument requires a non-empty
descriptionand explicitrequiredboolean. - Optional
choicesmust be a non-empty list of unique, non-empty strings. - Markdown placeholders must exactly match the declared argument names.
- Top-level fields such as
iconremain owned by the documentation site and are not runtime prompt metadata.
See the MCP prompts concept documentation and schema reference for the protocol-level prompt shape.
Validation Timing
Skill validation is file- and provider-oriented:
SkillsDirectoryProviderdiscovers each directory containingSKILL.md.- FastMCP parses the description and scans all files when the provider is created.
- Repository tests enforce the stricter standard-only frontmatter and directory/name rules.
Prompt validation is provider- and renderer-oriented. Every list or get request reloads and validates the authored files. A malformed definition fails the request instead of publishing a partial prompt set.
Invariants
- Skills remain directly portable to tools that understand standard Agent Skills directories.
- Native skill discovery has no parallel catalog metadata source.
- Prompts use FastMCP's native component metadata and protocol surface without a parallel catalog or Python component file.
- All authored content remains under
docs/.