Skip to main content

fastmcp.skills.skill

Storage-neutral agent skills.

Classes

Skill

An agent skill: a SKILL.md plus supporting files, independent of storage. A Skill holds exact file bytes. It doesn’t know where it came from or which URI it is served under; a provider decides that. Author one in Python with the keyword constructor, or snapshot one from a directory, package, or mapping of files. Methods:

from_files

Create a skill from relative paths mapped to text or bytes. files must include SKILL.md with valid frontmatter.

from_directory

Read a skill folder once and return an immutable snapshot. The folder name must match the name in its SKILL.md. Symlinks and special files are rejected, so a snapshot never reaches outside the folder.

from_package

Load a skill folder shipped as package data, such as ("my_pkg", "skills/review").

to_directory

Write the skill’s files into path, a folder named after the skill. The folder name must match the skill’s name, so from_directory can read it back. An existing folder raises FileExistsError unless overwrite is set, in which case it is replaced: files that aren’t part of the skill are removed. Files are staged before replacing an existing folder. If replacement and restoration both fail, the error identifies where the previous folder has been retained.

name

description

frontmatter

A copy of the parsed frontmatter; changing it does not change the skill.

files

Every file in the skill, keyed by relative path, including SKILL.md.

to_mcp_skill

Build the Skills extension entry for this skill served at skill://{path}/.