Skip to main content
Glama
skill-retrieval-mcp

skill-retrieval-mcp

by JayCheng113

skill-retrieval-mcp

PyPI Python License CI

라이선스 검증을 거친 374개의 에이전트 스킬 코퍼스에 대한 의미론적 검색을 제공하며, MCP를 통해 코딩 에이전트에 제공됩니다. 로컬에서 실행되며, 수 밀리초 내에 응답하고, API 호출을 전혀 하지 않습니다.

Claude Code, Codex CLI, Gemini CLI, Cursor, OpenClaw, Hermes 및 모든 MCP 호환 에이전트와 함께 작동합니다.

You: "Deploy this service to GKE"

─── Step 1: the agent searches ───────────────────────────────────────

Agent: search_skills("deploy a containerised service on kubernetes")   ← 6ms
     → 5 results (summaries only, no full instructions):
       1. "gke-service-networking"   (0.56) - Gateway API, Ingress, Cloud Armor, NEGs, managed SSL
       2. "gke-workload-scaling"     (0.51) - HPA and VPA for GKE workloads
       3. "gke-manifest-generation"  (0.51) - Production-ready Kubernetes YAML for Autopilot/Standard
       4. "gke-app-onboarding"       (0.46) - Containerizing and deploying an app to GKE for the first time
       5. "gke-basics"               (0.44) - Cluster provisioning, credentials, Autopilot vs Standard

─── Step 2: it reads the descriptions and picks #4, not #1 ───────────

Agent: get_skill("gke-app-onboarding")
     → gets the full guide: containerization, manifests, migration path
     → writes the Dockerfile and deployment.yaml

─── Step 3: a new need emerges mid-task ──────────────────────────────

Agent: # the service has to survive traffic spikes — search again
       search_skills("autoscale pods on cpu and memory")               ← 6ms
     → "gke-workload-scaling" (0.61) - Horizontal and Vertical Pod Autoscaler for GKE
     → reads the guide, adds the HPA manifest

두 검색 모두 배포된 코퍼스의 실제 출력이며, 예시가 아닙니다. 그 안에 있는 세 가지가 전체 설계의 핵심입니다:

  • 검색은 요약을 반환하지, 지침을 반환하지 않습니다. 다섯 개의 요약은 수백 토큰에 불과하며, 에이전트가 실제로 읽는 스킬 하나는 약 2,400 토큰입니다.

  • 상위 결과가 항상 올바른 것은 아닙니다. 에이전트가 4번째 결과를 선택한 이유는 그 설명에 처음으로라는 표현이 있기 때문입니다 — 이는 어떤 랭킹도 판단할 수 없는 판단입니다. 그래서 검색은 승자를 주입하는 대신 설명을 전달합니다.

  • 에이전트는 작업이 진행됨에 따라 다시 검색합니다. "autoscale"이나 "pods"는 사용자가 요청한 내용에 나타나지 않았습니다.

설치

pip install "skill-retrieval-mcp[local,hf]"
skill-mcp pull --include-index      # corpus + pre-built vector index
skill-mcp init                      # detect and register with your agents

약 2분 정도 소요되며, 대부분 다운로드 시간입니다. init는 설치된 에이전트를 찾아 해당 설정을 작성해 줍니다.

init는 .mcp.json, ~/.gemini/settings.json, .cursor/mcp.json 및 ~/.codex/config.toml을 직접 작성합니다. OpenClaw와 Hermes의 경우 자체 mcp add를 호출하는데, 두 도구 모두 MCP 서버를 더 큰 수동 편집 설정 안에 보관하므로 여기서 다시 직렬화하면 주석이 손실될 수 있기 때문입니다. DeepSeek Harness에는 mcp add가 없으므로 init는 붙여넣을 행을 출력합니다.

에이전트가 누락된 경우 다음 항목을 직접 등록하세요:

{
  "mcpServers": {
    "skill-retrieval": {
      "command": "/absolute/path/to/skill-mcp",
      "args": ["--data-dir", "/absolute/path/to/data-dir", "serve"]
    }
  }
}

두 가지 세부 사항이 중요하며, 둘 다 축약하면 조용히 실패합니다:

  • command는 절대 경로여야 하며, skill-mcp가 아닙니다. 에이전트는 세션에서 이름을 자체적으로 해석하는데, 해당 세션의 PATH에는 설치한 venv나 pipx 디렉토리가 포함되지 않는 경우가 많습니다. which skill-mcp로 값을 확인하세요.

  • --data-dir는 전체를 명시해야 하며, serve 앞에 와야 합니다. ~는 에이전트가 서버를 시작하는 환경에서 다시 해석되며, 선택한 디렉토리 내부에 설정이 저장되므로 다른 방법으로는 복구할 수 없습니다. 잘못된 디렉토리에서 시작된 서버는 정상적으로 시작되고, 도구를 나열하며, 모든 검색에 빈 결과를 반환합니다. skill-mcp status는 사용할 해석된 디렉토리를 출력합니다.

Related MCP server: skill-curator-mcp

검색이 설치보다 나은 이유

수동으로 스킬을 설치하는 것은 확장이 필요해질 때까지는 잘 작동합니다:

  • 무엇이 존재하는지 모릅니다. 우연히 발견한 10개를 설치합니다. 나머지는 에이전트가 추측합니다.

  • 이름을 알 수 없는 것은 설치할 수 없습니다. 작업 중간에 에이전트가 "OIDC 기반 PyPI 게시"를 위한 스킬이 필요해집니다 — 추가할 생각조차 하지 못했을 것입니다.

  • 스킬 라이브러리는 프롬프트에 들어가지 않습니다. 지연 로딩을 해도 모든 스킬의 이름과 설명이 모델 앞에 놓입니다: 이 코퍼스의 경우 하나도 읽기 전에 37K 토큰입니다. 지침은 또 960K입니다.

수동 설치

skill-retrieval-mcp

규모

수십 개, 성실하다면

8개 업스트림 저장소의 374개

발견

각각을 찾아 설치

에이전트가 필요에 따라 검색

선택

사전에 선택

에이전트가 작업별로 선택

매칭

설명에 대한 이름 매칭

의미론적, 수 밀리초, 로컬 FAISS

출처

우연히 클론한 것

모든 스킬에 저장소, URL, SPDX 라이선스 포함

에이전트가 작업을 표현하는 방식으로 구성된 43개의 보류 쿼리에서 — 스킬의 자체 이름을 반복하지 않음 — 배포된 코퍼스는 1순위 81.4%, 상위 3위 내 90.7% 의 정확도를 보입니다. 하네스는 저장소에 있으며, 측정 내용과 결과는 dev.md를 참조하세요.

코퍼스 구성

라이선스를 확인한 후 가져온 8개 저장소의 374개 스킬:

각 스킬은 코드 예제, 함정, 권장 사항이 포함된 단계별 가이드입니다 — 한 줄짜리가 아닙니다. 중앙값은 약 9,600자입니다.

모든 행에는 출처 저장소, 업스트림 URL, SPDX 라이선스가 기록되어 있어, 반환된 모든 것을 추적하고 출처를 확인할 수 있습니다. 재배포를 허용하는 라이선스가 없는 저장소는 내용이 아무리 좋아도 가져오지 않습니다.

skill-mcp status는 로컬에 있는 내용을 보여줍니다.

도구

도구

기능

search_skills

의미론적 검색 — 자연어로 필요한 것을 설명하세요

keyword_search

정확한 일치 — 도구 이름, 오류 메시지, CLI 명령

get_skill

전체 지침 가져오기 — 검색 후 호출

list_categories

사용 가능한 도메인 및 개수 탐색

검색은 요약만 반환합니다. 에이전트는 실제로 원하는 스킬에 대해 get_skill을 호출하며, 여기서 토큰 절약이 발생합니다.

자신의 스킬 추가

<!-- ~/my-skills/deploy-checklist/SKILL.md -->
---
name: "deploy-checklist"
description: "Pre-deployment verification checklist for production releases"
tags: ["deployment", "production", "checklist"]
---

## Steps

1. Run full test suite...
2. Check database migrations...
skill-mcp import --source directory --path ~/my-skills/

인덱스는 자동으로 업데이트됩니다 — 새 스킬은 즉시 검색 가능하며, 새 스킬만 임베딩됩니다. 여러 소스를 일괄 가져오기할 때 빌드 전에 건너뛰려면 --no-index를 전달하세요. 스킬은 코퍼스와 병합되며, 중복 제거는 자동입니다.

설정

모든 것은 하나의 데이터 디렉토리(기본값 ~/.skill-mcp)에 저장됩니다:

~/.skill-mcp/
├── config.yaml
├── skills.db          # SQLite + FTS5
└── index/             # FAISS

전역 --data-dir 플래그 또는 SKILL_MCP_DATA_DIR로 다른 위치를 지정하세요. 플래그는 그룹에 속하므로 서브커맨드 앞에 와야 합니다:

skill-mcp --data-dir /srv/skills pull

임베딩 백엔드

기본값은 sentence-transformers/all-MiniLM-L6-v2 — 로컬, 무료, API 키 불필요, 사전 빌드된 인덱스가 이 모델로 구축되었습니다.

백엔드

사전 빌드 인덱스

필요 사항

sentence-transformers (기본)

예

없음

openai

로컬 빌드

OPENAI_API_KEY

ollama

로컬 빌드

Ollama 실행 중

인덱스는 빌드한 모델에만 유효하므로, 전환 시 재빌드가 필요합니다:

# set backend: openai, model: text-embedding-3-large in config.yaml, then
skill-mcp build-index --backend openai

CLI 참조

skill-mcp [--data-dir DIR] [--log-level LEVEL] COMMAND [ARGS]

  init [--data-dir DIR] [--no-register]        Set up the data directory, register with agents
  pull [--replace] [--include-index]           Download the corpus from HuggingFace
  import --source SOURCE --path PATH           Import your own skills
       [--no-index]
  build-index [--backend B] [--model M]        Build or update the vector index
       [--force]
  serve [--transport stdio|sse]                Start the MCP server
  search QUERY [--k N]                         Search from the terminal
  status                                       Show what is loaded
  dedup                                        Remove cross-source duplicates

기여

이슈와 풀 리퀘스트는 github.com/JayCheng113/skill-retrieval-mcp에서 환영합니다. dev.md는 아키텍처와 설계 결정의 근거(시도하고 거부한 내용 포함)를 문서화합니다 — 사소하지 않은 변경 전에 읽어보세요.

코퍼스에 저장소를 제안하려면 라이선스와 현재 374개가 다루지 않는 내용에 대한 근거를 포함한 이슈를 여세요. 기준은 dev.md에 있습니다: 재배포를 허용하는 라이선스와 스킬이 실제로 쿼리에서 승리한다는 증거.

git clone https://github.com/JayCheng113/skill-retrieval-mcp
cd skill-retrieval-mcp
pip install -e ".[all,dev]"
pytest tests/ -v    # 240 tests, ~6s

라이선스

MIT — LICENSE 참조.

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
    10 npm
    10
    MIT
  • A
    license
    Not graded
    quality
    F
    maintenance
    Enables AI agents to intelligently match tasks to skills through semantic embeddings, track skill effectiveness, detect skill gaps, and discover new skills from external sources.
    Apache 2.0
  • A
    license
    A
    quality
    C
    maintenance
    Enables AI agents to autonomously search, evaluate, and install skills from the skills.sh catalog.
    4
    20 npm
    ISC