SuperAPI AI 工具集

hn-server

hn-server 是一个基于 Model Context Protocol(MCP)的服务器,用于从 Hacker News 抓取故事。它解析 news.ycombinator.com 的 HTML 内容,为 top、new、ask、show、jobs 等不同类型的故事提供结构化数据,包含标题、URL、点数、作者、时间戳和评论数。支持配置返回故事数量,具备清晰的错误处理与参数校验。可用于与 Claude 等支持 MCP 的 AI 助手集成,通过自然语言获取 Hacker News 内容。

访问官网

工具介绍

用途

hn-server 是一个 Hacker News MCP 服务器,作为 Model Context Protocol(MCP)的实现,提供从 Hacker News 获取故事的工具。它通过解析 news.ycombinator.com 的 HTML 内容,将页面转换为结构化数据,方便 AI 助手或程序进一步处理。

主要能力

  • 获取多种类型的故事:top(头条)、new(最新)、ask(Ask HN)、show(Show HN)、jobs(招聘)。
  • 返回结构化数据,每条故事包含:标题(title)、URL(url,可能为文本帖的内部 HN 链接)、点数(points)、作者(author)、时间戳(time)、评论数(commentCount)、排名(rank)。
  • 可配置返回的故事数量(limit)。
  • 具备清晰的错误处理与参数校验。

使用方式

  1. 克隆仓库:git clone https://github.com/pskill9/hn-server(安装命令未在资料中提供完整,请参考仓库说明)。
  2. 安装依赖并构建服务器(具体命令未在资料中提供)。
  3. 将服务器配置添加到 MCP 设置文件(位置取决于系统)。对于 VSCode Claude 扩展,添加到相应配置;对于 Claude 桌面应用,添加到其配置文件。
  4. 配置完成后,可通过 Claude 等支持 MCP 的客户端的自然语言界面交互。

服务器提供工具 get_stories,参数如下:

  • type(字符串):要获取的故事类型,可选 'top'、'new'、'ask'、'show'、'jobs',默认 'top'。
  • limit(数字):返回的故事数量,范围 1-30,默认 10。

示例交互:

  • “Show me the top 5 stories from Hacker News”
  • “What are the latest Ask HN posts?”
  • “Get me the top Show HN submissions from today”

Claude 会自动使用合适的参数获取用户想要的故事。

技术实现

服务器基于以下技术构建:

  • Model Context Protocol SDK
  • Axios 用于 HTTP 请求
  • Cheerio 用于 HTML 解析

若需修改服务器,可编辑 src/index.ts。

适用场景

  • 与 Claude 桌面应用或 VSCode Claude 扩展集成,通过自然语言查询 Hacker News 内容。
  • 需要以结构化形式获取 Hacker News 故事数据的开发或自动化任务。

限制

  • 故事类型仅支持 top、new、ask、show、jobs。
  • 每次请求返回的故事数量限制在 1-30 条。
  • 服务器包含针对无效故事类型、网络故障、HTML 解析错误和无效参数值的错误处理,错误会附带适当的错误代码和描述性消息。
  • 项目采用 MIT 许可证。

(注:资料中未提供完整的安装依赖和构建命令,实际使用时请参考仓库说明。)