Skip to main content
Glama
goldzulu

Skill Loader MCP Server

by goldzulu

Skill Loader MCP Server

npm version License: MIT Node.js Version

An MCP (Model Context Protocol) server for discovering, fetching, validating, and converting Claude skills from the skills.sh marketplace and GitHub repositories.

What's New in v1.1.0

  • skills.sh API integration: Search uses the /api/search?q=<query> endpoint — no authentication needed

  • Authenticated endpoints: list_skills and get_leaderboard use the /api/v1/skills endpoint (requires SKILLS_SH_API_KEY)

  • Smarter Power conversion: convert_to_power now generates mcp.json when a skill has dependencies or tool references, and creates a steering/ directory when a skill has 3+ complex sections

  • MCP SDK upgrade: Updated to @modelcontextprotocol/sdk v1.29

Related MCP server: Skills Registry MCP Server

Features

  • Discover Skills — Browse and search the skills.sh marketplace via its public search API

  • Fetch Skills — Download raw skill content directly from GitHub

  • Security Validation — Scan skills for dangerous commands, suspicious patterns, and code injection

  • Format Conversion — Convert skills to Kiro steering files or power format (with optional mcp.json and steering/ directory)

  • Complete Workflow — Import skills end-to-end with a single command (fetch + validate + convert)

Installation

Global Installation

npm install -g @goldzulu/skill-loader-mcp-server

Local Installation

npm install @goldzulu/skill-loader-mcp-server

Configuration

Environment Variables

Variable

Required

Description

SKILLS_SH_API_KEY

For list_skills and get_leaderboard only

API key for the skills.sh authenticated /api/v1/skills endpoint. Request from Vercel if needed. Not required for search_skills.

With Kiro

Add to your mcp.json:

{
  "mcpServers": {
    "skill-loader": {
      "command": "npx",
      "args": ["-y", "@goldzulu/skill-loader-mcp-server"],
      "env": {
        "SKILLS_SH_API_KEY": "your-api-key-here"
      },
      "description": "Skill Loader MCP Server for managing Claude skills"
    }
  }
}

With Claude Desktop

Add to your Claude Desktop configuration:

{
  "mcpServers": {
    "skill-loader": {
      "command": "skill-loader-mcp-server",
      "env": {
        "SKILLS_SH_API_KEY": "your-api-key-here"
      }
    }
  }
}

The env block is optional — only needed if you want to use list_skills or get_leaderboard.

Standalone

skill-loader-mcp-server

Available Tools

1. search_skills

Search for skills by keyword using the skills.sh search API. No authentication required.

Parameters:

  • query (required): Search query

  • limit (optional): Max results (default: 20, max: 50)

Example:

{
  "tool": "search_skills",
  "arguments": { "query": "pdf", "limit": 5 }
}

2. list_skills

List all available skills from skills.sh with pagination. Requires SKILLS_SH_API_KEY.

Parameters:

  • page (optional): Page number (default: 1)

  • pageSize (optional): Results per page (default: 50, max: 100)

Example:

{
  "tool": "list_skills",
  "arguments": { "page": 1, "pageSize": 10 }
}

3. get_leaderboard

Get trending or top-installed skills. Requires SKILLS_SH_API_KEY.

Parameters:

  • timeframe (optional): 'all' or '24h' (default: 'all')

  • limit (optional): Max results (default: 20, max: 50)

Example:

{
  "tool": "get_leaderboard",
  "arguments": { "timeframe": "24h", "limit": 10 }
}

4. fetch_skill

Fetch raw skill content from GitHub.

Parameters:

  • identifier (required): Skill name or owner/repo format

Example:

{
  "tool": "fetch_skill",
  "arguments": { "identifier": "anthropics/pdf-extractor" }
}

5. validate_skill

Validate skill content for security issues.

Parameters:

  • content (required): Skill content to validate

  • url (optional): Source URL for verification

Example:

{
  "tool": "validate_skill",
  "arguments": {
    "content": "---\nname: Test\n---\n\n# Test",
    "url": "https://example.com/skill.md"
  }
}

6. convert_to_steering

Convert skill to Kiro steering file format.

Parameters:

  • content (required): Skill content

  • sourceUrl (optional): Original source URL

Example:

{
  "tool": "convert_to_steering",
  "arguments": {
    "content": "---\nname: Test\ndescription: A test skill\n---\n\n# Test",
    "sourceUrl": "https://example.com/skill.md"
  }
}

7. convert_to_power

Convert skill to Kiro power format. Generates mcp.json when the skill has dependencies or tools, and a steering/ directory when the skill has 3+ complex sections.

Parameters:

  • content (required): Skill content

  • sourceUrl (optional): Original source URL

Example:

{
  "tool": "convert_to_power",
  "arguments": {
    "content": "---\nname: Test\ndescription: A test skill\n---\n\n# Test",
    "sourceUrl": "https://example.com/skill.md"
  }
}

8. import_skill

Complete import workflow (fetch + validate + convert).

Parameters:

  • identifier (required): Skill identifier

  • outputFormat (required): 'steering' or 'power'

  • skipValidation (optional): Skip security validation (default: false)

Example:

{
  "tool": "import_skill",
  "arguments": {
    "identifier": "anthropics/pdf-extractor",
    "outputFormat": "steering"
  }
}

Security

The server includes security validation that scans for:

  • Dangerous commands (rm -rf, sudo, eval, exec)

  • Suspicious file operations (/etc/, /usr/, /bin/)

  • Code injection patterns (${...}, $(...))

  • Untrusted sources (non-GitHub URLs)

Skills that fail security validation will be blocked from import unless explicitly skipped.

Caching

The server caches skills.sh search results in memory for 1 hour to reduce API calls and improve performance. The cache is automatically refreshed when expired.

Error Handling

All tools return errors in a consistent JSON format with descriptive messages. Common error types:

  • Network errors: Connection issues, timeouts, HTTP errors

  • Validation errors: Security issues, format problems

  • Parsing errors: YAML syntax errors, invalid markdown

  • Resolution errors: Skill not found, ambiguous identifiers

Development

Build

npm run build

Test

npm test

Watch Mode

npm run test:watch

Requirements

  • Node.js 18 or higher

  • npm or yarn

License

MIT

Contributing

Contributions are welcome! Please see CONTRIBUTING.md for guidelines.

Support

For issues and questions, please open an issue on GitHub.

Available Tools

8 tools
convert_to_powerC

Convert skill to Kiro power format

ParametersJSON Schema
NameRequiredDescriptionDefault
contentYesSkill content (required)
sourceUrlNoOriginal source URL (optional)

TDQS

C2.9/5.0
Behavior1/5

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

With no annotations provided, the description carries the full burden of disclosing behavior. It merely states the conversion action without explaining what the conversion entails, whether it is destructive, what outputs are produced, or any side effects.

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?

The description is a single, concise sentence with no filler. It is efficiently phrased, though it could be slightly more informative without becoming verbose.

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

Completeness2/5

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

The tool is a conversion operation with no output schema and no annotations. The description does not explain what the conversion produces, what format 'Kiro power' is, or any constraints. This leaves significant gaps in understanding the tool's behavior.

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

Parameters3/5

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

The input schema already covers both parameters with descriptions (100% coverage). The tool description adds no extra meaning about parameters, so the baseline of 3 is appropriate.

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?

The description clearly specifies the action ('Convert') and the resource ('skill' to 'Kiro power format'). It distinguishes itself from the sibling 'convert_to_steering' by naming a different output format.

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

Usage Guidelines2/5

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

There is no guidance on when to use this tool versus alternatives. It does not mention any prerequisites, expected inputs, or scenarios where it should be preferred over similar conversion tools.

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

convert_to_steeringB

Convert skill to Kiro steering file format

ParametersJSON Schema
NameRequiredDescriptionDefault
contentYesSkill content (required)
sourceUrlNoOriginal source URL (optional)

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It only states the conversion action, but does not reveal whether this creates a new file, modifies the original, returns converted content, or has any side effects. The lack of output schema further compounds this gap.

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

Conciseness5/5

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

The description is a single sentence of eight words, highly concise and front-loaded. Every word serves a purpose with no filler or repetition.

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

Completeness2/5

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

The description is too sparse for a tool with no output schema and no annotations. It fails to mention the return value, the format of the output, or any side effects. The existence of sibling conversion tools (like convert_to_power) without differentiation makes the lack of contextual completeness more apparent.

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

Parameters3/5

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

Schema description coverage is 100%, with both 'content' and 'sourceUrl' already described in the schema. The tool description adds no additional meaning beyond the schema, so the baseline score of 3 is appropriate.

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?

The description states a specific verb 'Convert' and a specific resource 'skill to Kiro steering file format', clearly distinguishing it from sibling tools like convert_to_power or validate_skill. The target format is named, making the purpose unambiguous.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. It does not mention exclusions, prerequisites, or why one would choose this over convert_to_power. The one-line description offers no contextual usage direction.

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

fetch_skillA

Fetch raw skill content from GitHub

ParametersJSON Schema
NameRequiredDescriptionDefault
identifierYesSkill name or owner/repo format (required)

TDQS

A3.5/5.0
Behavior3/5

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

No annotations are present, so the description must disclose behavior. 'Fetch raw skill content from GitHub' implies a read operation, and 'from GitHub' adds source context. However, it does not mention auth requirements, error behavior, response format, or side effects, making it adequate but minimal for a read-only fetch.

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

Conciseness5/5

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

The description is a single, front-loaded sentence with no redundant information. It efficiently conveys the core action and subject.

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

Completeness3/5

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

The tool is simple with one parameter and no output schema. The description indicates the tool returns raw skill content, which addresses the main output, but lacks details on the format (e.g., text vs. JSON) or error conditions. This is minimally complete for a straightforward fetch operation.

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

Parameters3/5

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

Schema description coverage is 100%, with 'identifier' described as 'Skill name or owner/repo format (required)'. The tool description adds no extra parameter meaning, but the schema already fully documents the parameter, so the baseline 3 is appropriate.

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?

The description 'Fetch raw skill content from GitHub' uses a specific verb ('fetch') and resource ('raw skill content'), and identifies the source (GitHub). This clearly differentiates it from siblings like list_skills (listing) and search_skills (searching) by indicating a one-by-one retrieval of content.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. The description does not mention scenarios, prerequisites, or exclude cases where other sibling tools would be more appropriate.

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

get_leaderboardB

Get trending or top-installed skills

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax results (default: 20, max: 50)
timeframeNoTimeframe: "all" or "24h" (default: "all")

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations, the description bears the full burden of behavioral disclosure. It only states the output type (trending/top-installed skills) but does not mention ordering, default behavior for missing parameters, or any side effects (though likely a read-only operation). Additional context such as whether results are paginated or how 'trending' is defined would improve transparency.

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

Conciseness5/5

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

The description is a single, compact sentence that communicates the core function without unnecessary words. It is appropriately sized and front-loaded with the primary purpose.

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

Completeness3/5

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

The tool is simple with only two optional parameters, and the schema provides solid parameter documentation. However, the lack of usage guidelines and behavioral transparency leaves gaps in how the agent should understand ordering, defaults, and when to use this over siblings. Enough for basic invocation, but not fully complete.

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

Parameters3/5

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

Schema descriptions cover both parameters fully (100% coverage), so the baseline is 3. The description adds marginal context by tying 'trending' to the 'timeframe' parameter, but it does not provide extra semantic nuance beyond the schema's own explanations.

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

Purpose4/5

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

The description clearly states the tool's purpose: retrieving trending or top-installed skills. The verb 'Get' and resource 'skills' are specific, and the qualifiers 'trending or top-installed' distinguish it from sibling tools like list_skills and search_skills, though it doesn't explicitly name them.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool compared to alternatives such as list_skills or search_skills. No context or exclusions are mentioned, leaving the agent to infer usage solely from the tool name and schema.

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

import_skillB

Complete import workflow (fetch + validate + convert)

ParametersJSON Schema
NameRequiredDescriptionDefault
identifierYesSkill identifier (required)
outputFormatYesOutput format: "steering" or "power" (required)
skipValidationNoSkip security validation (default: false)

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It lists the high-level steps (fetch, validate, convert) but omits critical details such as the skipValidation option, return behavior, side effects, or error conditions. This is minimal disclosure.

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?

The description is a single, compact sentence that conveys the essential function without redundancy. It could benefit from slight expansion to include usage context, but as written it is appropriately concise.

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

Completeness2/5

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

The tool has three parameters and no output schema, so the description must clarify the full workflow, return value, and optional behavior. It only provides the step list, leaving gaps around skipValidation, success conditions, and what is produced by the conversion. This is insufficient for an agent to invoke the tool confidently.

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

Parameters3/5

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

The input schema covers all parameters with meaningful descriptions (identifier, outputFormat, skipValidation), achieving 100% schema coverage. The description itself adds no additional parameter semantics, so the baseline score of 3 applies.

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

Purpose4/5

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

The name 'import_skill' plus 'Complete import workflow (fetch + validate + convert)' makes it clear this tool performs a full import sequence. It distinguishes itself from sibling tools that handle only individual steps, though it lacks an explicit imperative verb describing the action.

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

Usage Guidelines3/5

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

The description implies this tool is used for the complete import process, as opposed to using fetch_skill, validate_skill, or convert_to_* individually. However, it does not explicitly state when to choose this tool over the alternatives or provide any exclusions or prerequisites.

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

list_skillsA

List all available skills from skills.sh with pagination

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number (default: 1)
pageSizeNoResults per page (default: 50, max: 100)

TDQS

A3.5/5.0
Behavior2/5

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

With no annotations, the description carries the full burden of behavioral disclosure. It only mentions 'with pagination,' which is already evident from the schema's page and pageSize properties, and provides no additional behavioral context such as return format, ordering, or potential side effects. The description is too terse to fully inform the agent about what to expect.

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

Conciseness5/5

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

The description is a single, concise sentence that conveys the essential purpose without any unnecessary words. It is well-structured and easy to parse.

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

Completeness3/5

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

For a simple two-parameter list tool with no output schema, the description covers the core purpose but lacks details on the return structure or any ordering/filtering behavior. It is minimally sufficient but leaves gaps about the actual response shape.

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

Parameters3/5

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

The schema has full coverage (100%) with clear descriptions for both page and pageSize, so the baseline is 3. The description does not add any additional parameter semantics beyond what the schema already provides.

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?

The description clearly states the tool's function: 'List all available skills from skills.sh with pagination.' It uses a specific verb ('List'), identifies the resource ('skills from skills.sh'), and specifies scope ('all'), which distinguishes it from sibling tools like search_skills that are for targeted lookups.

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

Usage Guidelines3/5

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

The phrase 'List all available' implies use when you need the full catalog rather than searching for specific skills, providing a subtle usage hint. However, there is no explicit mention of when not to use it or an alternative tool, leaving the guidance somewhat implicit.

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

search_skillsB

Search for skills by keyword

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax results (default: 20, max: 50)
queryYesSearch query (required)

TDQS

B3.3/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states the search operation and keyword basis, without mentioning case sensitivity, partial matching, read-only nature, or return format. This leaves important behavioral traits undisclosed.

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

Conciseness5/5

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

The description is a single concise sentence that immediately states the action and scope. There is no redundant wording or fluff, and the key information is front-loaded. It is appropriately sized for a simple search tool.

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

Completeness3/5

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

Given the tool's simplicity and full schema coverage, the description is minimally viable but leaves gaps. It does not specify what aspects of skills are searched (e.g., name, description), nor the return structure since there is no output schema. More context would improve completeness, but it is not severely lacking.

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

Parameters3/5

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

The input schema already documents both parameters with descriptions (query as required string, limit with default and max). The description says 'by keyword,' which aligns with the query parameter but adds no extra meaning beyond the schema. With 100% schema coverage, the baseline of 3 is appropriate.

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?

The description 'Search for skills by keyword' clearly specifies the verb (Search), the resource (skills), and the method (by keyword). This distinguishes it from sibling tools like list_skills, which enumerates skills without a query, and fetch_skill, which retrieves a specific skill. The purpose is unambiguous.

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

Usage Guidelines2/5

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

The description provides no explicit guidance on when to use this tool versus alternatives such as list_skills. It merely states the action without mentioning conditions, exclusions, or alternative tools. The usage context is only implied by the keyword-search behavior, not stated.

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

validate_skillB

Validate skill content for security issues

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNoSource URL for verification (optional)
contentYesSkill content to validate (required)

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations, the description carries the full burden of behavioral disclosure. It only states the validation purpose but does not disclose what happens during validation, whether it modifies data, what a security issue entails, or how results are returned.

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?

The description is a single, front-loaded sentence that clearly communicates the core function without unnecessary words. However, it is so brief that it sacrifices valuable context, which prevents a perfect score.

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

Completeness2/5

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

Given no annotations and no output schema, this simple description lacks essential context for a validation tool. It does not explain the validation process, output format, expected behavior, or how security issues are reported, making it incomplete for an agent to handle confidently.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents both parameters ('content' and optional 'url'). The description adds no specific parameter meaning beyond labeling the validation as security-focused, matching the baseline for full coverage.

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?

The description uses a specific action ('Validate') and resource ('skill content') with a clear focus ('for security issues'). It is distinct from sibling tools, which focus on listing, searching, fetching, converting, or importing skills.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. There is no mention of prerequisites, appropriate contexts, or exclusions, leaving the agent to infer usage from the tool name alone.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 8 tool updatesv1.1.1
    • First observedconvert_to_power
    • First observedconvert_to_steering
    • First observedfetch_skill
    • First observedget_leaderboard
    • First observedimport_skill
    • First observedlist_skills
    • First observedsearch_skills
    • First observedvalidate_skill

TDQS

A3.7/5.0

Scored across 8 tools

Disambiguation5/5

Each tool targets a distinct action: listing, searching, fetching, validating, converting to specific formats, and importing. Even the two conversion tools are clearly separated by their output format. The import tool is a higher-level workflow that subsumes fetch/validate/convert, but its purpose is distinct and well-described.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern with snake_case (list_skills, search_skills, get_leaderboard, fetch_skill, validate_skill, convert_to_steering, convert_to_power, import_skill). The pattern is uniform and predictable.

Tool Count5/5

With 8 tools, the server is well-scoped for its purpose of discovering, fetching, validating, converting, and importing skills. Each tool has a clear role, and the count is within the ideal range for a focused utility server.

Completeness5/5

The tool surface covers the full workflow: discovery (list, search, leaderboard), retrieval (fetch), validation, conversion (both formats), and a combined import path. No obvious gaps exist for the domain of loading and transforming skills from an external registry.

Maintenance

ActivityInactive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Enables Claude to create, edit, run, and manage reusable skills stored locally, including executing scripts with automatic dependency management and environment variables. Works across all MCP-compatible clients like Cursor, Claude Desktop, and claude.ai.
    5
    30
    MIT
  • -
    license
    Not graded
    quality
    Not graded
    maintenance
    Enables intelligent discovery and management of Claude Skills through semantic search, ratings, favorites, and community curation. Provides tools to search, upload, rate, and organize skills with natural language queries and comprehensive metadata.
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    Turns Claude-style skills (SKILL.md files with resources) into callable MCP tools for any agent. Discovers skills from a directory, exposes their instructions and resources, and can execute bundled helper scripts.
    401
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Enables AI assistants to discover, search, and install Claude Code Skills from SkillHub, with tools for semantic search, browsing, recommendations, and installation.
    5
    26
    1
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/goldzulu/skill-loader-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server