Most Hacker News integrations stop at the comment thread. Pulling the content from the story's own URL and returning it as markdown means an agent can compare what an article says with what the thread says about it — which is the actual question most people have. The prompt library leans into that: multi-source analysis and content filtering are compositions, not extra API surface. The licence is the thing to check first: AGPLv3 with an explicit commercial-use restriction naming hosted MCP directories.
A FastMCP server over the Hacker News API with an unusual emphasis: you do not need item ids. Stories can be found by title or keywords, and the server will fetch the story, its comments, and the content behind its URL. It runs over stdio or SSE and also exposes the same surface as a REST API with OpenAPI docs.
- Story listings — `get_top_stories`, `get_best_stories`, `get_new_stories`, `get_ask_stories`, `get_show_stories`, `get_job_stories`, each taking a limit
- Title-based retrieval, which is the part that matters: `find_stories_by_title` searches by keywords and `get_story_by_title` returns the matching story with its comments
- `get_story_with_comments` for a story and its top comments by id, with a comment limit
- The linked article's actual text through `get_story_content` and `get_story_content_by_title`, in markdown or json
- Basics — `get_item`, `get_user`, `get_max_item_id`, `get_updates`, and `search_by_date` for stories from roughly N days ago
- Resources mirroring the listings at `hn://top/{limit}`, `hn://ask/{limit}`, `hn://item/{id}` and so on
- Prompt templates that compose the tools: `hn_router` picks an approach for any HN question, plus `hn_story_comment_analysis`, `hn_content_filter` for extracting only the technical or code parts, `hn_advanced_search`, `hn_compare_stories`, `hn_multi_source_analysis`, `hn_trend_analysis` and `hn_user_profile_analysis`
No account and no key for the Hacker News data itself. Installation is a clone plus `pip install -r requirements.txt`; launch with `python run.py --transport stdio` for a local client or `--transport sse --host 127.0.0.1 --port 8000` for the HTTP form. `LOG_LEVEL` controls verbosity. Older models that mishandle tool arguments may need `FASTMCP_TOOL_ATTEMPT_PARSE_JSON_ARGS=1`. Docker and Docker Compose files are included, along with Cloud Run and Lambda deployment notes. Licensed AGPLv3, and the author requires a paid licence for any monetised service built on it — read that section before deploying it commercially.
One command — npx -y mcp-remote https://your-deployed-server.com/sse
