项目简介
这是一个基于 Model Context Protocol (MCP) 构建的服务器实现,旨在为大型语言模型 (LLM) 客户端(如 Claude Desktop)提供访问和聚合您订阅的RSS源内容的能力。它通过标准的 JSON-RPC 协议与客户端通信,将RSS feed的内容转化为LLM可以理解和利用的上下文信息。
主要功能点
- RSS Feed聚合: 能够从多个RSS源抓取最新的文章内容。
- 多种配置格式: 支持使用标准的OPML文件或简单的JSON文件来定义您的RSS订阅列表。
- 按源和类别筛选: 可以根据特定的feed来源或定义的类别来获取文章。
- 内容格式化: 将抓取到的文章内容进行格式化,使其易于在LLM客户端中阅读和处理。
- LLM工具集成: 通过暴露一个名为 'rss' 的工具,允许LLM客户端直接调用服务器功能。
安装步骤
在您的计算机上安装和运行此MCP服务器需要Node.js环境。
-
克隆或下载代码库: 获取项目的源代码。
-
进入项目目录: 使用命令行工具进入到您下载的项目文件夹中。
-
安装依赖: 在项目目录下运行命令安装所需的依赖库。
-
构建项目: 运行构建命令,生成可执行文件。
服务器配置(为MCP客户端配置)
此MCP服务器设计为由兼容的MCP客户端(如 Claude Desktop)自动启动和管理。您需要编辑MCP客户端的配置文件来告知它如何启动此服务器。
找到您的MCP客户端(例如 Claude Desktop)的配置文件。通常位于:
- macOS: '~/Library/Application Support/Claude/claude_desktop_config.json'
- Windows: '%APPDATA%\Claude\claude_desktop_config.json'
- Linux: '~/.config/Claude/claude_desktop_config.json'
如果文件不存在,请创建它。编辑该文件,找到或创建一个名为 '"mcpServers"' 的JSON对象。在该对象下,添加一个用于配置RSS聚合器的部分,例如命名为 '"rssAggregator"'。
这个 '"rssAggregator"' 对象需要包含以下关键信息:
- '"command"': 启动服务器的可执行文件。在此项目中,通常是 '"node"'。
- '"args"': 启动服务器时传递给 '"command"' 的参数列表。这个列表应包含构建后服务器主文件的绝对路径。例如,如果您的项目安装在 '/Users/username/mcp-rss-aggregator',则参数应为 '["/Users/username/mcp-rss-aggregator/build/index.js"]'。请务必使用项目所在路径的绝对路径。
- '"feedsPath"' (可选): 您的OPML或JSON feed配置文件的绝对路径。如果不指定,服务器将使用项目自带的示例feed文件。
将这些信息添加到 '"mcpServers"' 对象中。如果您已有其他MCP服务器配置,请将此部分添加到现有配置旁边。
配置完成后,保存文件并重启您的MCP客户端应用程序。客户端将根据配置自动启动RSS聚合器MCP服务器。
基本使用方法
一旦MCP客户端启动并连接到RSS聚合器服务器,您就可以在客户端的界面中通过调用名为 'rss' 的工具来与服务器交互。
您可以输入类似命令行的指令,LLM客户端会将其转化为对 'rss' 工具的调用。
- 获取最新文章: 'rss latest'
- 获取指定数量的最新文章: 'rss latest --20'
- 列出所有已配置的RSS Feed: 'rss list'
- 获取某个特定feed的最新文章: 'rss --[feed-id]' (feed-id 可以通过 'rss list' 查看,例如 'rss --hackernews')
- 获取某个分类的最新文章: 'rss [分类名称]' (例如 'rss "Tech News"')
- 设置新的feeds文件路径: 'rss set-feeds-path --[您的文件绝对路径]'
您也可以尝试使用自然语言提问,LLM客户端通常能够理解您的意图并自动调用 'rss' 工具执行相应的命令。
Feed 配置
服务器支持OPML和JSON两种格式来定义您的订阅列表。您可以编辑项目目录下的示例文件或替换为自己的文件。在MCP客户端配置中,使用 '"feedsPath"' 参数指定您要使用的feeds文件的绝对路径。
信息
分类
AI与计算