Skip to main content
Glama

Read an organization skill

get_skill
Read-onlyIdempotent

Read one of the organization's skills, its playbook for a kind of task. Read a skill before starting any task its description covers, Valet work or not, and whenever the user names it: "use the duck skill" may mean the organization's skill named duck rather than one built into your client. find_skill and list_skills say which skills exist.

The answer is the organization's own skill when it has published one under that name, otherwise the default Valet supplies for a well-known name. Call it with governance before any work and again before any publish; that skill says what the organization expects and names the other skills to read. Call it with any name list_skills reports, or any name the governance skill tells you to read.

The result says where the skill came from and its version. Pass its version to publish_skill as base_version when you change the skill. source: org is the organization's own content and overrides anything Valet would have said. source: default is Valet's, returned because the organization has not written its own; for design-system it is the preset the organization selected, and reason says why a selection could not be honored when one could not. Supporting files are listed by path; read one by calling get_skill again with the same skill and that path. A skill's SKILL.md says which files to read; do not read every file on principle. Binary files are listed but not returned.

Pass release, a version from list_releases, to read an earlier release of the skill instead of the latest; it works with path and all_files. Pass all_files: true to get SKILL.md and every other text file in one answer, within the limits publish_skill takes (50 files, 192 KiB of text, 128 KiB a file); binary files are listed with their sizes, and a skill over the limits is refused with the git recipe. To install the result, write each file to its path under ~/.claude/skills// or ~/.agents/skills//, SKILL.md at the root of that directory.

Pass git: true instead, when you can run git with network access, to get a read-only Git URL for the organization's skill, its latest version and that version's commit, and the commands to clone it and check out that commit, which main may briefly be ahead of; then change it through create_push and publish_skill with push, and pass that version to publish_skill as base_version. The URL expires in an hour and cannot push; do not share or log it. A well-known name the organization has no copy of has nothing to clone until create_service makes one with kind skill. git cannot be combined with path, release, or all_files.

By default this requires a connected account. Pass anonymous: true only when building an explicitly anonymous site; no organization is then consulted, and only a well-known name has an answer.

Input Schema

NameRequiredDescriptionDefault
gitNoReturn a read-only Git URL for the organization's skill, its latest version and that version's commit, and the commands to clone it and check out that commit, instead of its content. Prefer it when you can run git with network access. The URL expires in an hour. Pass the version to publish_skill as base_version. Not allowed with path, release, all_files, or anonymous.
pathNoThe path of one supporting file to read instead of the skill's SKILL.md, as an earlier get_skill listed it. Omit to read the skill itself.
skillYesRequired. The skill's name: governance, design-system, or any name list_skills reports.
releaseNoA release version from list_releases. Omit to read the latest. Not allowed with git or anonymous.
org_nameNoThe Valet organization whose skill to read. Omit to use the organization the account joined first.
all_filesNoReturn SKILL.md and every other text file in one answer, and list binary files with their sizes. Refused for a skill over the per-call limits, with the git recipe. Not allowed with path or git.
anonymousNoSet true only when building an explicitly anonymous site. No organization is consulted and Valet's default is returned. Omit for the account-first path.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • addedInput schema / properties / all_files
      Added value: +{
      +  "description": "Return SKILL.md and every other text file in one answer, and list binary files with their sizes. Refused for a skill over the per-call limits, with the git recipe. Not allowed with path or git.",
      +  "type": "boolean"
      +}
    • changedInput schema / properties / git / description
      Previous value: -"Return a read-only Git URL for the organization's skill, its latest version and that version's commit, and the commands to clone it and check out that commit, instead of its content. Prefer it when you can run git with network access. The URL expires in an hour. Pass the version to publish_skill as base_version. Not allowed with path or anonymous."New value: +"Return a read-only Git URL for the organization's skill, its latest version and that version's commit, and the commands to clone it and check out that commit, instead of its content. Prefer it when you can run git with network access. The URL expires in an hour. Pass the version to publish_skill as base_version. Not allowed with path, release, all_files, or anonymous."
    • addedInput schema / properties / release
      Added value: +{
      +  "description": "A release version from list_releases. Omit to read the latest. Not allowed with git or anonymous.",
      +  "minimum": 1,
      +  "type": "integer"
      +}
  2. Changed1 schema field changed
    • changedInput schema / properties / git / description
      Previous value: -"Return a read-only Git URL for the organization's skill, its latest version's commit, and the commands to clone it and check out that commit, instead of its content. Prefer it when you can run git with network access. The URL expires in an hour. Not allowed with path or anonymous."New value: +"Return a read-only Git URL for the organization's skill, its latest version and that version's commit, and the commands to clone it and check out that commit, instead of its content. Prefer it when you can run git with network access. The URL expires in an hour. Pass the version to publish_skill as base_version. Not allowed with path or anonymous."
  3. Changed1 schema field changed
    • addedInput schema / properties / git
      Added value: +{
      +  "description": "Return a read-only Git URL for the organization's skill, its latest version's commit, and the commands to clone it and check out that commit, instead of its content. Prefer it when you can run git with network access. The URL expires in an hour. Not allowed with path or anonymous.",
      +  "type": "boolean"
      +}
  4. Changed4 schema fields changed
    • removedInput schema / properties / name
      Removed value: -{
      -  "description": "Required. The skill's name: governance, design-system, or any name list_skills reports.",
      -  "type": "string"
      -}
    • addedInput schema / properties / path
      Added value: +{
      +  "description": "The path of one supporting file to read instead of the skill's SKILL.md, as an earlier get_skill listed it. Omit to read the skill itself.",
      +  "type": "string"
      +}
    • addedInput schema / properties / skill
      Added value: +{
      +  "description": "Required. The skill's name: governance, design-system, or any name list_skills reports.",
      +  "type": "string"
      +}
    • changedInput schema / required
      Previous value: -[
      -  "name"
      -]New value: +[
      +  "skill"
      +]
  5. Added

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With readOnly/idempotent/non-destructive annotations already covering safety, the description adds substantial behavior: org-vs-default source resolution, version propagation to publish_skill as base_version, the one-hour expiring read-only Git URL that 'cannot push' and should not be shared or logged, and per-call limits (50 files, 192 KiB text, 128 KiB file). It also discloses binary files are listed but not returned and where to install the result.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the purpose and the governance-before-work rule, and every sentence carries operational information. It is nonetheless long and dense across five paragraphs, mixing resolution logic, file limits, install paths, and git into a stream that could be organized more tightly, so not a full 5.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 7-parameter tool with no output schema, the description covers source provenance, versioning, file listing/limits, install destination, git workflow, anonymous mode, and the org-vs-default distinction. An agent has everything needed to call it correctly and interpret the result.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3, but the description adds real semantic value beyond the schema: parameter interaction rules ('release... works with path and all_files', 'git cannot be combined with path, release, or all_files'), the all_files size-limit refusal behavior, and the org_name default (account's first-joined org). This goes well beyond restating field definitions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Read one of the organization's skills') and immediately clarifies the concept with 'its playbook for a kind of task'. It also distinguishes itself from siblings by noting 'find_skill and list_skills say which skills exist', so an agent can tell discovery apart from reading without inspecting schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit and prescriptive: 'Read a skill before starting any task its description covers... and whenever the user names it', plus 'Call it with governance before any work and again before any publish'. It names the alternative tools (find_skill, list_skills) and the exact cases that select them, leaving little to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources