Skip to main content
Glama
amazingashis

skills-mcp-server

by amazingashis

skills-mcp-server

Cursor 스타일의 스킬 팩(SKILL.md 트리)을 모든 MCP 클라이언트에 노출하는 소규모 Model Context Protocol(MCP) 서버입니다. 공식 TypeScript SDK를 사용하며 다음을 지원합니다:

  • stdio — 로컬 서브프로세스 모드(Cursor / Claude Desktop이 명령을 실행하는 일반적인 방식).

  • Streamable HTTP — **POST /mcp**에서의 원격 모드(상태 비저장), MCP 2025-03-26+.

  • Legacy SSE — 이전 HTTP+SSE 전송을 기대하는 클라이언트(많은 Cursor 원격 설정 포함)를 위한 GET /sse + POST /messages?sessionId=....

이 패키지는 클라이언트 독립적입니다. MCP를 지원하는 모든 클라이언트에서 사용할 수 있습니다.

기능 (MCP 인터페이스)

인터페이스

목적

Resources

skills://skill/{skillId} — 템플릿 나열을 통해 검색; 본문은 Markdown 형식.

Tools

list_skills, get_skill, search_skills

Prompts

skill_context — 사용자 메시지에 스킬을 래핑

스킬 ID는 SKILLS_ROOT에서 SKILL.md를 포함하는 폴더까지의 POSIX 경로입니다(루트 레벨 파일은 ID _root 사용).

Related MCP server: MCP Skills Server

빠른 시작 (로컬 stdio)

npm install
npm run build

기본 **skills/**에는 이 저장소의 **.cursor/skills**에서 복사된 팩이 포함되어 있습니다. 필요에 따라 SKILL.md가 포함된 폴더를 더 추가하세요. 다음을 실행하세요:

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

Cursor MCP 설정에서 MCP_TRANSPORT가 설정되지 않았거나 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"
      }
    }
  }
}

원격 (호스팅 — 로컬 stdio가 없는 Cursor)

무료 티어 호스트(Render, Railway, Fly, Koyeb 등), 환경 변수 및 **url + headers가 포함된 Cursor mcp.json**에 대해서는 **HOSTING_AND_CURSOR.md**를 참조하세요.

엔드포인트(동일 호스트, HTTPS):

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

  • Legacy SSE (Cursor 원격에 가장 적합한 경우가 많음): https://your-host/sse (메시지는 /messages로 전송)

상태 확인: GET https://your-host/health. 환경 변수 참조: env.example.

Claude / 기타 클라이언트

stdio 또는 Streamable HTTP를 지원하는 모든 MCP 클라이언트는 동일한 서버를 연결할 수 있습니다. 공급업체의 "원격 MCP" 또는 "HTTP MCP" 항목에 HTTPS URL과 (활성화된 경우) 베어러 토큰을 구성하세요.

문서

  • HOSTING_AND_CURSOR.md — 무료 호스팅, 환경 변수, Cursor 원격 MCP(url / SSE 대 스트리밍).

  • DEPLOYMENT.md — Docker, Compose, 리버스 프록시, 운영 체크리스트.

라이선스

MIT.

Available Tools

3 tools
get_skillA

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

ParametersJSON Schema
NameRequiredDescriptionDefault
skill_idYesSkill id as returned by list_skills

TDQS

A3.5/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 full burden. It only states 'Load the full SKILL.md contents' with no details on side effects, authentication needs, or what 'full contents' entails (e.g., format, size limits).

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?

Single sentence, front-loaded, no wasted words. Perfectly concise for the information it conveys.

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 low complexity (1 param, no nested objects), the description is adequate but lacks guidance on return format or constraints, which would be helpful since there is no output schema.

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% and the description adds no extra meaning beyond the schema's existing explanation.

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 action ('Load the full SKILL.md contents') and the resource ('for a skill id'), distinguishing it from sibling tools like list_skills and search_skills.

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 usage when needing the full contents of a specific skill, but no explicit guidance on when to use versus alternatives or 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.

list_skillsA

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

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations provided, the description carries full burden. It discloses that no filesystem paths are exposed, implying safety. However, it does not mention auth requirements, rate limits, or other behavioral aspects. For a simple read operation, this is sufficient.

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 two sentences, front-loaded with the primary purpose, and adds a concise safety note. Every word earns its place with no fluff.

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?

Given the tool's extreme simplicity (no params, no output schema), the description adequately explains the return fields and a key behavioral trait. It provides sufficient context for an agent to invoke correctly, despite not contrasting with siblings.

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?

No parameters exist; schema coverage is 100%. According to guidelines, zero parameters yield a baseline of 4. The description adds no parameter info as there are none, which 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 states it returns a manifest of available skills with specific fields (id, title, description teaser). It uses a specific verb 'Return' and resource 'manifest of available skills', and implicitly distinguishes from siblings like get_skill (single) and search_skills (filtered).

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 does not explicitly state when to use this tool versus alternatives (get_skill, search_skills). The context implies it is for listing all skills, but no guidance on when to choose it over the others is provided.

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

search_skillsA

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

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesCase-insensitive substring match

TDQS

A3.7/5.0
Behavior2/5

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

No annotations provided, so description must disclose behavioral traits. It only describes the operation as filtering without mentioning safety (read-only), pagination, error handling, or what happens with no matches. Insufficient for a tool lacking annotations.

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?

Single sentence of 9 words, front-loaded with verb and resource, no redundant information. Efficient and to the point.

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?

Tool has only one parameter and no output schema. While the description covers input, it fails to explain return values (e.g., what fields are returned, pagination). For a straightforward search, this is adequate but not complete.

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 is 100% with a single parameter 'query' described as 'Case-insensitive substring match.' The description adds value by specifying which fields (id, title, description) are searched, going beyond the schema.

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?

Description clearly states 'Filter skills by free-text query over id, title, and description.' It specifies the verb (filter), resource (skills), and scope (fields searched), distinguishing from sibling tools get_skill and list_skills.

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?

No explicit comparison to siblings or guidance on when to use vs alternatives. However, the context signals indicate siblings exist, and the purpose implies it's for searching, not retrieving a single skill or listing all.

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. 3 tool updatesv1.0.0
    • First observedget_skill
    • First observedlist_skills
    • First observedsearch_skills

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 issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Converts AI Skills (following Claude Skills format) into MCP server resources, enabling LLM applications to discover, access, and utilize self-contained skill directories through the Model Context Protocol. Provides tools to list available skills, retrieve skill details and content, and read supporting files with security protections.
    3
    29
    Apache 2.0
  • A
    license
    A
    quality
    C
    maintenance
    MCP server that serves agent skills (SKILL.md bundles) to any MCP client, exposing them via tools and resources for tool-oriented and resource-aware clients.
    3
    4 npm
    ISC
  • A
    license
    Not graded
    quality
    C
    maintenance
    Serves SKILL.md-based skills as MCP resources and tools over streamable HTTP, enabling remote discovery and retrieval of skill files with full YAML frontmatter parsing.
    Apache 2.0