辅助调用skills的MCP工具
基于Model Context Protocol (MCP)的技能管理服务器,提供技能的发现、展示和调用功能。包括列出所有可用技能以及调用指定技能并返回详细的使用方法。
MCP 服务配置
复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用
{
"mcpServers": {
"skills": {
"args": [
"--directory",
"\u003cPROJECT_PATH\u003e",
"run",
"python",
"server.py"
],
"command": "uv"
}
}
}
服务介绍
English Version: README_en.md
MCP Skills Server
基于 Model Context Protocol (MCP) 的技能管理服务器,提供技能的发现、展示和调用功能。
功能特性
- 📚 list_skills - 展示所有可用技能的描述信息
- 🔧 use_skill - 调用指定技能并返回详细使用方法
安装
使用 uv 管理虚拟环境和依赖:
# 安装依赖(如果尚未安装)
uv sync
配置
在 MCP 客户端中配置
将以下配置添加到你的 MCP 客户端配置文件中(如 Claude Desktop 配置):
Windows 配置:
{
"mcpServers": {
"skills": {
"command": "uv",
"args": ["--directory", "<PROJECT_PATH>", "run", "python", "server.py"],
"cwd": "<PROJECT_PATH>"
}
}
}
或使用已激活的虚拟环境:
{
"mcpServers": {
"skills": {
"command": "<PROJECT_PATH>/.venv/Scripts/python",
"args": ["<PROJECT_PATH>/server.py"]
}
}
}
Unix/Mac 配置:
{
"mcpServers": {
"skills": {
"command": "uv",
"args": ["--directory", "<PROJECT_PATH>", "run", "python", "server.py"]
}
}
}
注意: 将
<PROJECT_PATH>替换为实际的项目路径。
安全说明
- 技能名称仅允许字母、数字、连字符(
-)和下划线(_) - 自动阻止路径遍历攻击(如
../等) - 错误信息经过处理,不会泄露内部路径
使用方法
工具 1: list_skills
列出所有可用技能的基本信息。
调用示例:
list_skills()
返回内容:
- 技能名称
- 技能描述
- 技能主页
- 使用场景简介
工具 2: use_skill
调用指定技能,获取详细的使用说明。
参数:
skill_name(必需): 技能名称,如 "weather"return_path(可选): 是否返回技能目录的绝对路径,默认false。当技能包含 Python 脚本或其他可执行文件时,设置为true以获取路径信息。
调用示例:
use_skill(skill_name="weather")
use_skill(skill_name="weather", return_path=true) // 返回技能目录路径,用于执行脚本
返回内容:
- 完整的 SKILL.md 文件内容
- 当
return_path=true时,额外返回:- 技能目录的绝对路径
- SKILL.md 文件的完整路径
技能目录结构
skills/
└── weather/
└── SKILL.md
每个技能是一个独立的文件夹,包含一个 SKILL.md 文件。
SKILL.md 标准格式
---
name: skill_name
description: "技能的简短描述"
homepage: https://example.com
metadata:
openclaw:
emoji: "🔧"
requires:
bins: ["command1", "command2"]
---
# Skill Title
## When to Use
✅ 使用场景列表
## Commands
```bash
# 命令示例
command --option value
Notes
- 注意事项
## 运行和测试
### 使用 uv 运行
```bash
# 直接运行 MCP 服务器
uv run python server.py
# 或者使用项目脚本入口
uv run skills-mcp
测试解析器
uv run python skill_parser.py
添加新技能
- 在
skills目录下创建新文件夹 - 按照标准格式创建
SKILL.md文件 - 重启 MCP 服务器
示例:
mkdir skills/my-new-skill
然后创建 skills/my-new-skill/SKILL.md 文件。
技术架构
- MCP Protocol: 遵循 Model Context Protocol 规范
- JSON-RPC 2.0: 通信协议
- Python 3.12+: 运行环境
- uv: 包管理和虚拟环境管理
- PyYAML: 解析 Frontmatter 元数据
项目结构
use-skills-mcp/
├── pyproject.toml # 项目配置和依赖
├── server.py # MCP 服务器主入口
├── skill_parser.py # 技能文件解析器
├── README.md # 使用说明
├── skills/ # 技能目录
│ └── weather/
│ └── SKILL.md
└── .venv/ # uv 管理的虚拟环境
许可证
MIT