We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/lizouzt/TrendRadar'
If you have feedback or need assistance with the MCP directory API, please join our Discord server
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>热点新闻分析</title>
<script src="https://cdnjs.cloudflare.com/ajax/libs/html2canvas/1.4.1/html2canvas.min.js" integrity="sha512-BNaRQnYJYiPSqHHDb58B0yaPfCu+Wgds8Gp/gU33kqBtgNS4tSPHuGibyoeqMV/TJlSKda6FXzoEyYGjTe+vXA==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
<style>
* { box-sizing: border-box; }
body {
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
margin: 0;
padding: 16px;
background: #fafafa;
color: #333;
line-height: 1.5;
}
.container {
max-width: 600px;
margin: 0 auto;
background: white;
border-radius: 12px;
overflow: hidden;
box-shadow: 0 2px 16px rgba(0,0,0,0.06);
}
.header {
background: linear-gradient(135deg, #7a72ff 0%, #3aafed 100%);
color: #fff;
padding: 32px 24px;
text-align: center;
position: relative;
}
.save-buttons {
position: absolute;
top: 16px;
right: 16px;
display: flex;
gap: 8px;
}
.save-btn {
background: rgba(255, 255, 255, 0.2);
border: 1px solid rgba(255, 255, 255, 0.3);
color: white;
padding: 8px 16px;
border-radius: 6px;
cursor: pointer;
font-size: 13px;
font-weight: 500;
transition: all 0.2s ease;
backdrop-filter: blur(10px);
white-space: nowrap;
}
.save-btn:hover {
background: rgba(255, 255, 255, 0.3);
border-color: rgba(255, 255, 255, 0.5);
transform: translateY(-1px);
}
.save-btn:active {
transform: translateY(0);
}
.save-btn:disabled {
opacity: 0.6;
cursor: not-allowed;
}
.header-title {
font-size: 22px;
font-weight: 700;
margin: 0 0 20px 0;
}
.header-info {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 16px;
font-size: 14px;
opacity: 0.95;
}
.info-item {
text-align: center;
}
.info-label {
display: block;
font-size: 12px;
opacity: 0.8;
margin-bottom: 4px;
}
.info-value {
font-weight: 600;
font-size: 16px;
}
.content {
padding: 24px;
}
.word-group {
margin-bottom: 40px;
}
.word-group:first-child {
margin-top: 0;
}
.word-header {
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 20px;
padding-bottom: 8px;
border-bottom: 1px solid #f0f0f0;
}
.word-info {
display: flex;
align-items: center;
gap: 12px;
}
.word-name {
font-size: 17px;
font-weight: 600;
color: #1a1a1a;
}
.word-count {
color: #666;
font-size: 13px;
font-weight: 500;
}
.word-count.hot { color: #dc2626; font-weight: 600; }
.word-count.warm { color: #ea580c; font-weight: 600; }
.word-index {
color: #999;
font-size: 12px;
}
.news-item {
margin-bottom: 20px;
padding: 16px 0;
border-bottom: 1px solid #f5f5f5;
position: relative;
display: flex;
gap: 12px;
align-items: center;
}
.news-item:last-child {
border-bottom: none;
}
.news-item.new::after {
content: "NEW";
position: absolute;
top: 12px;
right: 0;
background: #fbbf24;
color: #92400e;
font-size: 9px;
font-weight: 700;
padding: 3px 6px;
border-radius: 4px;
letter-spacing: 0.5px;
}
.news-number {
color: #999;
font-size: 13px;
font-weight: 600;
min-width: 20px;
text-align: center;
flex-shrink: 0;
background: #f8f9fa;
border-radius: 50%;
width: 24px;
height: 24px;
display: flex;
align-items: center;
justify-content: center;
align-self: flex-start;
margin-top: 8px;
}
.news-content {
flex: 1;
min-width: 0;
padding-right: 40px;
}
.news-item.new .news-content {
padding-right: 50px;
}
.news-header {
display: flex;
align-items: center;
gap: 8px;
margin-bottom: 8px;
flex-wrap: wrap;
}
.source-name {
color: #666;
font-size: 12px;
font-weight: 500;
}
.rank-num {
color: #fff;
background: #6b7280;
font-size: 10px;
font-weight: 700;
padding: 2px 6px;
border-radius: 10px;
min-width: 18px;
text-align: center;
}
.rank-num.top { background: #dc2626; }
.rank-num.high { background: #ea580c; }
.time-info {
color: #999;
font-size: 11px;
}
.count-info {
color: #059669;
font-size: 11px;
font-weight: 500;
}
.news-title {
font-size: 15px;
line-height: 1.4;
color: #1a1a1a;
margin: 0;
}
.news-link {
color: #2563eb;
text-decoration: none;
}
.news-link:hover {
text-decoration: underline;
}
.news-link:visited {
color: #7c3aed;
}
.topic-trend-section {
margin-top: 40px;
padding-top: 24px;
border-top: 2px solid #f0f0f0;
}
.topic-trend-title {
color: #1a1a1a;
font-size: 16px;
font-weight: 600;
margin: 0 0 20px 0;
}
.viral-topic-item {
padding: 16px 0;
border-bottom: 1px solid #f5f5f5;
}
.viral-topic-item:last-child {
border-bottom: none;
}
.viral-topic-header {
display: flex;
align-items: center;
gap: 12px;
margin-bottom: 12px;
}
.viral-topic-keyword {
font-size: 16px;
font-weight: 600;
}
.topic-item {
display: flex;
align-items: center;
gap: 12px;
padding: 8px 0;
border-bottom: 1px solid #f9f9f9;
}
.topic-item:last-child {
border-bottom: none;
}
.viral-topic-stats {
font-size: 12px;
color: #666;
}
.viral-topic-stats .new { color: #dc2626; font-weight: bold; }
.viral-topic-stats .up { color: #f59e0b; font-weight: bold; }
.viral-topic-stats .level-high { color: #dc2626; font-weight: bold; }
.viral-topic-stats .level-mid { color: #f59e0b; font-weight: bold; }
.viral-sample-titles {
list-style: none;
padding-left: 16px;
margin: 0;
font-size: 13px;
}
.viral-sample-titles li {
color: #666;
padding: 4px 0;
position: relative;
}
.viral-sample-titles li::before { content: '▪'; position: absolute; left: -14px; color: #ccc; }
.new-section {
margin-top: 40px;
padding-top: 24px;
border-top: 2px solid #f0f0f0;
}
.new-section-title {
color: #1a1a1a;
font-size: 16px;
font-weight: 600;
margin: 0 0 20px 0;
}
.new-source-group {
margin-bottom: 24px;
}
.new-source-title {
color: #666;
font-size: 13px;
font-weight: 500;
margin: 0 0 12px 0;
padding-bottom: 6px;
border-bottom: 1px solid #f5f5f5;
}
.new-item {
display: flex;
align-items: center;
gap: 12px;
padding: 8px 0;
border-bottom: 1px solid #f9f9f9;
}
.new-item:last-child {
border-bottom: none;
}
.new-item-number {
color: #999;
font-size: 12px;
font-weight: 600;
min-width: 18px;
text-align: center;
flex-shrink: 0;
background: #f8f9fa;
border-radius: 50%;
width: 20px;
height: 20px;
display: flex;
align-items: center;
justify-content: center;
}
.new-item-rank {
color: #fff;
background: #6b7280;
font-size: 10px;
font-weight: 700;
padding: 3px 6px;
border-radius: 8px;
min-width: 20px;
text-align: center;
flex-shrink: 0;
}
.new-item-rank.top { background: #dc2626; }
.new-item-rank.high { background: #ea580c; }
.new-item-content {
flex: 1;
min-width: 0;
}
.new-item-title {
font-size: 14px;
line-height: 1.4;
color: #1a1a1a;
margin: 0;
}
.error-section {
background: #fef2f2;
border: 1px solid #fecaca;
border-radius: 8px;
padding: 16px;
margin-bottom: 24px;
}
.error-title {
color: #dc2626;
font-size: 14px;
font-weight: 600;
margin: 0 0 8px 0;
}
.error-list {
list-style: none;
padding: 0;
margin: 0;
}
.error-item {
color: #991b1b;
font-size: 13px;
padding: 2px 0;
font-family: 'SF Mono', Consolas, monospace;
}
.footer {
margin-top: 32px;
padding: 20px 24px;
background: #f8f9fa;
border-top: 1px solid #e5e7eb;
text-align: center;
}
.footer-content {
font-size: 13px;
color: #6b7280;
line-height: 1.6;
}
.footer-link {
color: #4f46e5;
text-decoration: none;
font-weight: 500;
transition: color 0.2s ease;
}
.footer-link:hover {
color: #7c3aed;
text-decoration: underline;
}
.project-name {
font-weight: 600;
color: #374151;
}
@media (max-width: 480px) {
body { padding: 12px; }
.header { padding: 24px 20px; }
.content { padding: 20px; }
.footer { padding: 16px 20px; }
.header-info { grid-template-columns: 1fr; gap: 12px; }
.news-header { gap: 6px; }
.news-content { padding-right: 45px; }
.news-item { gap: 8px; }
.new-item { gap: 8px; }
.news-number { width: 20px; height: 20px; font-size: 12px; }
.save-buttons {
position: static;
margin-bottom: 16px;
display: flex;
gap: 8px;
justify-content: center;
flex-direction: column;
width: 100%;
}
.save-btn {
width: 100%;
}
}
</style>
</head>
<body>
<div class="container">
<div class="header">
<div class="save-buttons">
<button class="save-btn" onclick="saveAsImage()">保存为图片</button>
<button class="save-btn" onclick="saveAsMultipleImages()">分段保存</button>
</div>
<div class="header-title">热点新闻分析</div>
<div class="header-info">
<div class="info-item">
<span class="info-label">报告类型</span>
<span class="info-value">实时分析</span>
</div>
<div class="info-item">
<span class="info-label">新闻总数</span>
<span class="info-value">92 条</span>
</div>
<div class="info-item">
<span class="info-label">热点新闻</span>
<span class="info-value">1 条</span>
</div>
<div class="info-item">
<span class="info-label">生成时间</span>
<span class="info-value">12-25 23:12</span>
</div>
</div>
</div>
<div class="content">
<div class="word-group">
<div class="word-header">
<div class="word-info">
<div class="word-name">特斯拉 马斯克</div>
<div class="word-count ">1 条</div>
</div>
<div class="word-index">1/1</div>
</div>
<div class="news-item new">
<div class="news-number">1</div>
<div class="news-content">
<div class="news-header">
<span class="source-name">华尔街见闻</span><span class="rank-num ">9</span><span class="time-info">23时12分</span>
</div>
<div class="news-title"><a href="https://wallstreetcn.com/articles/3762031" target="_blank" class="news-link">马斯克预测美国经济18个月内实现两位数增长,AI成关键驱动力</a>
</div>
</div>
</div>
</div>
<div class="topic-trend-section">
<div class="topic-trend-title">🔥 异常热度话题</div>
<div class="viral-topic-item">
<div class="viral-topic-header">
<div class="viral-topic-keyword">斩杀线</div>
<div class="viral-topic-stats">
7条提及 · <span class="up">↑7%</span> · <span class="level-high">高热度</span>
</div>
</div>
<ul class="viral-sample-titles"><li>当美国人被一条“斩杀线”击中</li><li>中国为什么没有美国的“斩杀线”</li><li>当美国人被一条“斩杀线”击中…</li></ul></div>
<div class="viral-topic-item">
<div class="viral-topic-header">
<div class="viral-topic-keyword">国防部</div>
<div class="viral-topic-stats">
6条提及 · <span class="new">新话题</span> · <span class="level-high">高热度</span>
</div>
</div>
<ul class="viral-sample-titles"><li>国防部:解放军打“独”促统不停歇</li><li>国防部:奉劝“台独”武装认清现实</li><li>福建舰航经台海 国防部:以后还组织</li></ul></div>
<div class="viral-topic-item">
<div class="viral-topic-header">
<div class="viral-topic-keyword">台独</div>
<div class="viral-topic-stats">
5条提及 · <span class="new">新话题</span> · <span class="level-high">高热度</span>
</div>
</div>
<ul class="viral-sample-titles"><li>郑丽文:全世界没有国家支持“台独”</li><li>“台独”挑衅一次解放军就进逼一步</li><li>国防部:奉劝“台独”武装认清现实</li></ul></div>
<div class="viral-topic-item">
<div class="viral-topic-header">
<div class="viral-topic-keyword">骄阳似我</div>
<div class="viral-topic-stats">
4条提及 · <span class="up">↑4%</span> · <span class="level-mid">中热度</span>
</div>
</div>
<ul class="viral-sample-titles"><li>骄阳似我</li><li>骄阳似我 光污染</li><li>骄阳似我 甜</li></ul></div>
<div class="viral-topic-item">
<div class="viral-topic-header">
<div class="viral-topic-keyword">如何评价</div>
<div class="viral-topic-stats">
4条提及 · <span class="up">↑4%</span> · <span class="level-mid">中热度</span>
</div>
</div>
<ul class="viral-sample-titles"><li>如何评价 NBA 状元本西蒙斯转行成为职业钓鱼佬?背后蕴藏着怎样的商业逻辑?</li><li>如何评价 Gumayusi 近期舆论翻车?</li><li>如何评价《鸣潮》3.0 版本的新角色和剧情?</li></ul></div>
<div class="viral-topic-item">
<div class="viral-topic-header">
<div class="viral-topic-keyword">中国军力报告</div>
<div class="viral-topic-stats">
3条提及 · <span class="up">↑3%</span> · <span class="level-mid">中热度</span>
</div>
</div>
<ul class="viral-sample-titles"><li>美发布2025年《中国军力报告》:赶工迹象、矛盾和臆测炒作</li><li>美所谓“中国军力报告”可靠性有多大呢?</li><li>五角大楼“中国军力报告”硬中有缓?专家解读</li></ul></div>
<div class="viral-topic-item">
<div class="viral-topic-header">
<div class="viral-topic-keyword">CBA</div>
<div class="viral-topic-stats">
3条提及 · <span class="up">↑3%</span> · <span class="level-mid">中热度</span>
</div>
</div>
<ul class="viral-sample-titles"><li>体育评论员杨毅称抖音与 CBA 电商带货保底金额仅小几千万,这透露出 CBA 联赛怎样的商业价值?</li><li>体育评论员杨毅称抖音与 CBA 电商带货保底金额仅小几千万,这透露出 CBA 联赛怎样的商业价值?</li><li>李凯尔辟谣已恢复美国国籍,经纪人称不排除效力 CBA 可能,如何看待这个表态?男篮的规化策略可否持续?</li></ul></div></div>
<div class="topic-trend-section">
<div class="topic-trend-title">✨ 关注话题趋势</div>
<div class="word-group">
<div class="word-header">
<div class="word-info">
<div class="word-name">自动驾驶</div>
<div class="word-count">11 条提及 <span style="color: #059669;">(↓100.00%)</span></div>
</div>
</div>
<div class="news-item">
<div class="news-content" style="padding-right: 0;">
<img src="data:image/png;base64,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" alt="自动驾驶 趋势图" style="width: 100%; height: auto;" />
</div>
</div>
</div></div>
</div>
<div class="footer">
<div class="footer-content">
</div>
</div>
</div>
<script>
async function saveAsImage() {
const button = event.target;
const originalText = button.textContent;
try {
button.textContent = '生成中...';
button.disabled = true;
window.scrollTo(0, 0);
// 等待页面稳定
await new Promise(resolve => setTimeout(resolve, 200));
// 截图前隐藏按钮
const buttons = document.querySelector('.save-buttons');
buttons.style.visibility = 'hidden';
// 再次等待确保按钮完全隐藏
await new Promise(resolve => setTimeout(resolve, 100));
const container = document.querySelector('.container');
const canvas = await html2canvas(container, {
backgroundColor: '#ffffff',
scale: 1.5,
useCORS: true,
allowTaint: false,
imageTimeout: 10000,
removeContainer: false,
foreignObjectRendering: false,
logging: false,
width: container.offsetWidth,
height: container.offsetHeight,
x: 0,
y: 0,
scrollX: 0,
scrollY: 0,
windowWidth: window.innerWidth,
windowHeight: window.innerHeight
});
buttons.style.visibility = 'visible';
const link = document.createElement('a');
const now = new Date();
const filename = `TrendRadar_热点新闻分析_${now.getFullYear()}${String(now.getMonth() + 1).padStart(2, '0')}${String(now.getDate()).padStart(2, '0')}_${String(now.getHours()).padStart(2, '0')}${String(now.getMinutes()).padStart(2, '0')}.png`;
link.download = filename;
link.href = canvas.toDataURL('image/png', 1.0);
// 触发下载
document.body.appendChild(link);
link.click();
document.body.removeChild(link);
button.textContent = '保存成功!';
setTimeout(() => {
button.textContent = originalText;
button.disabled = false;
}, 2000);
} catch (error) {
const buttons = document.querySelector('.save-buttons');
buttons.style.visibility = 'visible';
button.textContent = '保存失败';
setTimeout(() => {
button.textContent = originalText;
button.disabled = false;
}, 2000);
}
}
async function saveAsMultipleImages() {
const button = event.target;
const originalText = button.textContent;
const container = document.querySelector('.container');
const scale = 1.5;
const maxHeight = 5000 / scale;
try {
button.textContent = '分析中...';
button.disabled = true;
// 获取所有可能的分割元素
const newsItems = Array.from(container.querySelectorAll('.news-item'));
const wordGroups = Array.from(container.querySelectorAll('.word-group'));
const newSection = container.querySelector('.new-section');
const errorSection = container.querySelector('.error-section');
const header = container.querySelector('.header');
const footer = container.querySelector('.footer');
// 计算元素位置和高度
const containerRect = container.getBoundingClientRect();
const elements = [];
// 添加header作为必须包含的元素
elements.push({
type: 'header',
element: header,
top: 0,
bottom: header.offsetHeight,
height: header.offsetHeight
});
// 添加错误信息(如果存在)
if (errorSection) {
const rect = errorSection.getBoundingClientRect();
elements.push({
type: 'error',
element: errorSection,
top: rect.top - containerRect.top,
bottom: rect.bottom - containerRect.top,
height: rect.height
});
}
// 按word-group分组处理news-item
wordGroups.forEach(group => {
const groupRect = group.getBoundingClientRect();
const groupNewsItems = group.querySelectorAll('.news-item');
// 添加word-group的header部分
const wordHeader = group.querySelector('.word-header');
if (wordHeader) {
const headerRect = wordHeader.getBoundingClientRect();
elements.push({
type: 'word-header',
element: wordHeader,
parent: group,
top: groupRect.top - containerRect.top,
bottom: headerRect.bottom - containerRect.top,
height: headerRect.height
});
}
// 添加每个news-item
groupNewsItems.forEach(item => {
const rect = item.getBoundingClientRect();
elements.push({
type: 'news-item',
element: item,
parent: group,
top: rect.top - containerRect.top,
bottom: rect.bottom - containerRect.top,
height: rect.height
});
});
});
// 添加新增新闻部分
if (newSection) {
const rect = newSection.getBoundingClientRect();
elements.push({
type: 'new-section',
element: newSection,
top: rect.top - containerRect.top,
bottom: rect.bottom - containerRect.top,
height: rect.height
});
}
// 添加footer
const footerRect = footer.getBoundingClientRect();
elements.push({
type: 'footer',
element: footer,
top: footerRect.top - containerRect.top,
bottom: footerRect.bottom - containerRect.top,
height: footer.offsetHeight
});
// 计算分割点
const segments = [];
let currentSegment = { start: 0, end: 0, height: 0, includeHeader: true };
let headerHeight = header.offsetHeight;
currentSegment.height = headerHeight;
for (let i = 1; i < elements.length; i++) {
const element = elements[i];
const potentialHeight = element.bottom - currentSegment.start;
// 检查是否需要创建新分段
if (potentialHeight > maxHeight && currentSegment.height > headerHeight) {
// 在前一个元素结束处分割
currentSegment.end = elements[i - 1].bottom;
segments.push(currentSegment);
// 开始新分段
currentSegment = {
start: currentSegment.end,
end: 0,
height: element.bottom - currentSegment.end,
includeHeader: false
};
} else {
currentSegment.height = potentialHeight;
currentSegment.end = element.bottom;
}
}
// 添加最后一个分段
if (currentSegment.height > 0) {
currentSegment.end = container.offsetHeight;
segments.push(currentSegment);
}
button.textContent = `生成中 (0/${segments.length})...`;
// 隐藏保存按钮
const buttons = document.querySelector('.save-buttons');
buttons.style.visibility = 'hidden';
// 为每个分段生成图片
const images = [];
for (let i = 0; i < segments.length; i++) {
const segment = segments[i];
button.textContent = `生成中 (${i + 1}/${segments.length})...`;
// 创建临时容器用于截图
const tempContainer = document.createElement('div');
tempContainer.style.cssText = `
position: absolute;
left: -9999px;
top: 0;
width: ${container.offsetWidth}px;
background: white;
`;
tempContainer.className = 'container';
// 克隆容器内容
const clonedContainer = container.cloneNode(true);
// 移除克隆内容中的保存按钮
const clonedButtons = clonedContainer.querySelector('.save-buttons');
if (clonedButtons) {
clonedButtons.style.display = 'none';
}
tempContainer.appendChild(clonedContainer);
document.body.appendChild(tempContainer);
// 等待DOM更新
await new Promise(resolve => setTimeout(resolve, 100));
// 使用html2canvas截取特定区域
const canvas = await html2canvas(clonedContainer, {
backgroundColor: '#ffffff',
scale: scale,
useCORS: true,
allowTaint: false,
imageTimeout: 10000,
logging: false,
width: container.offsetWidth,
height: segment.end - segment.start,
x: 0,
y: segment.start,
windowWidth: window.innerWidth,
windowHeight: window.innerHeight
});
images.push(canvas.toDataURL('image/png', 1.0));
// 清理临时容器
document.body.removeChild(tempContainer);
}
// 恢复按钮显示
buttons.style.visibility = 'visible';
// 下载所有图片
const now = new Date();
const baseFilename = `TrendRadar_热点新闻分析_${now.getFullYear()}${String(now.getMonth() + 1).padStart(2, '0')}${String(now.getDate()).padStart(2, '0')}_${String(now.getHours()).padStart(2, '0')}${String(now.getMinutes()).padStart(2, '0')}`;
for (let i = 0; i < images.length; i++) {
const link = document.createElement('a');
link.download = `${baseFilename}_part${i + 1}.png`;
link.href = images[i];
document.body.appendChild(link);
link.click();
document.body.removeChild(link);
// 延迟一下避免浏览器阻止多个下载
await new Promise(resolve => setTimeout(resolve, 100));
}
button.textContent = `已保存 ${segments.length} 张图片!`;
setTimeout(() => {
button.textContent = originalText;
button.disabled = false;
}, 2000);
} catch (error) {
console.error('分段保存失败:', error);
const buttons = document.querySelector('.save-buttons');
buttons.style.visibility = 'visible';
button.textContent = '保存失败';
setTimeout(() => {
button.textContent = originalText;
button.disabled = false;
}, 2000);
}
}
document.addEventListener('DOMContentLoaded', function() {
window.scrollTo(0, 0);
});
</script>
</body>
</html>