Skip to main content
Glama

Skills MCP

PyPI version License Python Versions

The Package Manager for AI Agents.

Skills MCP connects your LLM Agent (like Claude Desktop or Claude Code) to a global registry of capabilities. It allows your Agent to autonomously discover, install, and learn new skills to solve complex tasks.

Thin MCP, Fat Agent Philosophy: This tool handles the delivery of code and instructions, empowering the Agent to execute them using its own environment (e.g., uv, bash).


🚀 Features

  • Search: Find skills for specific tasks (e.g., "pdf", "excel", "diagram").

  • Install: One-click download and installation to your local machine (~/.skills).

  • Learn: Provides the Agent with the exact file structure and SKILL.md instructions.

  • Dependency Management: Works seamlessly with uv to let Agents self-manage Python environments without polluting your system.


Related MCP server: aai-gateway

📦 Installation

The recommended way to install is via uv (a fast Python package manager). It ensures the tool runs in an isolated environment.

Prerequisites

  • Python 3.10+

  • uv (Recommended)

# 1. Install uv (if you haven't already)
curl -LsSf https://astral.sh/uv/install.sh | sh

# 2. Install Skills MCP globally
uv tool install skills-mcp

(Alternatively, you can use pip, but we strongly recommend uv to avoid dependency conflicts.)


⚙️ Configuration

🖥️ Claude Desktop (GUI)

To use Skills MCP with the Claude Desktop app, update your configuration file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Add the following entry:

{
  "mcpServers": {
    "skills": {
      "command": "uv",
      "args": ["tool", "run", "skills-mcp"],
      "env": {
        "SKILLS_ROOT": "/Users/YOUR_USERNAME/.skills",
        "SKILLS_REGISTRY_URL": "https://skills.leezhu.cn/api/v1"
      }
    }
  }
}

Tip: Replace /Users/YOUR_USERNAME with your actual home directory path.

⌨️ Claude Code (CLI)

If you are using the claude command-line tool, you can install the MCP server directly via the CLI:

# Add the MCP server
claude mcp add skills -- uv tool run skills-mcp

Note on Configuration: Claude Code inherits environment variables from your shell. To set custom configurations (like a private registry URL), export them in your shell profile (~/.zshrc or ~/.bashrc):

export SKILLS_REGISTRY_URL="https://your-private-registry.com/api/v1"

Environment Variables

Variable

Description

Default

SKILLS_ROOT

Where skills are installed locally.

~/.skills

SKILLS_REGISTRY_URL

The API endpoint of the skills registry.

https://skills.leezhu.cn/api/v1

SKILLS_API_KEY

(Optional) Token for private registries.

None


💡 Usage Guide (for Agents)

Once installed, you can ask Claude to do things like:

  1. Discovery:

    "Search for a skill that can split Excel files." (Claude calls skills_search)

  2. Acquisition:

    "Install the excel-pro skill." (Claude calls skills_install)

  3. Execution:

    "Read the instructions for excel-pro and split this file." (Claude calls skills_get_details, reads the SKILL.md, installs dependencies via uv, and runs the script)


🛠️ Development

Setup

git clone https://github.com/leezhuuuuu/skills-mcp.git
cd skills-mcp

# Install dependencies
uv sync

Running Locally (StdIO Mode)

# Direct run
uv run skills-mcp

🤝 Contributing

We welcome contributions! Please feel free to submit a Pull Request.

  1. Fork the repository.

  2. Create your feature branch.

  3. Commit your changes.

  4. Push to the branch.

  5. Open a Pull Request.

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

Available Tools

4 tools
skills_get_detailsA

Read the instruction manual (SKILL.md) and file structure of a locally installed skill. Use this to learn how to use a skill after installing it.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName of the installed skill

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.3/5.0
Behavior3/5

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

No annotations, but description implies read-only by stating 'Read the instruction manual'. Lacks details on permissions or limitations, but adequate for a read operation.

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?

Two sentences, no redundancy. Action stated first, then usage guidance. Every sentence adds essential information.

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?

With output schema present, no need to describe return values. Covers purpose, usage, and parameter sufficiently for a simple read tool.

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

Parameters4/5

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

Schema coverage 100% with description 'Name of the installed skill'. Description adds value by specifying 'locally installed' and context of use, reinforcing parameter's role.

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?

Clear verb+resource: 'Read the instruction manual (SKILL.md) and file structure of a locally installed skill.' Differentiates from siblings (install, list, search) by focusing on post-installation learning.

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

Usage Guidelines4/5

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

Explicit usage context: 'Use this to learn how to use a skill after installing it.' Implies not for installation or listing, though no explicit when-not-to-use.

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

skills_installB

Download and install a skill to the local environment.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesExact name of the skill
forceNoOverwrite if exists

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior2/5

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

No annotations provided, yet the description only says 'download and install' without detailing side effects, default overwrite behavior, network requirements, or error handling. Additional behavioral context is needed.

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?

A single sentence conveying the core action without any superfluous words. Perfectly 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?

Despite having an output schema, the description does not mention what the tool returns or any success/failure indicators. It omits important context about the installation process and outcome.

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 coverage is 100% and parameter descriptions are adequate. The tool description adds the overall action context but does not enhance parameter meaning beyond what the schema 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 it downloads and installs a skill, using specific verb and resource. It distinguishes from siblings which are about viewing and searching 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?

No guidance on when to use this tool versus alternatives, no mention of prerequisites or when to apply the force parameter. The description is purely functional.

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

skills_listA

List all external Agent Skills currently installed in the local environment. Call this tool when the user asks 'what skills do I have' or 'show my skills', to complement your knowledge of built-in tools.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.3/5.0
Behavior3/5

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

No annotations provided, so description carries full burden. It states the core behavior (listing installed external skills) but omits details like authentication needs, rate limits, or whether the listing is comprehensive. However, for a 0-parameter read operation, this is minimally adequate.

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?

Two succinct sentences, front-loaded with purpose followed by usage context. No redundant or vague language.

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 parameterless tool with a documented output schema, the description fully covers purpose and usage triggers. No missing information for the agent to select or invoke it.

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

Parameters4/5

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

Input schema has zero parameters with 100% schema coverage, so baseline is 4. Description adds no parameter details, but none are needed.

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?

Clearly states the action 'list' and resource 'external Agent Skills currently installed', with additional context that it complements built-in tools, distinguishing it from siblings like skills_search.

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

Usage Guidelines4/5

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

Explicitly gives example user queries ('what skills do I have' or 'show my skills') as triggers. While it doesn't enumerate when not to use it, the context strongly implies it's for listing all installed skills, and reliance on output schema and sibling names covers gaps.

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.

  1. 4 tool updates
    • First observedskills_get_details
    • First observedskills_install
    • First observedskills_list
    • First observedskills_search

TDQS

A3.9/5.0

Scored across 4 tools

Disambiguation5/5

Each tool has a clear, distinct purpose: installing, listing, searching, or getting details of skills. There is no ambiguity between them.

Naming Consistency4/5

All tools start with 'skills_' and use a verb pattern, but 'skills_get_details' mixes verb_noun while others are single verbs. This is a minor inconsistency.

Tool Count5/5

Four tools is a concise and well-scoped set for managing skills, covering the essential operations without being too few or excessive.

Completeness3/5

The set covers install, list, search, and details, but lacks an uninstall or remove tool, which is a notable gap for full lifecycle management.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Connects AI coding agents to the SkillsMP marketplace, allowing users to search, read, and install over 8,000 community-made skills. It enables agents to gain new capabilities either through on-the-spot instruction or permanent installation without requiring an API key.
    5
    12 npm
    10
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Unified MCP and skill management gateway for AI agents, enabling tool discovery, installation, and sharing with 99% context token savings.
    8
    34 npm
    99
    Apache 2.0
  • A
    license
    A
    quality
    B
    maintenance
    Enables AI agents to autonomously search, evaluate, and install skills from the skills.sh catalog.
    4
    16 npm
    ISC
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables AI agents to search and retrieve over 89K skills on-demand at runtime, eliminating the need to manually install skills upfront.
    37 PyPI
    127
    MIT