Reactive Resume MCP 服务端
使用说明(Markdown 格式)
-
项目简介
- 该仓库实现了一个 MCP 服务器(后端服务),用于通过模型上下文协议(MCP)向语言模型客户端提供对 Reactive Resume 的上下文数据、操作工具和提示模板的统一访问入口。它不仅能授权与认证、健康检查,还能对简历进行创建、查询、编辑、导出、以及对各类信息进行增删改等操作,并通过 JSON-RPC 的方式与客户端通信。
-
主要功能点
- 身份认证与会话管理:支持通过 API Key(推荐,v5)或邮箱/密码的老版本鉴权。
- 资源与数据操作:创建、读取、更新、删除简历及其数据结构( Basics、Sections、Items 等)。
- 工具集合:提供一组对简历进行增删改的工具,如创建简历、更新 basics、添加工作经验、添加教育、添加技能、更新项、删除项、导出等。
- 交互能力:以 MCP 工具的形式暴露给 LLM 客户端,LLM 可以调用对应工具完成对 Reactive Resume 的操作。
- 服务器与传输:现在通过标准输入输出(stdio)传输,便于在本地或集成到其他工具链中作为子进程运行。支持在未来扩展更多传输方式(如 SSE、WebSocket 等)。
- 兼容性与适配层:内部通过一个 OpenAPI 风格的 Reactive Resume v5 客户端对 Reactive Resume 实例进行操作,提供统一的数据模型转换。
-
安装步骤
- 环境要求:Node.js 版本 18 及以上。
- 获取代码与安装依赖
- 克隆仓库并进入项目目录
- 运行 npm install 安装依赖
- 构建与启动
- 运行 npm run build 构建服务器
- 以 MCP 客户端连接的方式启动服务器(随后在客户端的配置中指定 server 相关信息)
- 运行前置条件
- 确保 Reactive Resume 实例可访问(Base URL)
- 具备一个 Reactive Resume 用户账号(用于老版本鉴权或 API Key 的使用)
- 测试连接
- 使用提供的 test 脚本(test:api)或通过 MCP 客户端调用 health、list_resumes 等工具进行连通性验证
-
服务器配置(面向 MCP 客户端的描述,提供用于配置的要点信息)
- MCP 客户端在启动时需要为该服务器提供以下信息(以 JSON 配置描述,具体为客户端的配置文件格式):
- server name:rxresume-mcp(服务器的唯一标识,用于在客户端内区分不同的 MCP 服务器)
- command:node(用于运行服务器)
- args:包含入口文件的打包输出路径,如 dist/index.js(确保构建后可执行)
- env:环境变量,主要包含以下字段
- RXRESUME_BASE_URL:Reactive Resume 实例的基础 URL(必填,示例值如 https://rxresu.me 或自建实例地址)
- RXRESUME_API_KEY:用于 v5 的 API Key 鉴权(若使用 API Key 的话,优先使用)
- RXRESUME_EMAIL / RXRESUME_PASSWORD:若未提供 API Key,则使用邮箱/密码进行老版本鉴权(任一组组合即可)
- 说明
- MCP 客户端不需要理解内部实现细节,只需提供上述字段以完成服务器的启动和连接配置。
- 具体的客户端配置示例可在客户端文档中找到,关键在于确保命令、参数和环境变量正确传递,以便 MCP 服务器能够正确初始化并暴露工具。
- MCP 客户端在启动时需要为该服务器提供以下信息(以 JSON 配置描述,具体为客户端的配置文件格式):
-
基本使用方法
- 启动服务
- 在具备 Node.js 环境的终端中,执行构建产物的启动命令,MCP 服务器将通过标准输入输出(stdio)对外提供接口。
- 与 LLM 的交互
- LLM 通过 MCP 客户端请求服务器提供的工具(如 create_resume、add_experience、update_resume_basics 等),获取结构化的响应并继续对话流程。
- 常用操作模式
- 认证:通过 authenticate 工具完成 API Key 或邮箱/密码鉴权。
- 数据操作:使用 list_resumes、get_resume、create_resume、update_resume、delete_resume 等工具管理简历。
- 部署与扩展:如需扩展更多工具,只需在服务器中新增 tool 的定义与实现,MCP 客户端即可调用。
- 运行后观察
- 服务器输出和错误信息(如果以 stdio 方式运行,调试输出多以日志形式输出在调用端)
- 启动服务
-
快速要点总结
- 提供了完整的 MCP 服务端实现(包含多条工具、鉴权、数据操作等)。
- 采用标准的 MCP 工具定义方式暴露功能,便于与 LLM 客户端集成。
- 通过 stdio 作为传输,便于嵌入到其他进程中使用。