MCP server exposing Hacker News as tools for MCP-compatible AI assistants.
Four tools with clear verb-noun naming (get_*, search_*) and complete input schemas. Descriptions are present but brief (10-20 chars for tools, 5-15 chars for params). All tools are READ_ONLY with proper error handling via HNAPIError. Output schemas are implicit (list[dict] or dict) but not formally documented. Parameter descriptions lack detail on constraints (e.g., 'limit: 1-30' is stated in tool description but not in schema). No tool annotations (readOnlyHint, idempotentHint). Missing output schema documentation and per-parameter validation guidance.
Fetch the newest Hacker News submissions.
Fetch a single Hacker News story with its top-level comments.
Fetch the current top Hacker News stories.
Search Hacker News stories by keyword via the Algolia HN Search API.
Output schemas not formally documented. Tools return list[dict] or dict but field structure is implicit. LLMs cannot plan downstream operations without knowing what fields to extract.
Parameter descriptions lack constraint details. 'limit' param description says '1-30, default 10' in tool docstring but not in schema description field. Schema description is empty or minimal, forcing LLMs to infer from tool description.
No tool annotations. All tools are read-only and idempotent, but lack readOnlyHint and idempotentHint annotations. Agents cannot infer safety properties without explicit hints.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 54 | 2026-07-28+ | v2 |
Error handling converts HNAPIError to RuntimeError with string message. No structured error classification (retryable vs fatal). LLMs receive plain text errors without guidance on recovery strategy.
No pagination support. Tools accept 'limit' but do not return total_count, next_cursor, or offset. Large result sets cannot be paginated, risking context window exhaustion.