技能发现服务

SkillFinder MCP 是一个按需技能发现的模型上下文协议服务器,适用于AI编码代理,通过本地缓存和GitHub仓库同步提供快速技能检索。

  • by Chin-mae
  • JavaScript
  • 本地部署
  • 更新于
在 GitHub 查看 Chin-mae/skillfinder-mcp

使用说明

SkillFinder MCP

SkillFinder MCP是一个MCP(模型上下文协议)服务器,为AI编码代理提供按需技能发现。

它没有预先将完整的技能库加载到上下文中,而是让代理只查询相关内容,从GitHub中提取技能,并返回完整的 SKILL.md 立即使用的内容。

启动时,服务器会立即从本地缓存中水合(如果存在),然后在后台检查上游SHA,并在需要时自动刷新。

在软件包安装过程中,SkillFinder还会尝试一次性缓存预热,这样第一次MCP查询会更快。

为什么使用它

  • 通过只加载相关技能来减少上下文膨胀。
  • 在技能元数据上使用快速的本地BM25排名。
  • 内容更改时,从上游存储库自动同步。
  • 在stdio上运行,没有数据库、嵌入或外部服务。

特性

  • 在技能名称、描述和标签上快速搜索BM25。
  • 通过后台SHA验证立即进行缓存水合。
  • 重复技能处理,首选规范 skills/ 路径。
  • 用于快速热启动的本地磁盘缓存。
  • 当GitHub API不可用/速率受限时,自动zip-archive回退。

暴露的工具

  1. search_skills(query: string, limit?: number) 返回最相关的技能和完整 SKILL.md 内容。

  2. refresh_index() 强制从GitHub重建完整索引(绕过缓存检查)。

安装和使用

SkillFinder MCP通过stdio运行,通常与 npx.

克劳德桌面版

配置文件:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • 窗户: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "skillfinder": {
      "command": "npx",
      "args": ["-y", "skillfinder-mcp"]
    }
  }
}

光标

在光标中:功能->MCP服务器->添加新的MCP服务器

  • 类型: command
  • 姓名: skillfinder
  • 命令: npx -y skillfinder-mcp

克劳德代码

claude mcp add skillfinder -- npx -y skillfinder-mcp

配置

在MCP服务器配置中设置可选环境变量:

变量 描述 默认值
SKILLFINDER_REPO 包含技能的GitHub存储库(owner/repo) sickn33/antigravity-awesome-skills
SKILLFINDER_RESULTS 默认搜索结果数(1-10) 3
SKILLFINDER_GITHUB_TOKEN 用于增加API限制的可选GitHub令牌 无
SKILLFINDER_FETCH_CONCURRENCY 完整索引构建期间并行原始文件获取计数(1-40) 40
SKILLFINDER_HTTP_TIMEOUT_MS 每次请求超时(毫秒)(1000-60000) 15000
SKILLFINDER_PREWARM_ON_INSTALL 启用/禁用安装时缓存预热(1/0, true/false) 已启用

本地开发

npm install
npm run build
npm start

运行自动化测试套件:

npm test

运行集成测试:

node test-run.mjs

操作说明

  • 缓存位置:
    • macOS: ~/Library/Caches/skillfinder-mcp/index.json
    • Linux: $XDG_CACHE_HOME/skillfinder-mcp/index.json (或 ~/.cache/...)
    • 窗户: %LOCALAPPDATA%\skillfinder-mcp\index.json
  • 如果GitHub暂时不可用,则使用存在的过时缓存。
  • 如果GitHub不可用,安装时预热不会导致安装失败。
  • 由于完整的索引获取,第一次运行可能需要更长的时间(通常为10-30秒,具体取决于网络)。
  • 热启动通常接近即时,因为结果是从缓存中提供的。

许可证

MIT。看 许可证.