@cyanheads/hn-mcp-server 0.5.21 → 0.5.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/AGENTS.md +7 -4
  2. package/CLAUDE.md +7 -4
  3. package/Dockerfile +4 -4
  4. package/README.md +17 -12
  5. package/changelog/0.5.x/0.5.22.md +45 -0
  6. package/dist/mcp-server/tools/definitions/get-stories.tool.d.ts.map +1 -1
  7. package/dist/mcp-server/tools/definitions/get-stories.tool.js +23 -12
  8. package/dist/mcp-server/tools/definitions/get-stories.tool.js.map +1 -1
  9. package/dist/mcp-server/tools/definitions/get-thread.tool.d.ts +3 -2
  10. package/dist/mcp-server/tools/definitions/get-thread.tool.d.ts.map +1 -1
  11. package/dist/mcp-server/tools/definitions/get-thread.tool.js +192 -99
  12. package/dist/mcp-server/tools/definitions/get-thread.tool.js.map +1 -1
  13. package/dist/mcp-server/tools/definitions/get-user.tool.d.ts.map +1 -1
  14. package/dist/mcp-server/tools/definitions/get-user.tool.js +22 -8
  15. package/dist/mcp-server/tools/definitions/get-user.tool.js.map +1 -1
  16. package/dist/mcp-server/tools/definitions/search-content.tool.d.ts +93 -0
  17. package/dist/mcp-server/tools/definitions/search-content.tool.d.ts.map +1 -1
  18. package/dist/mcp-server/tools/definitions/search-content.tool.js +322 -59
  19. package/dist/mcp-server/tools/definitions/search-content.tool.js.map +1 -1
  20. package/dist/mcp-server/tools/served-at-cap.d.ts +14 -0
  21. package/dist/mcp-server/tools/served-at-cap.d.ts.map +1 -0
  22. package/dist/mcp-server/tools/served-at-cap.js +16 -0
  23. package/dist/mcp-server/tools/served-at-cap.js.map +1 -0
  24. package/dist/mcp-server/tools/thread-cursor.d.ts +68 -0
  25. package/dist/mcp-server/tools/thread-cursor.d.ts.map +1 -0
  26. package/dist/mcp-server/tools/thread-cursor.js +200 -0
  27. package/dist/mcp-server/tools/thread-cursor.js.map +1 -0
  28. package/dist/services/hn/hn-service.d.ts +29 -4
  29. package/dist/services/hn/hn-service.d.ts.map +1 -1
  30. package/dist/services/hn/hn-service.js +58 -25
  31. package/dist/services/hn/hn-service.js.map +1 -1
  32. package/dist/services/hn/types.d.ts +9 -0
  33. package/dist/services/hn/types.d.ts.map +1 -1
  34. package/package.json +9 -9
  35. package/server.json +3 -3
@@ -5,7 +5,12 @@
5
5
  import { tool, z } from '@cyanheads/mcp-ts-core';
6
6
  import { JsonRpcErrorCode } from '@cyanheads/mcp-ts-core/errors';
7
7
  import { escapeInline, quoteBody } from '../markdown-escape.js';
8
+ import { servedAtCap } from '../served-at-cap.js';
8
9
  import { decodeHtmlEntities, getHnService, normalizeUrl, settlePage, stripHtml, } from '../../../services/hn/hn-service.js';
10
+ /** Most submissions one call resolves; a larger `submissionCount` is served at this cap. */
11
+ const SUBMISSION_COUNT_CAP = 50;
12
+ /** Largest `submissionCount` accepted; anything above it is rejected. */
13
+ const SUBMISSION_COUNT_CEILING = 1000;
9
14
  export const getUser = tool('hn_get_user', {
10
15
  description: 'Get an HN user profile with karma, about, and optionally their most recent submissions resolved into full items.',
11
16
  annotations: { readOnlyHint: true },
@@ -71,15 +76,15 @@ export const getUser = tool('hn_get_user', {
71
76
  .number()
72
77
  .int()
73
78
  .min(1)
74
- .max(50)
79
+ .max(SUBMISSION_COUNT_CEILING)
75
80
  .default(10)
76
- .describe('Page size — how many submissions to resolve per call. Only used when includeSubmissions is true.'),
81
+ .describe(`Page size — how many submissions to resolve per call, at most ${SUBMISSION_COUNT_CAP} per call. A larger value is served at ${SUBMISSION_COUNT_CAP}, and the notice names the submissionOffset for the next page. Only used when includeSubmissions is true.`),
77
82
  submissionOffset: z
78
83
  .number()
79
84
  .int()
80
85
  .min(0)
81
86
  .default(0)
82
- .describe('How many submissions to skip before resolving, counting back from the most recent. Use with submissionCount to page through a long history: request offset 0, then offset submissionCount, and so on. The enrichment block echoes submissionOffset and, when more remain, the offset to send next. Only used when includeSubmissions is true.'),
87
+ .describe('How many submissions to skip before resolving, counting back from the most recent. Use with submissionCount to page through a long history: request offset 0, then advance by the page size served, and so on. The enrichment block echoes submissionOffset and, when more remain, the offset to send next. Only used when includeSubmissions is true.'),
83
88
  }),
84
89
  output: z.object({
85
90
  user: z
@@ -106,7 +111,10 @@ export const getUser = tool('hn_get_user', {
106
111
  text: z.string().optional().describe('Body text (HTML stripped).'),
107
112
  score: z.number().optional().describe('Score/upvotes.'),
108
113
  time: z.number().optional().describe('Unix timestamp.'),
109
- descendants: z.number().optional().describe('Comment count (stories/polls).'),
114
+ descendants: z
115
+ .number()
116
+ .optional()
117
+ .describe("HN's count of live comments in the thread (descendants); dead and deleted comments are not counted. Present for stories and polls."),
110
118
  })
111
119
  .describe('A single submission by the user (story, comment, job, poll, or poll option).'))
112
120
  .optional()
@@ -119,7 +127,10 @@ export const getUser = tool('hn_get_user', {
119
127
  .describe('The offset this page started at. Absent when includeSubmissions is false or the user has never submitted.'),
120
128
  truncated: z.boolean().optional().describe('True when submissions remain beyond this page.'),
121
129
  shown: z.number().optional().describe('Number of submissions returned.'),
122
- cap: z.number().optional().describe('The submissionCount cap that was applied.'),
130
+ cap: z
131
+ .number()
132
+ .optional()
133
+ .describe(`The submissionCount value served: as passed, or ${SUBMISSION_COUNT_CAP} when submissionCount was above that cap.`),
123
134
  failedIds: z
124
135
  .array(z.number())
125
136
  .optional()
@@ -127,7 +138,7 @@ export const getUser = tool('hn_get_user', {
127
138
  notice: z
128
139
  .string()
129
140
  .optional()
130
- .describe('Pagination context — which window of the history this page covers and the submissionOffset to send next, the submission IDs that failed to load and how to retry them, or a warning that the offset is past the end. Absent when the page reaches the end of the history with no failed IDs, or when no submissions were resolved.'),
141
+ .describe('Pagination context — which window of the history this page covers and the submissionOffset to send next, the submission IDs that failed to load and how to retry them, or a warning that the offset is past the end — noting when submissionCount was served at its per-call cap. Absent when the page reaches the end of the history with no failed IDs, or when no submissions were resolved.'),
131
142
  },
132
143
  enrichmentTrailer: {
133
144
  failedIds: { render: (ids) => `**Failed to load:** ${(ids ?? []).join(', ')}` },
@@ -148,7 +159,8 @@ export const getUser = tool('hn_get_user', {
148
159
  totalSubmissions: user.submitted?.length ?? 0,
149
160
  };
150
161
  const offset = input.submissionOffset;
151
- const pageEnd = offset + input.submissionCount;
162
+ const submissionCount = Math.min(input.submissionCount, SUBMISSION_COUNT_CAP);
163
+ const pageEnd = offset + submissionCount;
152
164
  const windowIds = input.includeSubmissions && user.submitted?.length
153
165
  ? user.submitted.slice(offset, pageEnd)
154
166
  : undefined;
@@ -183,9 +195,11 @@ export const getUser = tool('hn_get_user', {
183
195
  ctx.enrich.notice(`submissionOffset ${offset} is past the end of ${total.toLocaleString()} submissions. Valid offsets are 0 to ${total - 1}.`);
184
196
  }
185
197
  else if (pageEnd < total) {
186
- ctx.enrich.truncated({ shown, cap: input.submissionCount });
198
+ ctx.enrich.truncated({ shown, cap: submissionCount });
187
199
  ctx.enrich.notice([
188
200
  `Showing ${shown} live item${shown === 1 ? '' : 's'} from positions ${(offset + 1).toLocaleString()}–${pageEnd.toLocaleString()} of ${total.toLocaleString()} submissions.`,
201
+ input.submissionCount > SUBMISSION_COUNT_CAP &&
202
+ servedAtCap('submissionCount', input.submissionCount, SUBMISSION_COUNT_CAP),
189
203
  failureMessage,
190
204
  `Set submissionOffset to ${pageEnd} for the next page.`,
191
205
  ]
@@ -1 +1 @@
1
- {"version":3,"file":"get-user.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/get-user.tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get-user.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/get-user.tool.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,57 @@
4
4
  */
5
5
  import { z } from '@cyanheads/mcp-ts-core';
6
6
  import { JsonRpcErrorCode } from '@cyanheads/mcp-ts-core/errors';
7
+ /**
8
+ * Drop the scheme and `www.` from a query that is a URL alone. Algolia requires
9
+ * every token, so `https` and `www` would otherwise have to appear in the
10
+ * submitted URL, and the same page submitted under the other scheme or without
11
+ * `www.` would drop out. A query with whitespace is searched as typed, and so
12
+ * is one the prefix would leave empty.
13
+ */
14
+ export declare function stripUrlPrefix(query: string): {
15
+ query: string;
16
+ droppedPrefix?: string;
17
+ };
18
+ /** What the search notice is composed from: the inputs as searched, and the page Algolia returned. */
19
+ export interface SearchNoticeFacts {
20
+ author?: string | undefined;
21
+ count: number;
22
+ dateRange?: {
23
+ start?: string | undefined;
24
+ end?: string | undefined;
25
+ } | undefined;
26
+ /** The URL prefix dropped from the caller's query before searching. */
27
+ droppedPrefix?: string | undefined;
28
+ minPoints?: number | undefined;
29
+ /**
30
+ * The caller's count and page when count was above the per-call cap. The
31
+ * search then ran at `count` (the cap) and `page` (the page at the cap where
32
+ * the requested page starts), which the other facts describe.
33
+ */
34
+ overCap?: {
35
+ count: number;
36
+ page: number;
37
+ } | undefined;
38
+ page: number;
39
+ /** The query sent to Algolia; absent for a filter-only search. */
40
+ query?: string | undefined;
41
+ /** Hits on this page. */
42
+ shown: number;
43
+ storyId?: number | undefined;
44
+ tags?: string | undefined;
45
+ totalHits: number;
46
+ /** False when totalHits is an estimate; undefined when Algolia does not say. */
47
+ totalHitsExact?: boolean | undefined;
48
+ totalPages: number;
49
+ }
50
+ /**
51
+ * Compose the one `notice` string every search writes. `notice` is last-wins,
52
+ * so each source goes through here: the page-state sentence first, then the
53
+ * cause sentences in input order — query, tags, author, storyId, count. None
54
+ * replaces another. Undefined when nothing applies — the last page of an
55
+ * uncapped, non-empty search.
56
+ */
57
+ export declare function composeSearchNotice(facts: SearchNoticeFacts): string | undefined;
7
58
  export declare const searchHn: import("@cyanheads/mcp-ts-core").ToolDefinition<z.ZodObject<{
8
59
  query: z.ZodOptional<z.ZodString>;
9
60
  tags: z.ZodOptional<z.ZodEnum<{
@@ -35,6 +86,13 @@ export declare const searchHn: import("@cyanheads/mcp-ts-core").ToolDefinition<z
35
86
  }, z.core.$strip>, z.ZodObject<{
36
87
  hits: z.ZodArray<z.ZodObject<{
37
88
  id: z.ZodNumber;
89
+ type: z.ZodOptional<z.ZodEnum<{
90
+ comment: "comment";
91
+ job: "job";
92
+ poll: "poll";
93
+ pollopt: "pollopt";
94
+ story: "story";
95
+ }>>;
38
96
  title: z.ZodOptional<z.ZodString>;
39
97
  url: z.ZodOptional<z.ZodString>;
40
98
  domain: z.ZodOptional<z.ZodString>;
@@ -70,6 +128,12 @@ export declare const searchHn: import("@cyanheads/mcp-ts-core").ToolDefinition<z
70
128
  readonly when: "minPoints was combined with tags \"comment\" or \"job\", record types Algolia stores without points.";
71
129
  readonly recovery: "Drop minPoints to search comments or jobs, or search a scored type (story, poll, ask_hn, show_hn, front_page) to filter by points.";
72
130
  readonly severity: "notice";
131
+ }, {
132
+ readonly reason: "count_page_unaligned";
133
+ readonly code: JsonRpcErrorCode.InvalidParams;
134
+ readonly when: "count was above the per-call cap of 50 with a page whose first hit (page × count) begins no page of 50 hits, so the requested page cannot be served from its start at the cap.";
135
+ readonly recovery: "Pass a count of 50 or less with page counted in that count; the error names a count and page that start at the same hit and, when that count is under 25, the page of 50 that holds the hit.";
136
+ readonly severity: "notice";
73
137
  }, {
74
138
  readonly reason: "upstream_rejected";
75
139
  readonly code: JsonRpcErrorCode.InvalidParams;
@@ -105,9 +169,38 @@ export declare const searchHn: import("@cyanheads/mcp-ts-core").ToolDefinition<z
105
169
  readonly retryable: true;
106
170
  readonly thrownBy: "service";
107
171
  }], {
172
+ readonly criteria: z.ZodObject<{
173
+ tags: z.ZodOptional<z.ZodEnum<{
174
+ ask_hn: "ask_hn";
175
+ comment: "comment";
176
+ front_page: "front_page";
177
+ job: "job";
178
+ poll: "poll";
179
+ show_hn: "show_hn";
180
+ story: "story";
181
+ }>>;
182
+ author: z.ZodOptional<z.ZodString>;
183
+ storyId: z.ZodOptional<z.ZodNumber>;
184
+ minPoints: z.ZodOptional<z.ZodNumber>;
185
+ dateRange: z.ZodOptional<z.ZodObject<{
186
+ start: z.ZodOptional<z.ZodString>;
187
+ end: z.ZodOptional<z.ZodString>;
188
+ }, z.core.$strip>>;
189
+ sort: z.ZodEnum<{
190
+ date: "date";
191
+ relevance: "relevance";
192
+ }>;
193
+ count: z.ZodNumber;
194
+ view: z.ZodEnum<{
195
+ compact: "compact";
196
+ full: "full";
197
+ }>;
198
+ }, z.core.$strip>;
108
199
  readonly totalHits: z.ZodNumber;
200
+ readonly totalHitsExact: z.ZodOptional<z.ZodBoolean>;
109
201
  readonly page: z.ZodNumber;
110
202
  readonly totalPages: z.ZodNumber;
203
+ readonly reachableHits: z.ZodOptional<z.ZodNumber>;
111
204
  readonly truncated: z.ZodOptional<z.ZodBoolean>;
112
205
  readonly shown: z.ZodOptional<z.ZodNumber>;
113
206
  readonly cap: z.ZodOptional<z.ZodNumber>;
@@ -1 +1 @@
1
- {"version":3,"file":"search-content.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/search-content.tool.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AA2KjE,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqYnB,CAAC"}
1
+ {"version":3,"file":"search-content.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/search-content.tool.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAsHjE;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAAE,CAKvF;AA0ED,sGAAsG;AACtG,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,GAAG,SAAS,CAAC;IACjF,uEAAuE;IACvE,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B;;;;OAIG;IACH,OAAO,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC;IACtD,IAAI,EAAE,MAAM,CAAC;IACb,kEAAkE;IAClE,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,yBAAyB;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,gFAAgF;IAChF,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACrC,UAAU,EAAE,MAAM,CAAC;CACpB;AA8FD;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,iBAAiB,GAAG,MAAM,GAAG,SAAS,CAKhF;AAwDD,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8fnB,CAAC"}