Skip to main content
Glama
skills-mcp-server

skills-mcp-server

by amazingashis

skills-mcp-server

A small Model Context Protocol (MCP) server that exposes Cursor-style skill packs (SKILL.md trees) to any MCP client. It uses the official TypeScript SDK and supports:

  • stdio — local subprocess mode (typical for Cursor / Claude Desktop spawning a command).

  • Streamable HTTP — remote mode on POST /mcp (stateless), MCP 2025-03-26+.

  • Legacy SSE — GET /sse + POST /messages?sessionId=... for clients (including many Cursor remote setups) that expect the older HTTP+SSE transport.

This package is client-agnostic: anything that speaks MCP can use it.

Features (MCP surfaces)

Surface

Purpose

Resources

skills://skill/{skillId} — discover via template listing; bodies are Markdown.

Tools

list_skills, get_skill, search_skills

Prompts

skill_context — wraps a skill in a user message

Skill ids are the POSIX path from SKILLS_ROOT to the folder containing SKILL.md (root-level file uses id _root).

Related MCP server: skillforge

Quick start (local stdio)

npm install
npm run build

Default skills/ includes packs copied from .cursor/skills in this repo. Add more folders with SKILL.md as needed. Run:

npx skills-mcp-server
# or: node dist/main.js

In Cursor MCP settings, use command-based config with MCP_TRANSPORT unset or stdio:

{
  "mcpServers": {
    "skills": {
      "command": "node",
      "args": ["C:/absolute/path/to/skills-mcp-server/dist/main.js"],
      "env": {
        "SKILLS_ROOT": "C:/absolute/path/to/your/skills"
      }
    }
  }
}

Remote (hosted — Cursor without local stdio)

Use HOSTING_AND_CURSOR.md for free-tier hosts (Render, Railway, Fly, Koyeb, etc.), env vars, and Cursor mcp.json with url + headers.

Endpoints (same host, HTTPS):

  • Streamable HTTP: https://your-host/mcp

  • Legacy SSE (often best for Cursor remote): https://your-host/sse (messages go to /messages)

Health: GET https://your-host/health. Env reference: env.example.

Claude / other clients

Any MCP client that supports stdio or Streamable HTTP can attach the same server. Configure the vendor’s “remote MCP” or “HTTP MCP” entry with your HTTPS URL and bearer token if enabled.

Documentation

  • HOSTING_AND_CURSOR.md — free hosting, env vars, Cursor remote MCP (url / SSE vs streamable).

  • DEPLOYMENT.md — Docker, Compose, reverse proxy, operational checklist.

License

MIT.

Available Tools

3 tools
get_skillA

Load the full SKILL.md contents for a skill id.

Inputs: skill_id (required).

list_skillsA

Return a manifest of available skills (id, title, description teaser). No filesystem paths are exposed.

Inputs: no named parameters.

search_skillsA

Filter skills by free-text query over id, title, and description.

Inputs: query (required).

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4.1/5.0

    Scored across 3 tools

    Disambiguation5/5

    Each tool has a clearly distinct purpose: retrieving full skill content by ID, listing all skills, and searching skills by query. No overlap or ambiguity.

    Naming Consistency5/5

    All tool names follow the verb_noun pattern (get_skill, list_skills, search_skills), making them predictable and easy to understand.

    Tool Count5/5

    Three tools is well-scoped for a skills server: listing, searching, and retrieving full details. No unnecessary extras or missing essentials.

    Completeness5/5

    The tool set covers the expected read-only operations for a skills repository: listing all, searching, and getting full content. No apparent gaps for its purpose.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers