Skip to main content
Glama

ttrss-mcp

tt-rss MCP (Model Context Protocol),允许通过 AI 助手读写 Tiny Tiny RSS 订阅源。

官方接口文档:https://github.com/tt-rss/tt-rss/wiki/Api-Reference

使用方法

本服务通过 stdio 传输协议运行,AI 客户端直接启动进程通信。

{
  "mcpServers": {
    "tt-rss": {
      "command": "npx",
      "args": ["ttrss-mcp"],
      "env": {
        "TT_RSS_URL": "https://rss.example.com/tt-rss",
        "TT_RSS_SID": "your-session-id"
      }
    }
  }
}

Related MCP server: inoreader-mcp

MCP 工具列表

订阅源管理

工具

说明

get_categories

获取分类列表

get_feeds

获取订阅源列表

subscribe_feed

订阅新 RSS 源

unsubscribe_feed

取消订阅

文章管理

工具

说明

get_headlines

获取文章标题列表 (支持过滤/分页)

get_article

获取文章全文

get_unread_count

获取未读数量

update_article

更新文章状态 (星标/已读/发布/笔记)

catchup_feed

标记源为已读

share_to_published

分享到已发布

search_articles

搜索文章

标签管理

工具

说明

get_labels

获取标签列表

set_article_label

设置/移除文章标签

系统与日报

工具

说明

get_config

获取服务器配置

generate_daily_report

生成日报 (按源分组的文章汇总)

项目结构

ttrss-mcp/
├── src/
│   ├── index.ts            # MCP Server 入口 (stdio)
│   ├── ttrss-client.ts     # tt-rss API 客户端封装
│   ├── types.ts            # TypeScript 类型定义
│   └── tools/
│       ├── feeds.ts        # 订阅源管理工具
│       ├── articles.ts     # 文章读写工具
│       ├── labels.ts       # 标签管理工具
│       └── report.ts       # 日报生成工具
├── .env.example
├── package.json
└── tsconfig.json

License

MIT

Available Tools

15 tools
catchup_feedC

将订阅源或分类中的所有文章标记为已读。mode 可选: all (全部), 1day, 1week, 2week

Inputs: feed_id (required), is_cat, mode.

generate_daily_reportC

生成日报:汇总近期文章,按分类和订阅源分组输出。默认获取未读文章,可指定时间范围。

Inputs: hours, limit, view_mode, include_content.

get_articleB

获取一篇或多篇文章的完整内容 (含正文)。支持逗号分隔的多个 ID。

Inputs: article_id (required).

get_categoriesA

获取 tt-rss 的分类列表,包含各分类的未读数。可选只返回有未读文章的分类。

Inputs: unread_only, enable_nested, include_empty.

get_configB

获取 tt-rss 服务器配置信息 (守护进程状态、订阅数等)

Inputs: no named parameters.

get_feedsA

获取 tt-rss 的订阅源列表。可按分类过滤,支持分页。特殊分类 ID: -1=特殊, -2=标签, -3=所有(不含虚拟), -4=所有(含虚拟), 0=未分类

Inputs: cat_id, unread_only, limit, offset, +1 more.

get_headlinesB

获取文章标题列表。特殊 feed_id: -4=全部, -3=最新, -2=已发布, -1=星标, 0=已归档。可按 view_mode 过滤未读/星标等。

Inputs: feed_id, limit, skip, view_mode, +6 more.

get_labelsB

获取所有已配置的标签列表。可传入 article_id 查看该文章是否有某标签。

Inputs: article_id.

get_unread_countB

获取当前未读文章总数

Inputs: no named parameters.

search_articlesC

在文章中搜索关键词。search_mode: all_feeds=全部源, this_feed=当前源, this_cat=当前分类

Inputs: search (required), feed_id, search_mode, limit, +1 more.

set_article_labelC

为文章设置或移除标签

Inputs: article_ids (required), label_id (required), assign (required).

share_to_publishedC

创建一篇文章到已发布 (Published) 源中

Inputs: title (required), url (required), content (required).

subscribe_feedC

订阅新的 RSS 源

Inputs: feed_url (required), category_id, login, password.

unsubscribe_feedC

取消订阅指定的 RSS 源

Inputs: feed_id (required).

update_articleC

更新文章状态。field: 0=星标, 1=已发布, 2=未读, 3=笔记。mode: 0=取消, 1=设置, 2=切换。

Inputs: article_ids (required), field (required), mode (required), data.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.6/5.0

    Scored across 15 tools

    Disambiguation5/5

    Each tool has a distinct purpose targeting specific resources and actions in the tt-rss RSS reader domain, such as managing feeds (subscribe_feed, unsubscribe_feed), handling articles (get_article, update_article), and generating reports (generate_daily_report). No tools appear to overlap in functionality, making it clear for an agent to select the right one.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern in snake_case, such as get_article, set_article_label, and generate_daily_report. This uniformity enhances readability and predictability across the tool set.

    Tool Count5/5

    With 15 tools, the server is well-scoped for managing an RSS reader, covering essential operations like feed management, article retrieval, labeling, and reporting. Each tool serves a clear purpose without bloat or redundancy.

    Completeness5/5

    The tool set provides comprehensive coverage for the tt-rss domain, including CRUD-like operations for feeds and articles, status updates, labeling, search, and reporting. There are no obvious gaps; agents can perform full lifecycle management of RSS content.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      A
      quality
      B
      maintenance
      An MCP server for the Inoreader RSS reader API that allows users to triage articles, analyze feed health, and manage subscriptions. It enables reading content, organizing folders, and performing batch tagging or status updates through natural language.
      29
      10 npm
      1
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      An MCP server that provides RSS feed management and LLM-powered article evaluation, enabling AI agents to filter and assess content value.
      MIT