项目简介
Ravelry MCP服务器是一个基于Model Context Protocol (MCP) 构建的应用后端,旨在为AI助手提供访问Ravelry平台编织和钩针图案数据的能力。通过此服务器,AI助手可以搜索、浏览和检索Ravelry上的海量手工编织和钩针图案信息,从而更好地服务于对手工爱好者有需求的客户。
主要功能点
- 图案搜索: 根据关键词和筛选条件搜索Ravelry的图案数据库。
- 图案详情: 获取特定图案的全面详细信息。
- 工艺类型筛选: 支持按工艺类型(编织或钩针)筛选图案。
- 价格选项: 支持按价格类型(免费、付费等)筛选图案。
- AI助手集成: 设计用于通过Model Context Protocol与AI助手无缝协作。
安装步骤
-
克隆仓库
git clone https://github.com/gpaul-faldin/MCP_ravelry cd MCP_ravelry -
安装依赖
npm install -
配置环境变量
复制示例环境变量文件并创建本地开发和生产环境配置文件:
cp .env.example .env.development cp .env.example .env.production -
配置Ravelry API凭据
-
获取您的Ravelry用户名和密码。
-
将您的凭据添加到 '.env.development' 和 '.env.production' 文件中:
AUTH_USER=your_ravelry_username AUTH_PASS=your_ravelry_password
-
服务器配置
要将此MCP服务器添加到MCP客户端(例如Claude Desktop),您需要配置以下连接信息。MCP客户端需要这些信息才能与MCP服务器建立通信。
配置信息 (JSON 格式):
{ "serverName": "ravelry", // 服务器名称,可以自定义,例如 "ravelry" "command": "node", // 运行服务器的命令,通常为 "node" "args": [ // 命令参数,指向编译后的服务器入口文件 "YOUR_CUSTOM_PATH/dist/index.js" // 请替换为您的项目编译后 index.js 文件的**绝对路径** ] }
或选择使用URL方式连接 (适用于开发环境):
{ "serverName": "ravelry", // 服务器名称,可以自定义,例如 "ravelry" "url": "http://localhost:3000" // 服务器URL,默认为本地开发地址,请确保服务器已启动 }
配置说明:
- 'serverName': 为您的MCP服务器指定一个名称,例如 "ravelry"。 这将在MCP客户端中标识您的服务器。
- 'command': 指定用于启动MCP服务器的命令。对于Node.js服务器,通常设置为 '"node"'。
- 'args': 一个字符串数组,包含传递给 'command' 的参数。
- 'YOUR_CUSTOM_PATH/dist/index.js': 务必替换 'YOUR_CUSTOM_PATH' 为您本地 'MCP_ravelry' 仓库中编译输出目录 'dist' 下 'index.js' 文件的绝对路径。例如,如果您的项目位于 '/Users/yourname/MCP_ravelry',则该路径可能类似于 '/Users/yourname/MCP_ravelry/dist/index.js'。
- 'url': 如果您在开发模式下运行服务器 ('npm run dev'),可以使用URL方式连接。'http://localhost:3000' 是开发服务器的默认地址。
选择配置方式:
- 生产环境/编译后运行: 推荐使用 'command' 和 'args' 配置,并指向编译后的 'index.js' 文件。在运行 'npm run build' 和 'npm start' 或 'npm run prod' 后,服务器将以编译后的代码运行。
- 开发环境/本地开发: 可以使用 'url' 配置,并确保在运行MCP客户端之前,使用 'npm run dev' 启动开发服务器。
基本使用方法
-
启动MCP服务器:
- 开发模式: 运行 'npm run dev'
- 生产模式: 运行 'npm run build' 然后 'npm start' 或直接运行 'npm run prod'
-
在MCP客户端中配置连接: 根据上述 “服务器配置” 部分的说明,将生成的JSON配置信息添加到您的MCP客户端(如Claude Desktop)的自定义MCP配置中。
-
与AI助手交互: 配置完成后,您就可以在MCP客户端中与AI助手对话,并指示它使用Ravelry工具来搜索或获取编织/钩针图案信息。例如:
- "在Ravelry上找一些免费的钩针帽子图案"
- "搜索适合初学者的编织图案"
- "获取图案ID为 12345 的详细信息"
可用工具
该服务器公开了以下工具,供AI助手调用:
-
'search-patterns': 搜索Ravelry上的图案。
- 参数:
- 'query': 搜索关键词 (必填)
- 'page': 页码 (默认: 1)
- 'craft': 工艺类型 (例如 "knitting", "crochet")
- 'availability': 价格筛选 (默认: "free", 可选: "free", "ravelry", "online")
- 参数:
-
'get-pattern-details': 获取特定图案的详细信息。
- 参数:
- 'id': 图案ID (必填)
- 参数:
-
'get-multiple-pattern-details': 一次性获取多个图案的详细信息。
- 参数:
- 'ids': 图案ID数组 (必填)
- 参数:
信息
分类
网页与API