关于 FeedWatch
FeedWatch 是面向需要跟踪信息源变化的用户的 RSS、Atom 和 JSON Feed 监控 API 与 MCP 服务。它不仅检测新条目,也能识别已有条目的修改并提供字段级差异。
主要功能
- 01监控 RSS、Atom 与 JSON Feed
- 02检测新增条目和既有条目修改
- 03提供字段级变更差异
- 04通过 API 推送内容变化
适用场景
- 01发现订阅源中的新内容
- 02追踪新闻更正及条目编辑
- 03监控商品信息字段的调整
MCP 相关
项目提供 MCP 端点,使 MCP 客户端可使用 FeedWatch 的订阅源监控服务。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://api.tiici.com/mcpclaude mcp add --transport http bruceonline2026-feedwatch https://api.tiici.com/mcp{"mcpServers":{"bruceonline2026-feedwatch":{"type":"http","url":"https://api.tiici.com/mcp"}}}在 Cursor 中打开{"servers":{"bruceonline2026-feedwatch":{"type":"http","url":"https://api.tiici.com/mcp"}}}在 VS Code 中打开{"mcpServers":{"bruceonline2026-feedwatch":{"type":"http","url":"https://api.tiici.com/mcp"}}}{"mcpServers":{"bruceonline2026-feedwatch":{"serverUrl":"https://api.tiici.com/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
详细介绍
来自项目 READMEFeedWatch MCP
RSS/Atom 变更监控 API + MCP Server 当前阶段:验证期准备(判定线:8 周内 5 个真实付费用户)
🌐 English version: README.en.md · 中文在下方
从这里开始
| 你想了解 | 看这份 |
|---|---|
| ⭐ 现在什么状态、下一步做什么 | 📋 工作计划与进展 |
| 整个项目长什么样 | 📐 项目蓝图 |
| 开发要做什么 | 💻 软件开发需求说明书 |
| 客户怎么用它 | 📖 用户说明书 |
| 买服务器 + 部署 | 🖥️ 服务器采购与部署手册 |
| 注册海外公司 | 🏢 海外公司注册与维护手册 |
| 给客户签发API Key | [🔑 API Key 管理与配额](docs/运营手册/API Key管理与配额.md) |
| 自己先试用一遍 | 🧪 内部测试指南 |
| 发布到MCP 生态 | 🔌 MCP生态发布指南 |
| 收款开通(Payoneer) | 💳 Payoneer 收款链接操作手册 |
| 收款怎么配(通用) | 💰 收款与运营手册 |
| 为什么这么选 | 📋 决策记录-收款与主体 |
| 改完代码要跑什么 | 🧪 回归测试要求点清单 |
| 提交前自查(4 问 + 16 项检查) | |
| 踩过什么坑 | 🔍 调试复盘 |
| 上线要查什么 | ✅ 上线检查清单 |
| 状态字段什么意思 | 🔢 状态字段语义 |
⚠️ 改代码前先看「回归测试要求点清单」 —— 里面有 89 项离线测试的覆盖现状、 19 项已知缺口、以及已证伪的 4 处错误「已验证」。 不要只看测试名声称覆盖了什么,要看它实际断言了什么。
一句话说明
客户把 RSS/Atom/JSON Feed 的网址交给我们,我们替他们盯着;内容变了就主动推送, 并精确告诉他哪个字段、从什么变成什么。
核心差异:竞品多数只能报"新增条目",我们能检测已有条目被修改并给出字段级 diff—— 新闻更正错字、竞品悄悄改价格,这些都不产生新条目,但恰恰是客户最需要知道的。
文档体系(四层结构)
docs/
├── 架构/ 【第 1 层】顶层设计
│ └── 项目蓝图.md 整个项目 + 架构 + 外部资源 + 阶段路线
│
├── 需求/ 【第 2 层】做什么
│ ├── 软件开发需求说明书.md功能清单 + 验收标准 + 需求来源
│ └── 用户说明书.md 客户视角的产品说明与使用场景
│
├── 运营手册/ 【第 3 层】怎么操作
│ ├── 服务器采购与部署手册.md 选型对比 + Vultr 注册购买 + Linux 部署
│ ├── 海外公司注册与维护手册.md 香港公司注册 + 银行开户 + 后续维护
│ ├── 内部测试指南.md ⭐ 8 步实测流程(含MCP 与安全验证)
│ ├── API Key管理与配额.md ⭐ 签发 Key + 各项限流 + 配额口径核对
│ ├── MCP生态发布指南.md ⭐ 官方注册表 + 5 个目录收录方式
│ ├── Payoneer收款链接操作手册.md ⭐ 验证期收款开通(注意:非 Checkout)
│ ├── 收款与运营手册.md 付费时机 + 收款配置 + 排障(第三部分已废弃)
│ └── 部署配置与待办-Windows方案.md (已弃用,保留参考)
│
├── 决策/ 【第 4 层】为什么这么选
│ └── 决策记录-收款与主体.md 平台选型 + 主体时间线 + 被排除项(含 v2 纠错)
│
└── 复盘/ 【第 5 层】经验沉淀
├── 回归测试要求点清单.md ⭐ 89 项测试覆盖现状 + 19 项缺口 + 最小回归集
├── 调试复盘.md 10 个缺陷 + 5 条交付规范 + 失误归因
├── 上线检查清单.md 三阶段 checklist + B1–B6
├── 状态字段语义.md 三状态正交表 + 错误码判读
└── 事故复盘/
└── 2026-10-13-www站点500事故复盘.md
分层判断标准
| 层 | 回答什么问题 | 变更频率 |
|---|---|---|
| 架构 | 整个项目长什么样 | 很少(季度级) |
| 需求 | 做什么功能、验收标准 | 中(月级) |
| 运营手册 | 怎么一步步做 | 高(跟着平台变化) |
| 决策 | 为什么这么选、为什么排除别的 | 低(决策后很少变) |
| 复盘 | 踩过什么坑、教训是什么 | 追加式 |
⚠️ 常见错误:把"为什么选 A 不选 B"写进运营手册。 平台会变(被收购、改费率),手册不会自动更新 —— 一份三个月前正确的手册,今天可能把人导向一个用不了的平台。
快速开始(开发者)
npm install
HOST=127.0.0.1 PORT=3001 PUBLIC_URL=https://api.tiici.com \
FEEDWATCH_BOOTSTRAP_KEY=<至少32位随机> \
npm start
curl http://127.0.0.1:3001/health
⚠️ Bind to
127.0.0.1, never0.0.0.0. Put Nginx (or any reverse proxy) in front so TLS, access logs and WAF are not bypassed.
测试
npm test # 87 项离线测试(5 个套件)
npm run test:live # 28 项真实源测试(需出网)
技术栈
运行时 Node.js 22 ESM
依赖 fast-xml-parser(唯一运行时依赖)
HTTP node:http 原生(零框架)
部署 Linux + Nginx + systemd / Windows + IIS
测试 自建轻量断言框架(无 jest/vitest)
规模 2143 行 / 7 模块
测试规模 87 项离线全绿,全部经「回退法证伪」
为什么零框架依赖:便于跨环境(Linux/Windows)部署,减少供应链风险。
目录结构
06MCP/
├── web/index.html 对外落地页(部署到 /)
├── docs/
│ ├── 工作计划与进展.md ⭐ 当前状态 + 每日台账 + 下一步
│ ├── 架构/项目蓝图.md 整体架构 + 外部资源 + 阶段路线
│ ├── 需求/ 功能清单 + 实现状态 + 客户说明
│ ├── 运营手册/ ⭐ 内部测试 / Key 管理 / MCP 发布 / 收款 / 部署
│ ├── 决策/ 收款平台与主体决策(v2 含纠错)
│ └── 复盘/ ⭐ 提交前自查清单 / 回归测试要求点 / 调试复盘 / 上线清单 / 状态语义
├── src/ 7 模块 2242 行
├── scripts/ ~2100 行 / 7 套件
│ ├── selfcheck-silent.js ★ 三个高发模式的 12 项自动检查(npm test 第一道)
│ ├── selftest / regression*.js 92 项离线断言
│ ├── e2e.js 端到端(含回退证伪用例)
│ └── livefeed-test.js 28 项真实源测试(需出网)
├── deploy/ Linux/Windows/落地页/云防火墙部署脚本
├── server.json MCP 官方注册表清单
├── smithery.yaml Smithery 一键安装配置
├── web/index.html 对外落地页
└── deliverables/gstack/ 审查与发布报告(不随仓库公开)
当前状态
📋 完整台账见
docs/工作计划与进展.md(每日工作 + 下一步 8 项)
✅ 已就绪
产品 https://api.tiici.com/ 落地页 + REST API + MCP 端点,全部线上
源码 2242 行 / 7 模块(零 Web 框架)
测试 16 项模式自查+ 140 项断言全绿 + 28 项真实源 = 2000 行 / 7 套件
安全 15 个缺陷全修(每个都做回退证伪)+ 三层防护
云防火墙 / ufw / Nginx+TLS,3001 公网实测不可达
服务器 Vultr 167.179.112.40(Tokyo / $5/月 / Ubuntu 24.04.5)
运行 feedwatch.service active+enabled,Node v22.23.3,实测 RSS 93 MB
证书 api.tiici.com 已签发(至 2027-01-13,自动续期 dry-run 已验证)
配额 免费层 5 个监控点 / 6h 频率(**申报与实际强制一致**)
分发 GitHub 公开仓库 + tag v0.1.0 + server.json 通过官方 validate
依赖 fast-xml-parser 5.11.2(OSV 漏洞清零)
文档 15 份(含回归测试要求点清单、API Key 管理、内部测试指南)
⏳ 待办(完整版见工作计划)
| # | 事项 | 负责 | 阻塞什么 |
|---|---|---|---|
| 1 | Payoneer 个人账户 + 收款链接(⚠️ 非 Checkout) | 徐总 | 🔴 收款前置条件 |
| 2 | 提交 MCP 官方注册表 | 徐总 | 分发(mcp-publisher publish) |
| 3 | 点 GitHub Release Publish | 徐总 | tag 已推送,只需点一下 |
| 4 | Smithery / mcp.so / mcpservers.org | 徐总 | 各 3-5 分钟 |
| 6 | 咨询税务师(第 3 周) | 徐总 | 后续合规 |
| 7 | TTL 调回 300 | 徐总 | — |
⏸️暂缓:海外公司注册 —— 验证期不需要,确定要接 Checkout 2.0 / Stripe 时再办
📌 不在本项目范围:www.tiici.com / game.tiici.com 的证书续签属于 WordMaster 等其他站点,归各自项目台账管理,本台账不跟进。
核心判定线
| 指标 | 目标 |
|---|---|
| 真实付费用户 | ≥ 5 个(8 周内) |
| 推送准确率/漏报率 | < 1% |
| 转化率(免费→付费) | > 5% |
⚠️ 不要用"技术跑通"当判定 —— 要有人掏钱。技术跑通只是必要条件。
⚠️ 两条给后续接手者的提醒
① 不要只看文档里的「已验证」三个字
本次审查里,团队成员至少 5 次写了「已验证」而结论后来被推翻。 可靠的方式是:临时把修复改回去,看测试会不会红。
② 声称「X 会失败」前,先证明 X 在应该成功时确实成功
只测失败路径无法区分「X 有问题」和「工具有问题」。
遇到问题先看
docs/复盘/调试复盘.md—— 那里记录了 10 个真实缺陷与它们被发现的经过, 避免重复踩坑。完整审查报告:
deliverables/gstack/pre-launch-review-feedwatch-2026-10-12.md
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。