Skip to main content
Glama
georgeck

Hacker News Companion MCP

by georgeck

黑客新闻伴侣 MCP

铁匠徽章

使用 Claude 总结 Hacker News 讨论的模型上下文协议 (MCP)。

概述

该 MCP 负责抓取并处理 Hacker News 的讨论,并将其转换为 Claude 可用来生成高质量摘要的格式。它处理评论的层级结构及其元数据(评分、踩点等),以帮助 Claude 理解不同评论之间的相对重要性和相互关系。

Related MCP server: Hacker News MCP Server

特征

  • 处理 Hacker News URL 或帖子 ID

  • 从 HN 下载并分析评论结构

  • 根据社区参与度对评论进行评分

  • 针对 Claude 摘要优化的格式数据

安装

通过 Smithery 安装

要通过Smithery自动为 Claude Desktop 安装 Hacker News Companion:

npx -y @smithery/cli install @georgeck/hn-companion-mcp --client claude

手动安装

  1. 克隆存储库:

    git clone https://github.com/yourusername/hn-companion-mcp.git
    cd hn-companion-mcp
  2. 安装依赖项:

    npm install

用法

命令行界面

node index.js <post-id-or-url>

例子:

node index.js 43448075
# or
node index.js https://news.ycombinator.com/item?id=43448075

API 服务器

启动服务器:

npm start

提出请求:

curl -X POST http://localhost:3000/api/summarize \
  -H "Content-Type: application/json" \
  -d '{"input": "https://news.ycombinator.com/item?id=43448075"}'

API 参考

POST /api/summarize

请求正文:

{
  "input": "https://news.ycombinator.com/item?id=43448075"
}

回复:

{
  "status": "success",
  "data": {
    "systemPrompt": "...",
    "userPrompt": "...",
    "commentPathIdMapping": { ... },
    "postTitle": "...",
    "postId": "...",
    "commentCount": 123
  }
}

与克劳德的整合

此 MCP 旨在为 Claude 准备数据以供其进行汇总。当用户要求 Claude 对 Hacker News 讨论进行汇总时,Claude 可以调用此 MCP 获取格式化的数据,然后根据系统提供的提示和用户提示生成摘要。

"hn-companion": {
      "command": "node",
      "args": ["<full path to src>/hn-companion-mcp/server.js"]
    }
  }

执照

麻省理工学院

Available Tools

1 tool
get_hn_post_formatted_commentsB

Retrieves and formats comments from a Hacker News discussion post for summarization by an LLM. Use the hacker_news_summarization_user_prompt prompts to generate a summary.

ParametersJSON Schema
NameRequiredDescriptionDefault
post_urlYesThe URL or ID for the Hacker News post to analyze. Can be a full URL (https://news.ycombinator.com/item?id=43456723) or just the numeric post ID e.g. 43456723.

Output Schema

ParametersJSON Schema
NameRequiredDescription
contentNoContains the formatted comments ('formattedComments') and user prompt ('userPrompt') - Follow the instructions in the `userPrompt` on interpreting the formatted comments.
metadataNoContains post ID (postId), comment count (commentCount), and original post URL (postUrl).

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions formatting comments 'for summarization by an LLM,' which hints at preprocessing behavior, but fails to detail critical aspects like rate limits, authentication needs, error handling, or what 'formats' entails (e.g., structuring, truncation). This leaves significant gaps for a tool that interacts with external data.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and front-loaded, with the core purpose stated in the first sentence. The second sentence adds practical guidance without redundancy. However, it could be slightly more structured by separating usage notes, and the reference to external prompts might be considered extraneous if those are not tool-specific.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (single parameter, external data source), the description covers the basic purpose and usage context. The presence of an output schema means return values need not be explained, and the high schema coverage handles parameters. However, the lack of behavioral details (e.g., formatting specifics, error cases) prevents a perfect score, as annotations are absent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, thoroughly documenting the 'post_url' parameter. The description adds no additional parameter information beyond what the schema provides, such as examples or constraints. According to the rules, with high schema coverage, the baseline is 3, as the schema does the heavy lifting without description enhancement.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Retrieves and formats comments from a Hacker News discussion post for summarization by an LLM.' It specifies the verb ('retrieves and formats'), resource ('comments from a Hacker News discussion post'), and intended use ('for summarization by an LLM'). However, with no sibling tools mentioned, it cannot demonstrate differentiation from alternatives, preventing a perfect score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides implied usage guidance by stating the tool is 'for summarization by an LLM' and referencing 'hacker_news_summarization_user_prompt' prompts. However, it lacks explicit instructions on when to use this tool versus other methods (e.g., raw comment retrieval) or any exclusions (e.g., non-Hacker-News URLs). The guidance is helpful but not comprehensive.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 1 tool update
    • First observedget_hn_post_formatted_comments

TDQS

B3.4/5.0

Scored across 1 tool

Disambiguation5/5

With only one tool, there is no possibility of ambiguity or overlap between tools. The tool's purpose is clearly distinct as it is the sole tool available.

Naming Consistency5/5

Since there is only one tool, naming consistency is inherently perfect. The tool name follows a clear verb_noun pattern (get_hn_post_formatted_comments), which would be consistent if more tools existed.

Tool Count2/5

A single tool is too few for a server named 'Hacker News Companion MCP', which suggests broader functionality. The tool only handles comment retrieval and formatting, leaving obvious gaps like fetching posts, searching, or user interactions, making the scope feel incomplete.

Completeness2/5

The tool set is severely incomplete for a Hacker News companion. It only covers retrieving and formatting comments for summarization, missing core operations such as getting posts, listing top stories, or user management, which are essential for the domain.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Enables AI assistants to search, retrieve, and interact with HackerNews content including stories, comments, polls, and user information. Provides comprehensive access to all HackerNews API endpoints with 15 specialized tools for content discovery and analysis.
    15
    34 npm
    5
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to access Hacker News content through 9 comprehensive tools for fetching stories, comments, user profiles, and job postings. Supports flexible output formats, pagination, and various story categories (top, new, best, Ask HN, Show HN).
    -