MCP server for accessing Hacker News stories and content with caching support
Six tools with consistent naming (hn_* prefix, verb-noun pattern) and detailed descriptions (150-250 chars each). All tools have input schemas with typed parameters and descriptions. However, output schemas are not documented in the source code, only inferred from the HackerNewsStory struct. No error handling guidance, no permission gates, no pagination metadata (limit/offset/total_count) in documented responses. Tools are read-only and well-scoped, but lack production-grade error recovery patterns.
Retrieves 'Ask HN' question posts from Hacker News (HN is the common abbreviation for Hacker News) where users ask the community for advice, opinions, or information. Returns complete details including title, text, author, score, date, and comment count. Particularly useful for finding discussions, questions, and community interactions. Results are sorted by score in descending order. Example: `hn_ask_stories(count=2)` might return questions like 'Ask HN: What productivity tools do you use in 2025?' (Score: 183, Comments: 207) and 'Ask HN: How are you using the new GPT-4o in your workflow?' (Score: 156, Comments: 142).
Retrieves the highest-quality stories from Hacker News (HN is the common abbreviation for Hacker News) based on a combination of score, comments, and other factors. Returns complete details including title, URL, text, author, score, date, and comment count. Best for finding the most interesting content over a longer time period. Results are sorted by score in descending order. Example: `hn_best_stories(count=2)` might return stories like 'Show HN: Structify – Convert unstructured text to structured data with AI' (Score: 943) and 'The History of Programming Languages Visualized' (Score: 876) that have gained significant attention over days.
Retrieves the most recently submitted stories from Hacker News (HN is the common abbreviation for Hacker News) with their complete details including title, URL, text, author, score, date, and comment count. Useful for discovering brand new content that hasn't been widely seen yet. Results are sorted by score in descending order. Example: `hn_latest_stories(count=2)` would return content like 'Ask HN: Why is Reddit down?' (Score: 42) and 'The Future of Rust Web Development' (Score: 37) that were just submitted minutes ago.
Output schemas not documented. Tool descriptions mention returned fields (title, URL, text, author, score, date, comment count) but no formal JSON Schema for responses. LLMs cannot plan downstream operations or validate field presence.
Parameter descriptions include example values (e.g., 'Example: 5 will return the 5 highest-scoring top stories'). LLMs frequently reuse example values literally in real calls, causing failures or unintended behavior.
No error handling guidance. Descriptions do not explain what happens on API failures, rate limits, or invalid IDs. LLMs have no recovery path if a call fails.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 60 | <=2025-11-25 | v2 |
Retrieves 'Show HN' posts from Hacker News (HN is the common abbreviation for Hacker News) where users showcase their projects, websites, apps, or creations to get feedback from the community. Returns complete details including title, URL, text, author, score, date, and comment count. Ideal for discovering new projects and innovations. Results are sorted by score in descending order. Example: `hn_show_stories(count=2)` might return projects like 'Show HN: Structify – Convert unstructured text to structured data with AI' (URL: https://github.com/structify/structify) and 'Show HN: LocalLLM – Run powerful language models on consumer hardware' (URL: https://localllm.ai).
Retrieves complete details of a specific Hacker News (HN is the common abbreviation for Hacker News) story by its unique ID. Returns all available information including title, URL, text, author, score, date, and comment count. Use this when you have a specific story ID and need to fetch its contents.
Retrieves the top trending stories from Hacker News (HN is the common abbreviation for Hacker News) with their complete details including title, URL, text, author, score, date, and comment count. Results are sorted by score in descending order. Example: `hn_top_stories(count=3)` returns the three highest-scored stories currently trending on HN, displaying their full details including URLs and comment counts.
Pagination not documented. Tools accept 'count' (1-30) but no mention of offset, cursor, or total_count in responses. Large result sets may exceed context limits without pagination metadata.
No tool annotations (readOnlyHint, idempotentHint). While all tools are read-only, explicit annotations would clarify safety and retry semantics to MCP clients.