@cyanheads/hn-mcp-server 0.5.17 → 0.5.19
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.
- package/AGENTS.md +5 -3
- package/CLAUDE.md +5 -3
- package/README.md +21 -12
- package/changelog/0.5.x/0.5.18.md +24 -0
- package/changelog/0.5.x/0.5.19.md +19 -0
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/mcp-server/tools/definitions/get-stories.tool.d.ts +2 -1
- package/dist/mcp-server/tools/definitions/get-stories.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/get-stories.tool.js +48 -14
- package/dist/mcp-server/tools/definitions/get-stories.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/get-thread.tool.d.ts +30 -2
- package/dist/mcp-server/tools/definitions/get-thread.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/get-thread.tool.js +513 -161
- package/dist/mcp-server/tools/definitions/get-thread.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/get-user.tool.d.ts +4 -1
- package/dist/mcp-server/tools/definitions/get-user.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/get-user.tool.js +55 -22
- package/dist/mcp-server/tools/definitions/get-user.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/search-content.tool.d.ts +24 -3
- package/dist/mcp-server/tools/definitions/search-content.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/search-content.tool.js +172 -46
- package/dist/mcp-server/tools/definitions/search-content.tool.js.map +1 -1
- package/dist/services/hn/hn-service.d.ts +69 -10
- package/dist/services/hn/hn-service.d.ts.map +1 -1
- package/dist/services/hn/hn-service.js +101 -23
- package/dist/services/hn/hn-service.js.map +1 -1
- package/package.json +2 -2
- package/server.json +3 -3
|
@@ -80,9 +80,53 @@ export function extractDomain(url) {
|
|
|
80
80
|
return;
|
|
81
81
|
}
|
|
82
82
|
}
|
|
83
|
-
/**
|
|
84
|
-
|
|
85
|
-
|
|
83
|
+
/**
|
|
84
|
+
* Convert a validated ISO 8601 date bound to its exact instant in Unix
|
|
85
|
+
* milliseconds. A date-time without a `Z` or `±hh:mm` offset is read as UTC —
|
|
86
|
+
* the same as a date-only value, and unlike JS's own parsing, which reads it in
|
|
87
|
+
* the host's local time zone.
|
|
88
|
+
*/
|
|
89
|
+
export function dateBoundToEpochMs(bound) {
|
|
90
|
+
const offsetless = bound.includes('T') && !/(?:Z|[+-]\d{2}:\d{2})$/.test(bound);
|
|
91
|
+
return Date.parse(offsetless ? `${bound}Z` : bound);
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Convert a validated ISO 8601 date bound to Unix seconds, read as
|
|
95
|
+
* {@link dateBoundToEpochMs} reads it.
|
|
96
|
+
*
|
|
97
|
+
* A fractional second rounds down by default, which suits an exclusive start.
|
|
98
|
+
* An exclusive end over whole-second timestamps passes `'ceil'`: an end at
|
|
99
|
+
* `10:00:00.5` must still admit an item created at `10:00:00`.
|
|
100
|
+
*/
|
|
101
|
+
export function dateBoundToEpochSeconds(bound, rounding = 'floor') {
|
|
102
|
+
return Math[rounding](dateBoundToEpochMs(bound) / 1000);
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Settle one page of a batch for the paged tools: the live items in input
|
|
106
|
+
* order, and the IDs whose fetch failed. Dead, deleted, and absent slots drop
|
|
107
|
+
* out of both. When every slot failed, throws the first failure's classified
|
|
108
|
+
* error, since an empty success would read as a page with nothing on it.
|
|
109
|
+
*/
|
|
110
|
+
export function settlePage(slots) {
|
|
111
|
+
const items = [];
|
|
112
|
+
const failedIds = [];
|
|
113
|
+
let firstFailure;
|
|
114
|
+
for (const slot of slots) {
|
|
115
|
+
if (slot.kind === 'failed') {
|
|
116
|
+
failedIds.push(slot.id);
|
|
117
|
+
firstFailure ??= slot;
|
|
118
|
+
}
|
|
119
|
+
else if (slot.kind === 'item' && !slot.item.deleted && !slot.item.dead) {
|
|
120
|
+
items.push(slot.item);
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
if (firstFailure && failedIds.length === slots.length)
|
|
124
|
+
throw firstFailure.error;
|
|
125
|
+
return { items, failedIds };
|
|
126
|
+
}
|
|
127
|
+
/** True for the classified 429 `getJson` throws once retries are spent or the wait outlasts them. */
|
|
128
|
+
export function isRateLimited(err) {
|
|
129
|
+
return err instanceof McpError && err.data?.reason === 'upstream_rate_limited';
|
|
86
130
|
}
|
|
87
131
|
/** Detect HTML error bodies returned by upstream APIs under rate limiting or maintenance. */
|
|
88
132
|
function isHtmlErrorBody(text) {
|
|
@@ -129,15 +173,26 @@ function parseJsonBody(text, upstream) {
|
|
|
129
173
|
* across several codes — HN answers an unknown path with 401, and a 504 would
|
|
130
174
|
* arrive as `Timeout`, blurring "this server's own fetch timed out" with an
|
|
131
175
|
* upstream that is merely down. The exact status stays on `data.status`.
|
|
176
|
+
*
|
|
177
|
+
* A 429's raw `Retry-After` header (delta-seconds or an HTTP-date), which
|
|
178
|
+
* `fetchWithTimeout` leaves on the cause, is copied to `data.retryAfter`
|
|
179
|
+
* unchanged and named in the hint, so the caller can wait exactly the interval
|
|
180
|
+
* the upstream asked for.
|
|
132
181
|
*/
|
|
133
182
|
function upstreamFailureFor(upstream, status, cause) {
|
|
134
183
|
if (status === 429) {
|
|
184
|
+
const header = cause.data?.retryAfter;
|
|
185
|
+
const retryAfter = typeof header === 'string' && header.trim() !== '' ? header : undefined;
|
|
186
|
+
const wait = retryAfter && (/^\d+$/.test(retryAfter) ? `${retryAfter} seconds` : retryAfter);
|
|
135
187
|
return rateLimited(`${upstream} returned HTTP ${status}.`, {
|
|
136
188
|
upstream,
|
|
137
189
|
status,
|
|
138
190
|
reason: 'upstream_rate_limited',
|
|
191
|
+
...(retryAfter && { retryAfter }),
|
|
139
192
|
recovery: {
|
|
140
|
-
hint:
|
|
193
|
+
hint: wait
|
|
194
|
+
? `${upstream} is rate-limiting this server and asked it to retry after ${wait}. Wait that long before retrying the same call, and reduce how often it is called.`
|
|
195
|
+
: `${upstream} is rate-limiting this server. Wait several seconds before retrying the same call, and reduce how often it is called.`,
|
|
141
196
|
},
|
|
142
197
|
}, { cause });
|
|
143
198
|
}
|
|
@@ -225,45 +280,66 @@ export class HnService {
|
|
|
225
280
|
return this.getJson('HN API', 'hn.fetchFeed', `${HN_API}/${endpoint}.json`, ctx);
|
|
226
281
|
}
|
|
227
282
|
/**
|
|
228
|
-
* Batch-fetch items with concurrency limiting
|
|
229
|
-
*
|
|
230
|
-
* so
|
|
231
|
-
*
|
|
232
|
-
*
|
|
283
|
+
* Batch-fetch items with concurrency limiting: one {@link ItemSlot} per ID,
|
|
284
|
+
* in input order. A per-item failure after exhausted retries fills a
|
|
285
|
+
* `failed` slot, so one bad item does not fail the batch. Two failures are
|
|
286
|
+
* not per-item:
|
|
287
|
+
*
|
|
288
|
+
* - A caller abort rethrows, ending the batch instead of spending the rest of
|
|
289
|
+
* the ID list on fetches nobody is waiting for.
|
|
290
|
+
* - An `upstream_rate_limited` failure stops the batch. Fetches already in
|
|
291
|
+
* flight settle, and every slot not yet started is reported `failed` with
|
|
292
|
+
* that error, rather than each running its own retry ladder against a
|
|
293
|
+
* throttled upstream.
|
|
233
294
|
*/
|
|
234
295
|
async fetchItems(ids, ctx) {
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
const results = new Array(ids.length).fill(null);
|
|
296
|
+
const slots = new Array(ids.length);
|
|
297
|
+
let rateLimit;
|
|
238
298
|
let next = 0;
|
|
239
299
|
const worker = async () => {
|
|
240
|
-
while (next < ids.length) {
|
|
300
|
+
while (!rateLimit && next < ids.length) {
|
|
241
301
|
const i = next++;
|
|
242
302
|
const id = ids[i];
|
|
243
303
|
if (id == null)
|
|
244
304
|
continue;
|
|
245
305
|
try {
|
|
246
|
-
|
|
306
|
+
const item = await this.fetchItem(id, ctx);
|
|
307
|
+
slots[i] = item ? { kind: 'item', id, item } : { kind: 'absent', id };
|
|
247
308
|
}
|
|
248
|
-
catch (
|
|
249
|
-
if (
|
|
250
|
-
throw
|
|
309
|
+
catch (error) {
|
|
310
|
+
if (error instanceof McpError && error.code === JsonRpcErrorCode.RequestCancelled) {
|
|
311
|
+
throw error;
|
|
312
|
+
}
|
|
313
|
+
slots[i] = { kind: 'failed', id, error };
|
|
314
|
+
if (isRateLimited(error))
|
|
315
|
+
rateLimit ??= error;
|
|
251
316
|
ctx.log.warning('Batch item fetch failed after retries', {
|
|
252
317
|
id,
|
|
253
|
-
error:
|
|
318
|
+
error: error instanceof Error ? error.message : String(error),
|
|
254
319
|
});
|
|
255
320
|
}
|
|
256
321
|
}
|
|
257
322
|
};
|
|
258
323
|
const workerCount = Math.min(this.concurrencyLimit, ids.length);
|
|
259
324
|
await Promise.all(Array.from({ length: workerCount }, worker));
|
|
260
|
-
|
|
325
|
+
const skipped = ids.length - next;
|
|
326
|
+
if (rateLimit && skipped > 0) {
|
|
327
|
+
ctx.log.warning('Batch stopped: upstream rate-limited, remaining items not fetched', {
|
|
328
|
+
skipped,
|
|
329
|
+
});
|
|
330
|
+
}
|
|
331
|
+
return ids.map((id, i) => slots[i] ?? { kind: 'failed', id, error: rateLimit });
|
|
261
332
|
}
|
|
262
|
-
/**
|
|
333
|
+
/**
|
|
334
|
+
* Search HN via Algolia. Throws on upstream failure after retries. An omitted
|
|
335
|
+
* `query` sends no `query` param, making a filter-only search; the tags are
|
|
336
|
+
* comma-joined, which Algolia ANDs. Both date bounds are exclusive.
|
|
337
|
+
*/
|
|
263
338
|
search(params, ctx) {
|
|
264
339
|
const endpoint = params.sort === 'date' ? 'search_by_date' : 'search';
|
|
265
340
|
const url = new URL(`${ALGOLIA_API}/${endpoint}`);
|
|
266
|
-
|
|
341
|
+
if (params.query != null)
|
|
342
|
+
url.searchParams.set('query', params.query);
|
|
267
343
|
url.searchParams.set('hitsPerPage', String(params.count));
|
|
268
344
|
url.searchParams.set('page', String(params.page));
|
|
269
345
|
const tagParts = [];
|
|
@@ -271,16 +347,18 @@ export class HnService {
|
|
|
271
347
|
tagParts.push(params.tags);
|
|
272
348
|
if (params.author)
|
|
273
349
|
tagParts.push(`author_${params.author}`);
|
|
350
|
+
if (params.storyId != null)
|
|
351
|
+
tagParts.push(`story_${params.storyId}`);
|
|
274
352
|
if (tagParts.length)
|
|
275
353
|
url.searchParams.set('tags', tagParts.join(','));
|
|
276
354
|
const numericFilters = [];
|
|
277
355
|
if (params.minPoints != null)
|
|
278
356
|
numericFilters.push(`points>=${params.minPoints}`);
|
|
279
357
|
if (params.dateRange?.start) {
|
|
280
|
-
numericFilters.push(`created_at_i>${
|
|
358
|
+
numericFilters.push(`created_at_i>${dateBoundToEpochSeconds(params.dateRange.start)}`);
|
|
281
359
|
}
|
|
282
360
|
if (params.dateRange?.end) {
|
|
283
|
-
numericFilters.push(`created_at_i<${
|
|
361
|
+
numericFilters.push(`created_at_i<${dateBoundToEpochSeconds(params.dateRange.end, 'ceil')}`);
|
|
284
362
|
}
|
|
285
363
|
if (numericFilters.length)
|
|
286
364
|
url.searchParams.set('numericFilters', numericFilters.join(','));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hn-service.js","sourceRoot":"","sources":["../../../src/services/hn/hn-service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"hn-service.js","sourceRoot":"","sources":["../../../src/services/hn/hn-service.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cyanheads/hn-mcp-server",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.19",
|
|
4
4
|
"description": "Browse Hacker News feeds, threads, and user profiles with full-text search via MCP. STDIO or Streamable HTTP.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -92,7 +92,7 @@
|
|
|
92
92
|
"devDependencies": {
|
|
93
93
|
"@biomejs/biome": "^2.5.14",
|
|
94
94
|
"@socketsecurity/bun-security-scanner": "^1.1.2",
|
|
95
|
-
"@types/node": "^26.6.
|
|
95
|
+
"@types/node": "^26.6.2",
|
|
96
96
|
"@vitest/coverage-istanbul": "^5.0.1",
|
|
97
97
|
"depcheck": "^1.4.7",
|
|
98
98
|
"ignore": "^7.0.9",
|
package/server.json
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
"url": "https://github.com/cyanheads/hn-mcp-server",
|
|
7
7
|
"source": "github"
|
|
8
8
|
},
|
|
9
|
-
"version": "0.5.
|
|
9
|
+
"version": "0.5.19",
|
|
10
10
|
"remotes": [
|
|
11
11
|
{
|
|
12
12
|
"type": "streamable-http",
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"registryBaseUrl": "https://registry.npmjs.org",
|
|
20
20
|
"identifier": "@cyanheads/hn-mcp-server",
|
|
21
21
|
"runtimeHint": "bun",
|
|
22
|
-
"version": "0.5.
|
|
22
|
+
"version": "0.5.19",
|
|
23
23
|
"packageArguments": [
|
|
24
24
|
{
|
|
25
25
|
"type": "positional",
|
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
"registryBaseUrl": "https://registry.npmjs.org",
|
|
56
56
|
"identifier": "@cyanheads/hn-mcp-server",
|
|
57
57
|
"runtimeHint": "bun",
|
|
58
|
-
"version": "0.5.
|
|
58
|
+
"version": "0.5.19",
|
|
59
59
|
"packageArguments": [
|
|
60
60
|
{
|
|
61
61
|
"type": "positional",
|