HackerNews MCP服务器
一个全面的模型上下文协议(MCP)服务器,提供与HackerNews API的无缝集成,使人工智能助手能够通过标准化的MCP接口访问、分析和理解Hacker新闻内容。
🚀 快速开始
# Install dependencies
npm install
# Build the project
npm run build
# Start the server
npm start然后重新启动兼容MCP的客户端(如Cursor)以连接到服务器。
✨ 特性
🔧 工具(5个交互式命令)
search_posts-搜索和过滤HackerNews帖子
- 按关键字、作者、分数和日期范围筛选 - 例子: *“查找得分>100的关于‘AI’的故事”*
get_post-获取全面的帖子详细信息
- 包括元数据、评论树和参与度指标 - 例子: *“通过评论获取故事44473319的完整细节”*
search_user-分析用户资料和活动
- 用户统计数据、头条新闻和贡献模式 - 例子: *“分析用户'pg'并显示其活动”*
search_trending-查找当前热门话题
- 来自头条新闻的关键词频率分析 - 例子: *“今天HackerNews上有哪些热门话题?”*
search_comments-分析评论参与度
- 评论统计、顶级评论者和讨论模式 - 例子: *“分析关于故事44473319的评论”*
🛠️ 安装和设置
先决条件
- Node.js 18+
- npm或纱线
安装步骤
- 克隆并安装:
git clone
cd hackernews-mcp-server
npm install- 构建项目:
npm run build- 配置MCP客户端(游标):
- 这 .cursor/mcp.json 文件已配置 - 重新启动Cursor以加载MCP服务器
- 开始使用:
npm start🎮 实际使用示例(测试和工作)
🔍 搜索帖子-按主题查找故事
# What we tested:
search_posts with query="AI", minScore=50, limit=10
# Results we got:
- "'Positive review only': Researchers hide AI prompts in papers" (100 points, 52 comments)
- "Cops in [Spain] think everyone using a Google Pixel must be a drug dealer" (65 points, 50 comments)使用案例:
- 查找特定主题的高参与度故事
- 按作者、分数阈值或日期范围筛选
- 研究您所在领域的趋势讨论
📄 获取帖子详情-深度故事分析
# What we tested:
get_post for story ID 44473319 (AI prompts story)
# What we learned:
- Full story metadata (age: 3.2 hours, domain: asia.nikkei.com)
- Complete comment tree (57 comments from 38 authors)
- Engagement metrics and discussion quality使用案例:
- 分析你感兴趣的具体故事
- 获取完整的评论讨论
- 了解社区对新闻的反应
👤 搜索用户-个人资料分析
# What we tested:
search_user for "zczc" (Google Pixel story author)
# What we discovered:
- 8.6 years on HN, 876 karma, steady contributor
- Research-oriented: provides primary sources
- Cross-domain expertise: tech, policy, programming
- Quality over quantity approach使用案例:
- 有趣帖子的研究作者
- 寻找领域专家和思想领袖
- 了解用户贡献模式
📈 搜索趋势-主题分析
# What we tested:
search_trending analyzing 49 current top stories
# Current trends we found:
- "software", "game", "first" (6.1% each)
- "systems", "local", "google" (4.1% each)
- Space tech: "satellite", "geostationary"
- Focus on local-first software and gaming使用案例:
- 跟踪技术社区正在讨论的内容
- 识别新兴技术趋势
- 监控社区利益的变化
💬 搜索评论-讨论分析
# What we tested:
search_comments on the Google Pixel Spain story
# What we found:
- 56 comments from 38 unique authors
- Active discussion (multiple users with 4+ comments)
- International perspectives on privacy/surveillance
- Quality moderation (5 deleted, 1 flagged)使用案例:
- 分析社区对主题的看法
- 寻找参与度最高的讨论者
- 了解讨论质量和模式
🏗️ 建筑
智能缓存系统
- 三层缓存:项目、用户和故事列表
- 可配置TTL:默认5分钟,可调
- LRU驱逐:缓存已满时自动清理
- 演出:将API调用减少约80%
API客户端功能
- 全面覆盖:所有HackerNews API端点
- 批量操作:高效的多项目加载
- 错误处理:强大的重试和超时逻辑
- 速率限制:尊重API使用
增强数据
- 故事元数据:年龄、域、评论数计算
- 用户统计:平均分数、热门故事、活动模式
- 评论分析:参与度指标、讨论树
- 趋势分析:关键字频率、主题提取
🔧 配置
环境变量(可选):
# Server Configuration
SERVER_NAME=hackernews-mcp-server
SERVER_VERSION=1.0.0
# API Configuration
HACKERNEWS_API_BASE_URL=https://hacker-news.firebaseio.com/v0
HACKERNEWS_API_TIMEOUT=10000
# Cache Configuration
CACHE_TTL_SECONDS=300
CACHE_MAX_SIZE=1000
# Logging
LOG_LEVEL=info🧪 发展
# Development mode with hot reload
npm run dev
# Run tests
npm test
# Lint code
npm run lint
npm run lint:fix
# Type checking
npm run build📊 MCP工具和功能
您可以使用我们经过测试的工具实际执行以下操作:
| MCP工具 | 它的作用 | 来自我们测试的真实示例 |
|---|---|---|
search_posts | 按条件查找故事 | 找到2个AI故事,得分100+和65分 |
get_post | 获取完整的故事细节 | 分析的AI提示故事有57条评论 |
search_user | 简介分析 | 简介“zczc”-8.6岁老将,质量贡献者 |
search_trending | 主题分析 | 发现“软件”、“游戏”、“系统”趋势 |
search_comments | 讨论分析 | 分析了Pixel故事的56条评论和38位作者 |
资源访问模式:
hackernews://stories/top→ 当前头条新闻hackernews://user/username→ 用户配置文件hackernews://item/12345→ 个人职位hackernews://comments/12345→ 评论树
🤝 真实世界用例(基于我们的测试)
📰 内容研究与分析
- 寻找突破性的科技故事:就像我们在论文发现中的人工智能提示(100分,积极讨论)
- 追踪有争议的话题:隐私问题,如谷歌Pixel分析故事
- 分析讨论质量:来自38位作者的57条评论显示了真正的参与
- 监控新兴趋势:空间技术、本地第一软件、游戏开发
👥 社区智能
- 确定质量贡献者:成立“zczc”作为研究型、跨领域专家
- 了解用户模式:8.6年,稳定的业力增长,源验证习惯
- 寻找领域专家:持续提供高质量贡献的用户
- 追踪思想领袖:特定技术领域的活跃用户
📈 趋势与情绪分析
- 当前技术重点“软件”、“系统”、“游戏”各占6.1%
- 新兴技术:卫星/空间技术讨论增多
- 社区情感:国际隐私问题、学术诚信辩论
- 讨论模式:质量适度,国际视野
🔍 研究应用
- 学术研究:研究技术社区的讨论和情绪
- 市场研究:了解开发人员和技术社区的兴趣
- 竞争情报:监控关于技术和公司的讨论
- 内容策略:查找能够产生高参与度的主题
🚀 演出
- 缓存:API调用减少80%
- 批量操作:多项目加载速度提高3倍
- 智能过滤:客户端搜索减少了服务器负载
- 并发请求:并行处理提高效率
🔒 隐私与道德
- 仅限公共数据:无法访问私人信息
- 尊重使用:速率限制和缓存
- 无数据存储:仅临时缓存
- 透明:开源实施
🐛 故障排除
常见问题
- 服务器无法启动
# Check Node.js version
node --version # Should be 18+
# Rebuild the project
npm run build- MCP连接问题
- 重新启动MCP客户端(游标) - 检查 .cursor/mcp.json 配置 - 验证服务器是否正在运行 npm start
- API错误
- 检查网络连接 - 验证HackerNews API是否可访问 - 检查缓存配置
调试模式
# Enable debug logging
LOG_LEVEL=debug npm start
# Check cache statistics
# Use the hackernews://cache/stats resource📈 路线图
- \[\]实时WebSocket更新
- \[\]高级情绪分析
- \[\]用户网络分析
- \[\]导出功能
- \[\]自定义筛选规则
- \[\]性能仪表板
🤝 贡献
- 分叉存储库
- 创建要素分支(
git checkout -b feature/amazing-feature) - 提交更改(
git commit -m 'Add amazing feature') - 推送到分支(
git push origin feature/amazing-feature) - 打开拉取请求
______________________________________________________________________
🎉 准备好以前所未有的方式探索HackerNews了吗?
🚀 快速启动命令
npm run build && npm start💬 开始你的第一次对话
问你的AI助手:
- *“现在HackerNews上最热门的人工智能故事是什么?”*
- *“查找当今科技界的热门话题”*
- *“分析本周讨论最多的故事”*
______________________________________________________________________
🙏 致谢与致谢
🧡 特别感谢HackerNews
*“最好的技术讨论发生在这里”*
我们非常感谢 Hacker新闻 和 Y组合器 用于:
🌟 创建世界上最好的技术社区\ 📡 提供免费、实时的API访问\ 🔥 促进激发创新的令人难以置信的讨论\ 🚀 构建一个每天讨论技术未来的平台
⚡ 技术支持
______________________________________________________________________
📜 许可和使用
🆓 此MCP服务器
MIT许可证 -使用它,修改它,分享它!看 许可证 文件。\ 由...创建:托盘Theberge
📊 黑客新闻API
非商业用途免费 -尊重创造内容的社区。\ 商业用途:检查 Y Combinator的条款
______________________________________________________________________
🌟 加入社区
发现bug了吗? 打开一个问题!\ 有主意吗? 开始讨论!\ 想贡献吗? PR欢迎!
🔗 连接
- 📧 电子邮件: Traves.Theberge@gmail.com
- 🐙 GitHub: 此存储库
- 🗨️ 讨论:分享您的HackerNews见解!
______________________________________________________________________
🧡 继续黑客,继续探索! 🧡
*内置于❤️ HackerNews社区*
