Skip to main content
Glama
xiaobenyang-com

HackerNews-Search

README.md
# HackerNews数据服务 HackerNews Search

一个通过Model Context Protocol提供HackerNews内容搜索、检索和分析的服务,适用于AI代理和开发者。
A service that provides HackerNews content search, retrieval and analysis through the Model Context Protocol, suitable for AI agents and developers.## 工具列表 Tool List

本MCP服务封装下列工具,可让模型通过标准化接口调用以下功能。 本MCP服务封装下列工具,可让模型通过标准化接口调用以下功能。

| 工具 Tool   | 描述 Description         |
|-------|--------------------|
| search-posts | Search HackerNews for stories, comments, and other content by keyword. 	 Supports: - Keyword search across titles, text, and authors - Tag filtering (story, comment, poll, show_hn, ask_hn, front_page, author_USERNAME) - Numeric filters for points, comments, and dates - Pagination with customizable results per page - Advanced filtering with OR logic and multiple conditions  Basic Examples: - Search for AI stories: { "query": "AI", "tags": ["story"] } - Find popular posts: { "query": "Python", "numericFilters": ["points>=100"] } - Filter by author: { "query": "startup", "tags": ["author_pg"] } - Date range: { "query": "startup", "numericFilters": ["created_at_i>1640000000"] }  Advanced Filtering Examples: - High engagement posts: { "query": "programming", "numericFilters": ["points>=100", "num_comments>=50"] } - OR logic for tags: { "query": "web", "tags": ["(story,poll)"] } - returns stories OR polls - Author with filters: { "query": "", "tags": ["author_pg", "story"], "numericFilters": ["points>=50"] } - Multiple conditions: { "query": "AI", "tags": ["story"], "numericFilters": ["points>=200", "num_comments>=100"] }  Numeric Filter Operators: < (less than), <= (less than or equal), = (equal), >= (greater than or equal), > (greater than) Numeric Filter Fields: points, num_comments, created_at_i (Unix timestamp)  Tag Syntax: - Single tag: ["story"] - only stories - Multiple tags (AND): ["story", "show_hn"] - stories that are also show_hn - OR logic: ["(story,poll)"] - stories OR polls - Author filter: ["author_USERNAME"] - posts by specific author  Returns paginated results with hits, total count, and page information. |
| get-front-page | Retrieve posts currently on the HackerNews front page.  Returns stories sorted by HackerNews ranking algorithm. The front page typically contains the most popular and trending stories.  Supports: - Pagination to view beyond the first page - Customizable results per page (default: 30) - All posts are tagged with 'front_page'  Examples: - Get first page: { } - Get with custom page size: { "hitsPerPage": 50 } - Get second page: { "page": 1 }  Returns the same structure as search results with hits, pagination info, and metadata. |
| get-latest-posts | Retrieve the most recent HackerNews posts sorted by date.  Returns posts in chronological order (newest first), including all types of content unless filtered.  Supports: - Filter by content type using tags (story, comment, poll, show_hn, ask_hn, etc.) - Pagination to view older posts - Customizable results per page (default: 20) - Empty query to get all recent posts  Examples: - Get latest stories: { "tags": ["story"] } - Get latest comments: { "tags": ["comment"] } - Get all recent activity: { } - Get with custom page size: { "hitsPerPage": 50 }  Use this to monitor real-time HackerNews activity or find the newest content. |
| get-item | Retrieve detailed information about a specific HackerNews item by ID.  Returns complete item details including the full nested comment tree. Use this to: - View a story with all comments - Read a specific comment with its replies - Explore discussion threads in depth - Get complete metadata for any item  Features: - Full nested comment tree (all levels) - Complete item metadata (title, url, text, points, author, etc.) - Works for stories, comments, polls, and poll options - Includes creation time and item type  Examples: - Get story with comments: { "itemId": "38456789" } - Get specific comment: { "itemId": "38456790" } - Get poll: { "itemId": "126809" }  Note: Large comment threads (>500 comments) may take 2-3 seconds to load due to nested fetching. Returns error if item doesn't exist or has been deleted. |
| get-user | Retrieve public profile information for a HackerNews user.  Returns user profile including karma, bio, and account creation date. Use this to: - Check user reputation (karma score) - Read user bio and about information - See when account was created - Verify user existence before searching their content  Features: - Username (case-sensitive) - Karma score (total upvotes received) - About/bio text (may contain HTML) - Account creation date (Unix timestamp)  Examples: - Get famous user: { "username": "pg" } - Check moderator: { "username": "dang" } - Verify author: { "username": "tptacek" }  Username validation: - Alphanumeric characters and underscores only - Case-sensitive - Must exist on HackerNews  Returns error if user doesn't exist or username format is invalid. |


## 检查服务 ## Inspector

工具在线测试: [https://mcp.xiaobenyang.com/inspector/1777316659382275](https://mcp.xiaobenyang.com/inspector/1777316659382275)

Online Tool test [https://mcp.xiaobenyang.com/inspector/1777316659382275](https://mcp.xiaobenyang.com/inspector/1777316659382275)

## 服务配置 MCP Server Config


> #### 如何获取 XBY-APIKEY ? How to get XBY-APIKEY ?
> 访问小笨羊科技网站 [https://xiaobenyang.com](https://xiaobenyang.com),注册用户即可获得APIKEY
> Visit XiaoBenYang website [https://xiaobenyang.com](https://xiaobenyang.com), register and get the APIKEY.

### SSE
```json
{
  "mcpServers": {
    "HackerNews数据服务": {
      "headers": {
        "XBY-APIKEY": "<YOUR_XBY_APIKEY>"
      },
      "type": "sse",
      "url": "https://mcp.xiaobenyang.com/1777316659382275/sse"
    }
  }
}
```
### STREAMABLE HTTP
```json
{
  "mcpServers": {
    "HackerNews数据服务": {
      "headers": {
        "XBY-APIKEY": "<YOUR_XBY_APIKEY>"
      },
      "type": "streamable_http",
      "url": "https://mcp.xiaobenyang.com/1777316659382275/mcp"
    }
  }
}
```
### STDIO
```json
{
    "mcpServers": {
        "HackerNews数据服务": {
          "command": "npx",
          "args": [
            "-y",
            "xiaobenyang-mcp"
          ],
          "env": {
            "XBY_APIKEY": "<YOUR_XBY_APIKEY>",
            "mcpId": "1777316659382275",
          },
          "transport": "stdio"
        }
      }
}

```

TDQS

A4.6/5.0

Scored across 5 tools

Disambiguation5/5

Each tool has a clearly distinct purpose with no overlap: get-front-page retrieves front-page stories, get-item fetches specific items with comments, get-latest-posts gets recent posts chronologically, get-user retrieves user profiles, and search-posts performs keyword searches. The descriptions reinforce these unique roles, making tool selection unambiguous for an agent.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern with hyphens (e.g., get-front-page, search-posts). The verbs are clear and descriptive (get, search), and the nouns specify the target resource (front-page, item, latest-posts, user, posts), creating a predictable and readable naming convention throughout the set.

Tool Count5/5

With 5 tools, the set is well-scoped for a HackerNews search server, covering key functionalities like retrieving front-page content, specific items, recent posts, user profiles, and search. Each tool earns its place without redundancy, providing a focused and manageable interface for agents to interact with HackerNews data.

Completeness5/5

The tool surface is complete for a HackerNews search domain, offering comprehensive coverage: get-front-page and get-latest-posts handle curated and chronological views, get-item provides detailed item access, get-user covers user profiles, and search-posts enables advanced filtering. There are no obvious gaps, supporting a wide range of agent workflows without dead ends.

Maintenance

ActivityInactive
ResponsivenessNo issues