使用说明
-
项目简介 RSSMonster 的 MCP 服务端实现,旨在让 LLM 客户端能够通过 MCP 访问和操作 RSS 系统中的资源(如分类、订阅、文章)、调用服务器暴露的工具,以及获取/渲染提示模板。服务器通过 /mcp 路径提供 MCP 服务,要求客户端在请求时携带经过认证的 JWT 令牌。
-
主要功能点
- 资源管理与数据访问:提供 Categories、Feeds、Articles 等资源的读取与查询接口,便于 LLM 客户端获取上下文信息。
- 工具注册与执行:定义多种 MCP 工具(如获取分类、获取订阅、按关键字查询文章、按时间查询、收藏文章等),支持以结构化数据返回并附带 HTML 片段用于直接渲染。
- Prompts / Prompt 模板:通过 MCP 能力声明来描述可用的提示能力和交互模式;工具返回的 structuredContent 或 htmlOutput 可直接用于前端渲染。
- JSON-RPC/HTTP 交互:MCP 服务以 MCP 框架风格处理请求,返回符合 MCP 的 JSON-RPC 风格响应或带有 structuredContent 的结果。
- 会话与认证:使用 JWT 进行用户鉴权,确保操作只对授权用户可用。
- 多传输协议准备:核心实现留有扩展空间,当前实现基于 HTTP 的 MCP 交互,未来可扩展到 Stdio、SSE、WebSocket 等。
-
安装步骤
- 克隆并安装依赖
- 进入 server 目录执行 npm install
- 如需前端,请进入 client 目录执行 npm install
- 复制并配置环境变量
- server/.env.example 以及 client/.env.example 复制为 .env
- 配置数据库连接(DB_DATABASE、DB_USERNAME、DB_PASSWORD、DB_HOSTNAME 等)
- 根据需要配置 OPENAI_API_KEY 等 AI 相关变量
- 初始化数据库
- 进入 server 目录,执行数据库迁移和数据种子(如 Sequelize migrations/seeders 提供)
- 启动服务
- 开发模式:npm run debug(Server)和 npm run dev(Client)
- 生产模式:npm run start
- 访问 MCP 服务
- MCP 服务入口是 /mcp 路径,需要通过 /api/auth/login 获取 JWT,随后将 Authorization: Bearer <token> 放在 MCP 请求头中
- 克隆并安装依赖
-
服务器配置(MCP 客户端需要的启动信息,JSON 格式) serverName: "rssmonster-mcp" command: "node" args: ["server/app.js"] 说明:该配置用于 MCP 客户端在启动时执行服务器进程。实际部署中可能通过容器或进程管理工具运行上述命令。若使用环境变量注入,请确保数据库、OpenAI、以及 JWT 相关密钥在运行环境中可用。以下仅示意字段含义: { "serverName": "rssmonster-mcp", "command": "node", "args": ["server/app.js"] }
-
基本使用方法
- 通过 RSSMonster 提供的账号体系完成登录,获取 JWT 令牌。
- MCP 客户端连接时将 Authorization: Bearer <token> 作为请求头,向 /mcp 发送请求。
- 使用工具完成对资源的查询和操作,例如获取分类、获取订阅、按关键字查询文章等,并处理 Tool 的 structuredContent / htmlOutput 内容用于展示。
- 根据需要结合服务器提供的其它工具,进行跨工具组合查询以获得综合结果。
- 如需触发 RSS Crawling、导出 OPML、导出 gReader 等功能,请调用相应 MCP 工具。
-
基本使用示例(简述)
- 调用 categories 工具获取全部分类
- 调用 feeds 工具获取某用户的订阅列表
- 调用 search_articles_by_keyword 工具按关键词检索并获取摘要
- 调用 current_time 工具获取服务器时间
- 调用 crawl 工具触发 RSS 抓取
-
重要注意
- MCP 服务端在实现中大量依赖数据库模型(Category、Feed、Article、Tag、User 等),请确保数据库就绪并正确迁移。
- AI 相关能力需要 OPENAI_API_KEY 等环境变量,若未配置,相关分析会降级为纯客户端可视化的文本输出。
-
参考连接
- MCP 服务路由:/mcp
- 登录与鉴权接口:/api/auth/login 获取 JWT
- 服务器核心实现:server/controllers/mcp.js 及相关工具实现
信息
分类
网页与API