项目简介

这是一个基于 Model Context Protocol (MCP) 构建的服务器实现,旨在将 Hacker News 的内容和功能集成到支持 MCP 的大型语言模型 (LLM) 客户端中,特别是为 Claude Desktop 设计。它允许 LLM 通过标准化的工具接口访问 Hacker News 的最新、热门、最佳故事及评论。

主要功能点

  • 获取 Hacker News 的最新故事列表。
  • 获取 Hacker News 的热门故事列表。
  • 获取 Hacker News 的最佳故事列表。
  • 查看指定故事的详细信息(包括内容)。
  • 读取指定故事的评论。
  • 对获取到的 Hacker News 内容进行格式清理,提高可读性。

安装步骤

  1. 克隆仓库: 打开终端或命令提示符,使用 Git 克隆本项目:
    git clone https://github.com/imprvhub/mcp-claude-hackernews
    cd mcp-claude-hackernews
  2. 安装依赖: 进入项目目录后,安装所需的 Node.js 依赖:
    npm install
  3. 构建项目: 运行构建命令生成可执行的服务器文件:
    npm run build
    构建成功后,将在 'build' 目录下生成 'index.js' 文件。

服务器配置

该 MCP 服务器通常被 MCP 客户端(如 Claude Desktop)配置为自动启动。您需要在您的 MCP 客户端的配置文件中添加相应的 MCP 服务器信息。

例如,对于 Claude Desktop,您需要编辑 'claude_desktop_config.json' 文件(位于不同操作系统的特定路径下,请参考 Claude Desktop 文档),在 'mcpServers' 对象中添加一个条目:

  • 服务器名称: 可以是任意标识符,例如 'hackerNews'。
  • 启动命令 (command): 指定运行 Node.js 可执行文件的命令,通常是 'node'。
  • 命令参数 (args): 包含一个参数,即您安装本项目后,'build/index.js' 文件的绝对路径。请确保使用您系统上实际的完整路径,并在 Windows 路径中使用双反斜杠 '\'。

例如,配置信息可能需要您指定类似以下信息(请根据您的客户端和文件路径调整):

  • 'server name': 'hackerNews'
  • 'command': 'node'
  • 'args': '["/your/absolute/path/to/mcp-claude-hackernews/build/index.js"]' (路径需替换为实际路径)

完成配置后,重新启动您的 MCP 客户端。

基本使用方法

配置完成后,当您的 MCP 客户端(如 Claude Desktop)需要访问 Hacker News 功能时,它会通过配置信息自动启动并连接到此 MCP 服务器。

您可以在客户端的聊天界面中使用特定的命令与服务器提供的工具进行交互。本项目提供了一个名为 'hn' 的工具,支持以下子命令:

  • 'hn latest [--数量]':获取最新故事列表,可选参数 '--数量' 指定条数(默认为 10,最多 50)。
  • 'hn top [--数量]':获取热门故事列表,可选参数 '--数量' 指定条数(默认为 10,最多 50)。
  • 'hn best [--数量]':获取最佳故事列表,可选参数 '--数量' 指定条数(默认为 10,最多 50)。
  • 'hn history --故事ID':获取指定故事 ID 的详细信息。参数 '--故事ID' 必须提供。
  • 'hn comments --索引或故事ID':获取指定故事的评论。参数可以是当前列表中的故事索引(如 '--3' 表示列表中第三个故事)或故事 ID(如 '--12345678')。

您通常可以直接用自然语言向 LLM 客户端提问(例如“显示 Hacker News 最新的 20 条故事”),客户端会智能地解析您的请求并调用相应的 'hn' 工具命令。

信息

分类

网页与API