返回市场
rss阅读器服务器

rss阅读器服务器

作者:tanevanwifferen2 星标更新:2025-06-03

项目介绍

RSS阅读器MCP服务器

这是一个基于TypeScript的MCP服务器,提供从URL获取和解析RSS/Atom订阅源的功能。

概述

此MCP服务器通过提供工具来抓取、解析并提取RSS和Atom订阅源中的结构化数据,实现了RSS订阅源的读取功能。它使用rss-parser库进行强大的订阅源解析,并使用axios进行HTTP请求,具备完善的错误处理和超时设置。

功能

工具

  • get_items - 根据给定的URL获取RSS订阅源项
    • 输入:RSS订阅源URL(必需)
    • 输出:包含订阅源元数据和项的结构化JSON
    • 能力
      • 在10秒超时内抓取RSS/Atom订阅源
      • 解析标准RSS字段(标题、链接、描述、发布日期、作者等)
      • 提取自定义字段(媒体内容、缩略图、编码内容)
      • 处理类别和附件
      • 对网络和解析问题提供全面的错误处理

支持的订阅源格式

  • RSS 2.0
  • RSS 1.0 (RDF)
  • Atom订阅源
  • 自定义字段包括:
    • 媒体内容和缩略图
    • Dublin Core创作者字段
    • 内容编码字段

错误处理

  • URL验证
  • 网络超时处理(1_0秒)
  • HTTP错误状态处理
  • RSS解析错误处理
  • 调试用的全面错误消息

开发

安装依赖:

npm install

构建服务器:

npm run build

开发模式下自动重建:

npm run watch

安装

要在Claude Desktop中使用,请添加服务器配置:

在MacOS上:~/Library/Application Support/Claude/claude_desktop_config.json 在Windows上:%APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "rss-reader-server": {
      "command": "node",
      "args": ["/path/to/rss-reader-server/build/index.js"]
    }
  }
}

使用示例

连接后,您可以使用get_items工具来获取RSS订阅源项:

工具: get_items
输入: { "url": "https://example.com/feed.xml" }

服务器将返回一个包含以下信息的结构化JSON响应:

  • 订阅源URL
  • 总项数
  • 包含以下信息的项数组:
    • 标题、链接、描述
    • 发布日期和作者
    • 类别(如果可用)
    • 附件信息(用于播客/媒体)

依赖项

  • @modelcontextprotocol/sdk: MCP协议实现
  • rss-parser: RSS/Atom订阅源解析
  • axios: 获取订阅源的HTTP客户端
  • zod: 运行时类型验证

调试

由于MCP服务器通过stdio通信,调试可能会比较困难。我们推荐使用MCP Inspector,该工具作为包脚本提供:

npm run inspector

Inspector将提供一个URL,您可以在浏览器中访问调试工具。

错误响应

服务器对常见问题提供了详细的错误消息:

  • 无效的URL格式
  • 网络连接问题
  • HTTP错误(404、500等)
  • 请求超时
  • RSS解析失败

所有错误都以结构化的格式返回,并附有描述性消息,有助于故障排除。