namestring required
Unique skill name. Lowercase letters, numbers, and hyphens only. Max 64 characters.
descriptionstring required
What this skill does and when to use it.
body_total_lengthinteger required
Total length of the full body in characters, independent of any body_offset/body_length paging. Compare against the length of the returned body to detect a truncated response.
body_next_offsetinteger nullable required
When body_length paging stops before the end of the body, the character offset to request next (pass as body_offset). Null when the returned body reaches the end.
bodystring required
The SKILL.md instruction content (markdown).
licensestring
License name or reference to a bundled license file.
compatibilitystring
Environment requirements (intended product, system packages, network access, etc.).
allowed_toolsstring[]
Tools the skill asks to use. Tool names cannot contain whitespace. A harness that reads the skill from a file (zip export, git marketplace, a content=full bundle) treats the list as pre-approved. A harness that loads the skill over MCP, including the default content=stub bundle, ignores the list until the user approves that grant.
metadataobject
Arbitrary key-value metadata.
categorystring required
Server-owned classification — set by the producing system (the Signals harness stamps "scout"), not writable via the API. Empty for an ordinary skill. Groups skills into their own surface (e.g. the Scouts tab) independently of the skill name.
version_descriptionstring nullable required
Optional note describing what changed in this version. Set when the version is published.
created_atstring date-time required
updated_atstring date-time required
is_latestboolean required
latest_versioninteger required
version_countinteger required
first_version_created_atstring required