wondel-skills-mcp

Read-only MCP server over 50 book-based agent skills: routes a task to the right framework.

사용해야 할까요

품질 및 안전성

A
설명 품질
100%
스키마 완전성
100%
이름 품질
96%
오염 위험
100%
권한 일치
100%
프로토콜 준수
100%

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~2,249토큰 (도구 정의)
~4.3 KB일반적인 응답 크기
중간 정도의 주의 영향 (128k 컨텍스트의 1.76%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "wondel-skills-mcp": {
      "url": "https://skills.wondel.ai/mcp"
    }
  }
}

원격 엔드포인트

https://skills.wondel.ai/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (5)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢search_skills(query, kind, category, limit, context)

Search 51 book-based agent skills and 14 guided journeys by keyword or phrase. Each skill is matched against its own trigger text, so plain task language works ("my UI looks amateur", "pricing", "dark mode"). Returns compact hits, each quoting the line that matched. Use recommend_skills instead when you have a task rather than a keyword.

입력 스키마

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 2,
      "description": "Keyword, phrase, slug or plain description of the problem"
    },
    "kind": {
      "description": "Restrict to single skills or guided journeys",
      "type": "string",
      "enum": [
        "skill",
        "journey",
        "all"
      ]
    },
    "category": {
      "description": "Restrict to one domain",
      "type": "string",
      "enum": [
        "design",
        "marketing",
        "sales",
        "product",
        "strategy",
        "team",
        "code",
        "architecture"
      ]
    },
    "limit": {
      "description": "Maximum hits (default 8)",
      "type": "integer",
      "minimum": 1,
      "maximum": 20
    },
    "context": {
      "type": "string",
      "description": "Why are you calling this tool? One line on the user's actual task, in their words — not a restatement of the tool name."
    }
  },
  "required": [
    "query",
    "context"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

출력 스키마

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string"
    },
    "total": {
      "type": "number"
    },
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "slug": {
            "type": "string"
          },
          "kind": {
            "type": "string",
            "enum": [
              "skill",
              "journey"
            ]
          },
          "name": {
            "type": "string"
          },
          "oneLiner": {
            "type": "string"
          },
          "category": {
            "type": "string"
          },
          "whyMatch": {
            "type": "string"
          },
          "updated": {
            "type": "string"
          },
          "canonical": {
            "type": "string"
          },
          "install": {
            "type": "string"
          }
        },
        "required": [
          "slug",
          "kind",
          "name",
          "oneLiner",
          "category",
          "whyMatch",
          "updated",
          "canonical",
          "install"
        ],
        "additionalProperties": false
      }
    },
    "next": {
      "type": "string"
    }
  },
  "required": [
    "query",
    "total",
    "results",
    "next"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢recommend_skills(task, stack, phase, max, context)

Route a task to the right skills. Describe the job in your own words and this returns which skills to load first, which to skip whenever a skill's own "not for" line rules it out for this task — quoted verbatim — and a guided journey when the task spans a whole project rather than one step. This is the tool to reach for first.

입력 스키마

{
  "type": "object",
  "properties": {
    "task": {
      "type": "string",
      "minLength": 4,
      "description": "The job to be done, in your own words — a full sentence beats a keyword"
    },
    "stack": {
      "description": "Language, framework or platform, if it narrows the answer",
      "type": "string"
    },
    "phase": {
      "description": "Where in the work you are",
      "type": "string",
      "enum": [
        "audit",
        "build",
        "launch"
      ]
    },
    "max": {
      "description": "How many skills to return (default 3)",
      "type": "integer",
      "minimum": 1,
      "maximum": 6
    },
    "context": {
      "type": "string",
      "description": "Why are you calling this tool? One line on the user's actual task, in their words — not a restatement of the tool name."
    }
  },
  "required": [
    "task",
    "context"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

출력 스키마

{
  "type": "object",
  "properties": {
    "task": {
      "type": "string"
    },
    "loadFirst": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "slug": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "why": {
            "type": "string"
          }
        },
        "required": [
          "slug",
          "name",
          "why"
        ],
        "additionalProperties": false
      }
    },
    "then": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "slug": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "why": {
            "type": "string"
          }
        },
        "required": [
          "slug",
          "name",
          "why"
        ],
        "additionalProperties": false
      }
    },
    "avoid": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "slug": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "reason": {
            "type": "string"
          }
        },
        "required": [
          "slug",
          "name",
          "reason"
        ],
        "additionalProperties": false
      }
    },
    "journey": {
      "type": "object",
      "properties": {
        "slug": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "why": {
          "type": "string"
        },
        "phases": {
          "type": "number"
        }
      },
      "required": [
        "slug",
        "name",
        "why",
        "phases"
      ],
      "additionalProperties": false
    },
    "next": {
      "type": "string"
    }
  },
  "required": [
    "task",
    "loadFirst",
    "then",
    "avoid",
    "next"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢get_skill(slug, sections, context)

Metadata for one skill or journey: its definition, when to use it, when not to, and related slugs. Deliberately cheap (~300 tokens) so you can check a candidate before committing context to it. Pass sections to widen, or sections:["all"] for the whole page. This does not return the skill instructions — load_skill does.

입력 스키마

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "description": "Skill or journey slug, e.g. \"refactoring-ui\" or \"create-business\""
    },
    "sections": {
      "description": "Which parts to return. Default: definition, use_when, not_for, related. \"all\" returns the full page.",
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "definition",
          "use_when",
          "not_for",
          "key_concepts",
          "prompts",
          "faqs",
          "book",
          "related",
          "phases",
          "all"
        ]
      }
    },
    "context": {
      "type": "string",
      "description": "Why are you calling this tool? One line on the user's actual task, in their words — not a restatement of the tool name."
    }
  },
  "required": [
    "slug",
    "context"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

출력 스키마

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string"
    },
    "kind": {
      "type": "string",
      "enum": [
        "skill",
        "journey"
      ]
    },
    "name": {
      "type": "string"
    },
    "category": {
      "type": "string"
    },
    "oneLiner": {
      "type": "string"
    },
    "updated": {
      "type": "string"
    },
    "canonical": {
      "type": "string"
    },
    "source": {
      "type": "string"
    },
    "install": {
      "type": "string"
    },
    "definition": {
      "type": "string"
    },
    "useWhen": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "notFor": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "keyConcepts": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string"
          },
          "description": {
            "type": "string"
          }
        },
        "required": [
          "title",
          "description"
        ],
        "additionalProperties": false
      }
    },
    "examplePrompts": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "faqs": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "question": {
            "type": "string"
          },
          "answer": {
            "type": "string"
          }
        },
        "required": [
          "question",
          "answer"
        ],
        "additionalProperties": false
      }
    },
    "book": {
      "type": "object",
      "properties": {
        "title": {
          "type": "string"
        },
        "author": {
          "type": "string"
        },
        "url": {
          "type": "string"
        }
      },
      "required": [
        "title",
        "author"
      ],
      "additionalProperties": false
    },
    "related": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "phases": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "n": {
            "type": "number"
          },
          "skillSlug": {
            "type": "string"
          },
          "question": {
            "type": "string"
          },
          "artifact": {
            "type": "string"
          },
          "gate": {
            "type": "boolean"
          }
        },
        "required": [
          "n",
          "skillSlug",
          "question",
          "artifact",
          "gate"
        ],
        "additionalProperties": false
      }
    },
    "next": {
      "type": "string"
    }
  },
  "required": [
    "slug",
    "kind",
    "name",
    "category",
    "oneLiner",
    "updated",
    "canonical",
    "source",
    "install",
    "next"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢load_skill(slug, part, context)

The skill's actual instructions — the upstream SKILL.md, ready to follow in this session with nothing installed. The response also lists the skill's reference files with their token cost, so you can pull deeper material on demand by calling again with part set to a filename.

입력 스키마

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "description": "Skill or journey slug"
    },
    "part": {
      "description": "\"core\" (default) for SKILL.md, or a reference filename from a previous response",
      "type": "string"
    },
    "context": {
      "type": "string",
      "description": "Why are you calling this tool? One line on the user's actual task, in their words — not a restatement of the tool name."
    }
  },
  "required": [
    "slug",
    "context"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢get_journey(slug, goal, context)

One guided journey as a phase plan: the ordered skills, the decision question each phase answers, the docs/ file it writes, and which phases are go/no-go gates. Pass slug for a known journey, or goal to have one picked.

입력 스키마

{
  "type": "object",
  "properties": {
    "slug": {
      "description": "Journey slug, e.g. \"grow-website\"",
      "type": "string"
    },
    "goal": {
      "description": "What you are trying to achieve, if you do not know which journey fits",
      "type": "string"
    },
    "context": {
      "type": "string",
      "description": "Why are you calling this tool? One line on the user's actual task, in their words — not a restatement of the tool name."
    }
  },
  "required": [
    "context"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

출력 스키마

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string"
    },
    "name": {
      "type": "string"
    },
    "tagline": {
      "type": "string"
    },
    "definition": {
      "type": "string"
    },
    "phases": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "n": {
            "type": "number"
          },
          "skillSlug": {
            "type": "string"
          },
          "skillName": {
            "type": "string"
          },
          "question": {
            "type": "string"
          },
          "artifact": {
            "type": "string"
          },
          "gate": {
            "type": "boolean"
          }
        },
        "required": [
          "n",
          "skillSlug",
          "skillName",
          "question",
          "artifact",
          "gate"
        ],
        "additionalProperties": false
      }
    },
    "artifacts": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "useWhen": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "notFor": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "install": {
      "type": "string"
    },
    "canonical": {
      "type": "string"
    },
    "next": {
      "type": "string"
    }
  },
  "required": [
    "slug",
    "name",
    "tagline",
    "definition",
    "phases",
    "artifacts",
    "useWhen",
    "notFor",
    "install",
    "canonical",
    "next"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 5개
검증됨버전이 기록되지 않음도구 5개
검증됨버전이 기록되지 않음도구 5개