内容
# 恐惧国度MCP
一个MCP服务器,用于搜索 [恐惧国度俱乐部](https://fearnation.club/) 新闻存档(世界苦茶每日摘要 + 台海危机警报),粒度为单个项目。
## 功能特点
- **完整历史存档**:一次性完整爬取所有站点地图发现的帖子。
- **增量更新**:当数据 stale(>60 分钟)时,工具调用 RSS 源自动刷新。
- **跨脚本搜索**:OpenCC `t2s` 标准化允许简体中文查询匹配繁体中文内容(反之亦然)。
- **4种工具**:`search_news`,`get_post`,`list_recent`,`discover`.
## 安装
```bash
git clone <此仓库> fearnation-mcp
cd fearnation-mcp
uv venv
uv pip install -e ".[dev]"
```
## 使用(MCP客户端配置)
克劳德桌面版(`claude_desktop_config.json`):
```json
{
"mcpServers": {
"fearnation": {
"command": "/绝对路径/to/fearnation-mcp/.venv/bin/fearnation-mcp",
"args": []
}
}
}
```
Cursor及其他MCP客户端:相同的`command`路径,空`args`.
## 工具
### `search_news(查询, 分类?, 开始日期?, 结束日期?, 限制?)`
对索引新闻项目进行全文搜索。返回匹配结果,包括`slug`,`section`,`headline`,`body`,`pub_date`,`seq`.
### `get_post( slug或日期 )`
通过slug(`shijie-kucha-2024-01-15`)或ISO日期(`2024-01-15`)获取完整帖子。对于有多个帖子的日期,返回摘要列表。
### `list_recent(天数=7)`
列出最近`N`天内的帖子。每个结果包含`slug`,`title`,`pub_date`,`post_type`,`item_count`. 用于在搜索前定位。
### `discover(查询?, 帖子类型?, 开始日期?, 结束日期?)`
浏览帖子目录。按标题子字符串、帖子类型(`世界苦茶` 或 `台海危机警报`)或日期范围过滤。
## 开发
```bash
# 运行测试(不包括网络测试)
uv run pytest
# 运行linters
uv run ruff check src tests
uv run black --check src tests
uv run pyright src
# 运行网络烟雾测试(需要网络访问)
uv run pytest -m network tests/test_smoke.py
# 在本地运行服务器进行测试
uv run fearnation-mcp
```
## 设计
参见 `docs/superpowers/specs/2026-07-08-fearnation-mcp-design.md`.
## 贡献者
- **[星际轨迹](https://github.com/Star-Trails)** — 作者,维护者
- **[开放代码](https://github.com/sst/opencode)** — 在整个开发过程中使用的AI编码助手(规范设计,TDD实现,代码审查)
## 许可证
MIT — 参见 [LICENSE](LICENSE).