---
summary: "hn_search_content gains filter-only and story-scoped search plus ISO 8601 date validation and minPoints guarding against unscored types; the feed, thread, and search tools now distinguish terminal pages from truncation."
breaking: false
security: false
---

# 0.5.18 — 2026-09-23

## Added

- **`hn_search_content.storyId`** restricts results to one discussion — the id of a story or poll root, sent as a `story_<id>` tag ANDed with the other filters. Pair with `tags: "comment"` to search within a thread. ([#22](https://github.com/cyanheads/hn-mcp-server/issues/22))
- **`hn_search_content.query` is now optional** when at least one filter (`tags`, `author`, `storyId`, `minPoints`, or a `dateRange` bound) is set, enabling filter-only searches — list Ask HN, Show HN, polls, or jobs on their own. No query and no filter fails with `missing_query_or_filter`. ([#22](https://github.com/cyanheads/hn-mcp-server/issues/22))
- **`hn_search_content.tags` gains `poll` and `job`.** ([#22](https://github.com/cyanheads/hn-mcp-server/issues/22))

## Fixed

- **`hn_get_stories`, `hn_get_thread`, and `hn_search_content` no longer report terminal pages as truncated.** `truncated` now tracks whether more results are retrievable, and its `notice` names the next `offset` (stories) or `page` (search), or for a thread how to get past `maxComments`, suggesting a larger cap only below its maximum. A search page past the end gets an exhausted-page notice instead of the broaden-keywords hint. ([#17](https://github.com/cyanheads/hn-mcp-server/issues/17))
- **`hn_search_content.dateRange` validates real ISO 8601 calendar instants.** Bounds accept `YYYY`, `YYYY-MM`, `YYYY-MM-DD`, or a date-time with an optional `Z`/`±hh:mm` offset; calendar-invalid values (`2024-02-30`) and non-ISO strings are rejected before any upstream call, and an offset-less date-time now reads as UTC instead of the host's local time zone. An empty `dateRange`, or `start` not before `end`, fails with `invalid_date_range`. ([#21](https://github.com/cyanheads/hn-mcp-server/issues/21))
- **`hn_search_content.minPoints` combined with `tags: "comment"` or `"job"` fails with `min_points_unscored_type`** instead of silently returning zero hits — Algolia stores no points on either record type. ([#28](https://github.com/cyanheads/hn-mcp-server/issues/28))
- **`hn_get_user.username` and `hn_search_content`'s `query`/`author` name the trim in their blank-input message** instead of Zod's default "Too small" length error. ([#24](https://github.com/cyanheads/hn-mcp-server/issues/24))

## Dependencies

- `@types/node` ^26.6.1 → ^26.6.2
