Hello 各位小伙伴们大家好!
在当今信息爆炸的时代,获取实时热点趋势并将其转化为有价值的内容是许多创作者和开发者面临的挑战。作为一名技术博主,我经常需要追踪全网热点,快速整理信息,并转化为高质量的原创内容。然而,传统的热点获取方式往往效率低下,需要手动访问多个平台,整理大量信息,这极大地影响了我的内容创作效率。
直到我发现了 TrendsHub ------一个基于Model Context Protocol (MCP) 协议的全网热点趋势一站式聚合服务。结合 TRAE CN 这款强大的AI IDE,我找到了提升热点内容创作效率的完美解决方案。
下面我们来盘一盘Trae CN究竟是如何帮助我高效利用MCP开发热点聚集网站。
一、问题描述
在使用TrendsHub之前,我在热点内容创作过程中遇到了以下问题:
-
热点获取分散 :需要访问多个平台(微博、知乎、抖音等)手动收集热点信息。
-
信息整理耗时 :需要手动筛选、分类和整理大量热点数据。
-
内容转化困难 :难以快速将热点信息转化为结构化、有深度的技术博客。
-
工具集成复杂 :不同工具之间缺乏有效的集成,导致工作流断裂。
现在已经是AI时代了,我居然还在用手动的方式收集信息。
想到我的万能开发助手Trae,这次我给它加上一个神奇MCP再上升一次新高度!
TrendsHub架构设计
服务基于Node.js事件驱动模型构建,核心组件包括:
- 数据采集层:集成20+数据源(36氪/腾讯新闻/NYTimes等)。
- 处理管道:实时去重(相似度>0.85合并)、热点排序(热度值=传播量×1.2+互动率×0.8)。
- MCP接口层:暴露标准API端点,支持动态工具发现。
这一MCP服务的环境变量配置示例如下:
perl
{
"mcpServers": {
"trends-hub": {
"command": "npx",
"args": ["-y", "mcp-trends-hub@1.6.2"],
"env": {
"TRENDS_HUB_HIDDEN_FIELDS": "cover,get-nytimes-news:description",
"TRENDS_HUB_CUSTOM_RSS_URL": "https://news.yahoo.com/rss"
}
}
}
}
二、Trae CN集成实践
具体步骤:安装与使用TrendsHub MCP服务。
在安装TrendsHub之前,确保你的环境已经满足以下条件:
-
已安装Node.js和npm(推荐Node.js 16+版本)
-
已安装TRAE CN IDE
-
稳定的网络连接
安装TrendsHub MCP服务
TrendsHub提供了简单便捷的NPX安装方式,无需全局安装,随用随走。安装步骤如下:
打开TRAE CN IDE,进入设置界面。
我们在右侧找到工具小按钮,添加更多工具。
找到MCP服务配置选项,点击"添加新MCP服务"。
输入MCP服务配置:


在配置界面中输入以下信息:
-
服务名称: trends-hub
-
命令: npx
-
参数: -y , mcp-trends-hub@1.6.2
或者直接编辑JSON配置文件。
确认后,在我们新创建热点百事通智能体中添加trends-hub这一MCP:
编辑
保存配置,TRAE CN将自动连接并启动TrendsHub服务。
安装完成后,你可以通过以下方式使用TrendsHub获取热点数据:
在TRAE CN的命令面板中输入 MCP: 调用TrendsHub服务。
选择你需要的热点类型(微博热搜、知乎热榜、抖音热点等)。
设置获取数量和其他参数。
等待数据返回,TRAE CN将自动展示结构化的热点数据。
结合TRAE CN的AI能力撰写热点百科。
获取热点数据后,你可以利用TRAE CN的AI助手快速收集热点信息:

动态工具调用示例
在Python中实现热点数据抓取:
python
import requests
from pydantic import BaseModel
class TrendItem(BaseModel):
title: str
url: str
heat_index: float
def fetch_tech_trends():
response = requests.post(
"http://localhost:3000/mcp/call",
json={
"tool_name": "get-36kr-trending",
"request_arguments": {"category": "ai"}
}
)
return [TrendItem(**item) for item in response.json()["data"]]
三、热点百科创作方法论
3.1 数据采集策略
- 多源交叉验证:同步获取36氪(创业动态)、腾讯新闻(社会热点)、NYTimes(国际视角)
- 热度预测模型:基于LSTM网络构建72小时热度预测(MAE<8.2%)
- 关键词提取:使用BERTopic进行主题聚类(凝聚系数>0.7保留)
3.2 内容生成流程
- 数据清洗:过滤低质量内容(阅读量<5000或互动率<3%)
- 结构化输出:按技术领域/时间维度/影响范围三维分类
- 可视化增强:生成动态热度曲线图(使用matplotlib)
四、性能优化与扩展
4.1 集群部署方案
采用Kubernetes部署,配置建议:
- 副本数:3(CPU:4c, Memory:8GB)
- 持久化存储:Redis缓存热点数据(TTL=1h)
- 自动扩展:当QPS>100时触发副本扩容
4.2 自定义数据源开发
实现RSS订阅源集成步骤:
- 创建
src/adapters/custom-rss.js
- 实现
fetch
方法解析RSS 2.0格式 - 注册为MCP工具:
php
mcp.registerTool({
name: "custom-rss",
description: "自定义RSS订阅源",
api: {
call: async (args) => await fetchRSS(args.url)
}
})
对话实现开发网页如下所示:
编辑
我们打开网页看看收集的热点信息,效果如下:
编辑
可以看到信息收集的不错,就是图片都挂掉了!
经过我与Trae的一番讨论,以下是热点新闻网页图片加载问题解决方案。
问题原因是项目开发过程中遇到图片加载失败问题,浏览器报错 net::ERR_BLOCKED_BY_ORB 。这是由于浏览器的 ORB (Origin-Isolation Resource Blocking) 安全机制阻止了跨域图片资源的加载,特别是来自今日头条的热点新闻封面图。
解决思路与步骤
- 初始错误处理 :
首先通过 JavaScript 的 onerror 事件为图片添加错误处理逻辑。当图片加载失败时,显示占位图 via.placeholder.com/300x180?tex...
实现方式:使用 DOM API 动态创建图片元素,并绑定 onerror 事件。 - 代理服务解决方案 :
引入 images.weserv.nl 图片代理服务,绕过 ORB 限制。
通过代理服务加载原始图片链接,格式为 [images.weserv.nl/?url={enco...](https://link.juejin.cn?target=https%3A%2F%2Fimages.weserv.nl%2F%3Furl%3D%24%257BencodeURIComponent(coverUrl)%257D%25E3%2580%2582 "https://images.weserv.nl/?url=%7BencodeURIComponent(coverUrl)%7D%E3%80%82")
代理服务会处理跨域请求,并返回优化后的图片。 - 优化错误处理 :
添加错误日志输出,便于调试: console.error('图片加载失败:', coverUrl, error)
更换备用占位图服务为 picsum.photos ,提供更丰富的随机图片: picsum.photos/300/180?ran...
为每个图片设置唯一的随机参数,确保占位图多样性。
关键代码实现如下:
ini
function renderHotNews(newsList) {
const newsContainer = document.getElementById('news-container');
newsContainer.innerHTML = '';
newsList.forEach((news, index) => {
// 创建新闻卡片元素
const newsCard = document.createElement('div');
newsCard.className = 'news-card';
// 创建图片元素
const img = document.createElement('img');
// 使用代理服务加载图片
const proxyUrl = `https://images.weserv.nl/?url=${encodeURIComponent(news.cover)}`;
img.src = proxyUrl;
img.alt = news.title;
img.className = 'news-image';
// 添加图片错误处理
img.onerror = function(error) {
console.error('图片加载失败:', news.cover, error);
// 使用备用占位图
this.src = `https://picsum.photos/300/180?random=${index}`;
};
// 创建标题元素
const title = document.createElement(h3);
title.className = 'news-title';
title.textContent = news.title;
// 创建热度元素
const popularity = document.createElement('div');
popularity.className = 'news-popularity';
popularity.textContent = `热度: ${news.popularity}`;
// 组装新闻卡片
newsCard.appendChild(img);
newsCard.appendChild(title);
newsCard.appendChild(popularity);
// 添加点击事件,打开新闻链接
newsCard.addEventListener('click', () => {
window.open(news.link, '_blank');
});
newsContainer.appendChild(newsCard);
});
}
处理图片问题经验总结如下:
- 跨域资源加载 :对于前端项目中的跨域图片资源,可考虑使用可靠的图片代理服务绕过浏览器限制。
- 错误处理机制 :始终为图片加载添加错误处理逻辑,提高页面 robustness。
- 占位图策略 :选择合适的占位图服务,确保即使原图加载失败,页面仍有良好的视觉表现。
- 调试与日志 :添加适当的错误日志,便于快速定位和解决问题。
- 响应式设计 :确保图片和容器适配不同屏幕尺寸,提供一致的用户体验。
通过以上解决方案,成功解决了图片加载问题,提高了项目的稳定性和用户体验。这些经验可直接应用于其他涉及跨域资源加载的前端项目。
修复图片加载后效果如下:

五、结尾
基于本项目实现热点百事通网站我的主要收获是:
1 热点获取效率提升
使用TrendsHub后,我获取热点信息的时间从原来的1-2小时缩短到了5分钟以内。TrendsHub能够实时聚合多个平台的热点数据,并以结构化的方式呈现,大大减少了信息收集和整理的时间。
2 内容创作质量提升
结合TRAE CN的AI助手,我能够快速将热点数据转化为有深度、有见解的技术博客。AI助手不仅能够生成完整的内容框架,还能提供相关的背景信息和技术分析,使我的博客内容更加丰富和专业。通过安装并使用TrendsHub MCP服务,结合TRAE CN强大的AI能力,我成功解决了热点内容创作过程中的效率问题。从热点获取到内容发布的全流程自动化,不仅节省了大量时间,还提升了内容质量。
3 工作流整合效果
TrendsHub与TRAE CN的无缝集成,实现了从热点获取到内容发布的全流程自动化。我可以在一个界面内完成所有操作,无需切换多个工具,大大提升了工作效率。
TRAE CN不仅仅是一个IDE,更是一个强大的AI辅助开发平台。它能够理解你的需求,提供智能建议,自动生成代码,帮助你解决各种开发问题。TrendsHub作为基于MCP协议的热点聚合服务,与TRAE CN的完美结合,为热点内容创作提供了全新的解决方案。
如果你也经常需要处理热点信息并将其转化为有价值的内容,不妨尝试一下TrendsHub和TRAE CN的组合,相信它会给你带来意想不到的效率提升。
未来,随着MCP协议的不断发展和TRAE CN功能的持续完善,我期待看到更多创新的应用场景和更高效的工作流程。让我们一起探索AI IDE的无限可能!