@cyanheads/whois-mcp-server 0.1.2 → 0.1.4

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 (37) hide show
  1. package/AGENTS.md +47 -29
  2. package/CLAUDE.md +47 -29
  3. package/Dockerfile +21 -7
  4. package/LICENSE +1 -1
  5. package/README.md +6 -6
  6. package/changelog/0.1.x/0.1.3.md +24 -0
  7. package/changelog/0.1.x/0.1.4.md +38 -0
  8. package/changelog/template.md +60 -19
  9. package/dist/index.js +2 -0
  10. package/dist/index.js.map +1 -1
  11. package/dist/mcp-server/tools/definitions/whois-check-availability.tool.d.ts +1 -1
  12. package/dist/mcp-server/tools/definitions/whois-check-availability.tool.js +1 -1
  13. package/dist/mcp-server/tools/definitions/whois-check-availability.tool.js.map +1 -1
  14. package/dist/mcp-server/tools/definitions/whois-get-dns.tool.d.ts +9 -9
  15. package/dist/mcp-server/tools/definitions/whois-get-dns.tool.js +1 -1
  16. package/dist/mcp-server/tools/definitions/whois-get-dns.tool.js.map +1 -1
  17. package/dist/mcp-server/tools/definitions/whois-get-dossier.tool.d.ts +1 -1
  18. package/dist/mcp-server/tools/definitions/whois-get-dossier.tool.js +1 -1
  19. package/dist/mcp-server/tools/definitions/whois-get-dossier.tool.js.map +1 -1
  20. package/dist/mcp-server/tools/definitions/whois-lookup-asn.tool.d.ts +1 -1
  21. package/dist/mcp-server/tools/definitions/whois-lookup-asn.tool.js +1 -1
  22. package/dist/mcp-server/tools/definitions/whois-lookup-asn.tool.js.map +1 -1
  23. package/dist/mcp-server/tools/definitions/whois-lookup-domain.tool.d.ts +1 -1
  24. package/dist/mcp-server/tools/definitions/whois-lookup-domain.tool.js +1 -1
  25. package/dist/mcp-server/tools/definitions/whois-lookup-domain.tool.js.map +1 -1
  26. package/dist/mcp-server/tools/definitions/whois-lookup-ip.tool.d.ts +2 -2
  27. package/dist/mcp-server/tools/definitions/whois-lookup-ip.tool.js +2 -2
  28. package/dist/mcp-server/tools/definitions/whois-lookup-ip.tool.js.map +1 -1
  29. package/dist/services/doh/doh-service.d.ts.map +1 -1
  30. package/dist/services/doh/doh-service.js +2 -3
  31. package/dist/services/doh/doh-service.js.map +1 -1
  32. package/dist/services/rdap/rdap-service.d.ts +0 -1
  33. package/dist/services/rdap/rdap-service.d.ts.map +1 -1
  34. package/dist/services/rdap/rdap-service.js +72 -66
  35. package/dist/services/rdap/rdap-service.js.map +1 -1
  36. package/package.json +12 -11
  37. package/server.json +3 -3
@@ -3,7 +3,7 @@
3
3
  * Caches the IANA bootstrap JSON for 24 hours to avoid a bootstrap hop on every query.
4
4
  * @module services/rdap/rdap-service
5
5
  */
6
- import { notFound, serviceUnavailable, validationError } from '@cyanheads/mcp-ts-core/errors';
6
+ import { McpError, notFound, serviceUnavailable, validationError, } from '@cyanheads/mcp-ts-core/errors';
7
7
  import { fetchWithTimeout, withRetry } from '@cyanheads/mcp-ts-core/utils';
8
8
  import { getServerConfig } from '../../config/server-config.js';
9
9
  // IANA bootstrap endpoints
@@ -307,12 +307,13 @@ function normalizeAutnum(raw, asn) {
307
307
  result.rir = rir;
308
308
  return result;
309
309
  }
310
+ /** True when the error is an RDAP 404 — the queried object does not exist upstream. */
311
+ function isRdapNotFound(err) {
312
+ return err instanceof McpError && err.data?.status === 404;
313
+ }
310
314
  // ─── Service class ────────────────────────────────────────────────────────────
311
315
  export class RdapService {
312
316
  bootstrapCache = new Map();
313
- reqCtx(ctx) {
314
- return { requestId: ctx.requestId, tenantId: ctx.tenantId, timestamp: ctx.timestamp };
315
- }
316
317
  /** Fetch and cache a bootstrap JSON from IANA */
317
318
  async fetchBootstrap(url, ctx) {
318
319
  const cached = this.bootstrapCache.get(url);
@@ -320,8 +321,7 @@ export class RdapService {
320
321
  return cached.data;
321
322
  }
322
323
  const config = getServerConfig();
323
- const reqCtx = this.reqCtx(ctx);
324
- const response = await fetchWithTimeout(url, config.rdapTimeoutMs, reqCtx, {
324
+ const response = await fetchWithTimeout(url, config.rdapTimeoutMs, ctx, {
325
325
  headers: { Accept: 'application/json' },
326
326
  signal: ctx.signal,
327
327
  });
@@ -427,39 +427,28 @@ export class RdapService {
427
427
  }
428
428
  const config = getServerConfig();
429
429
  const url = `${rdapServer}/domain/${encodeURIComponent(domain.toLowerCase())}`;
430
- const reqCtx = this.reqCtx(ctx);
431
430
  try {
432
431
  const raw = await withRetry(async () => {
433
- const response = await fetchWithTimeout(url, config.rdapTimeoutMs, reqCtx, {
432
+ const response = await fetchWithTimeout(url, config.rdapTimeoutMs, ctx, {
434
433
  headers: { Accept: 'application/rdap+json, application/json' },
435
434
  signal: ctx.signal,
435
+ expectedStatuses: [404],
436
436
  });
437
437
  return response.json();
438
438
  }, {
439
439
  operation: 'rdap.lookupDomain',
440
- context: reqCtx,
440
+ context: ctx,
441
441
  maxRetries: config.rdapMaxRetries,
442
442
  baseDelayMs: 1000,
443
443
  signal: ctx.signal,
444
- isTransient: (err) => {
445
- // 404 is NOT transient — domain is not registered; don't retry
446
- if (err instanceof Error) {
447
- const msg = err.message;
448
- if (msg.includes('404') || msg.includes('Not Found') || msg.includes('NotFound')) {
449
- return false;
450
- }
451
- }
452
- return true;
453
- },
444
+ // 404 is NOT transient — domain is not registered; don't retry
445
+ isTransient: (err) => !isRdapNotFound(err),
454
446
  });
455
447
  return normalizeDomain(raw);
456
448
  }
457
449
  catch (err) {
458
450
  // RDAP 404 on a domain lookup means the domain is not registered
459
- if (err instanceof Error &&
460
- (err.message.includes('404') ||
461
- err.message.includes('Not Found') ||
462
- err.message.includes('NotFound'))) {
451
+ if (isRdapNotFound(err)) {
463
452
  throw notFound(`Domain "${domain}" is not registered (RDAP 404).`, {
464
453
  reason: 'domain_not_found',
465
454
  domain: domain.toLowerCase(),
@@ -480,40 +469,29 @@ export class RdapService {
480
469
  }
481
470
  const config = getServerConfig();
482
471
  const url = `${rdapServer}/domain/${encodeURIComponent(domain.toLowerCase())}`;
483
- const reqCtx = this.reqCtx(ctx);
484
472
  try {
485
473
  const raw = await withRetry(async () => {
486
- const response = await fetchWithTimeout(url, config.rdapTimeoutMs, reqCtx, {
474
+ const response = await fetchWithTimeout(url, config.rdapTimeoutMs, ctx, {
487
475
  headers: { Accept: 'application/rdap+json, application/json' },
488
476
  signal: ctx.signal,
477
+ expectedStatuses: [404],
489
478
  });
490
479
  return response.json();
491
480
  }, {
492
481
  operation: 'rdap.checkAvailability',
493
- context: reqCtx,
482
+ context: ctx,
494
483
  maxRetries: config.rdapMaxRetries,
495
484
  baseDelayMs: 1000,
496
485
  signal: ctx.signal,
497
- isTransient: (err) => {
498
- if (err instanceof Error) {
499
- const msg = err.message;
500
- // 404 is NOT transient — it's the availability signal
501
- if (msg.includes('404') || msg.includes('Not Found') || msg.includes('NotFound')) {
502
- return false;
503
- }
504
- }
505
- return true;
506
- },
486
+ // 404 is NOT transient — it's the availability signal
487
+ isTransient: (err) => !isRdapNotFound(err),
507
488
  });
508
489
  const record = normalizeDomain(raw);
509
490
  return { available: false, record };
510
491
  }
511
492
  catch (err) {
512
493
  // A 404 from the RDAP server means the domain is available (not registered)
513
- if (err instanceof Error &&
514
- (err.message.includes('404') ||
515
- err.message.includes('Not Found') ||
516
- err.message.includes('NotFound'))) {
494
+ if (isRdapNotFound(err)) {
517
495
  return { available: true };
518
496
  }
519
497
  throw err;
@@ -543,21 +521,35 @@ export class RdapService {
543
521
  // IPv6 addresses contain colons which must NOT be percent-encoded in the RDAP path.
544
522
  // encodeURIComponent would produce 2001%3A4860%3A... which RDAP servers reject.
545
523
  const url = `${rdapServer}/ip/${base}`;
546
- const reqCtx = this.reqCtx(ctx);
547
- const raw = await withRetry(async () => {
548
- const response = await fetchWithTimeout(url, config.rdapTimeoutMs, reqCtx, {
549
- headers: { Accept: 'application/rdap+json, application/json' },
524
+ try {
525
+ const raw = await withRetry(async () => {
526
+ const response = await fetchWithTimeout(url, config.rdapTimeoutMs, ctx, {
527
+ headers: { Accept: 'application/rdap+json, application/json' },
528
+ signal: ctx.signal,
529
+ expectedStatuses: [404],
530
+ });
531
+ return response.json();
532
+ }, {
533
+ operation: 'rdap.lookupIp',
534
+ context: ctx,
535
+ maxRetries: config.rdapMaxRetries,
536
+ baseDelayMs: 1000,
550
537
  signal: ctx.signal,
538
+ // 404 is NOT transient — no netblock record exists; don't retry
539
+ isTransient: (err) => !isRdapNotFound(err),
551
540
  });
552
- return response.json();
553
- }, {
554
- operation: 'rdap.lookupIp',
555
- context: reqCtx,
556
- maxRetries: config.rdapMaxRetries,
557
- baseDelayMs: 1000,
558
- signal: ctx.signal,
559
- });
560
- return normalizeIpNetwork(raw, ip);
541
+ return normalizeIpNetwork(raw, ip);
542
+ }
543
+ catch (err) {
544
+ // RDAP 404 on an IP lookup means no netblock record exists upstream
545
+ if (isRdapNotFound(err)) {
546
+ throw notFound(`IP "${ip}" has no netblock record in RIR RDAP (404).`, {
547
+ reason: 'ip_not_found',
548
+ ...ctx.recoveryFor('ip_not_found'),
549
+ });
550
+ }
551
+ throw err;
552
+ }
561
553
  }
562
554
  /** Look up an ASN via RIR RDAP */
563
555
  async lookupAsn(asn, ctx) {
@@ -578,21 +570,35 @@ export class RdapService {
578
570
  }
579
571
  const config = getServerConfig();
580
572
  const url = `${rdapServer}/autnum/${asnNum}`;
581
- const reqCtx = this.reqCtx(ctx);
582
- const raw = await withRetry(async () => {
583
- const response = await fetchWithTimeout(url, config.rdapTimeoutMs, reqCtx, {
584
- headers: { Accept: 'application/rdap+json, application/json' },
573
+ try {
574
+ const raw = await withRetry(async () => {
575
+ const response = await fetchWithTimeout(url, config.rdapTimeoutMs, ctx, {
576
+ headers: { Accept: 'application/rdap+json, application/json' },
577
+ signal: ctx.signal,
578
+ expectedStatuses: [404],
579
+ });
580
+ return response.json();
581
+ }, {
582
+ operation: 'rdap.lookupAsn',
583
+ context: ctx,
584
+ maxRetries: config.rdapMaxRetries,
585
+ baseDelayMs: 1000,
585
586
  signal: ctx.signal,
587
+ // 404 is NOT transient — the ASN is not registered; don't retry
588
+ isTransient: (err) => !isRdapNotFound(err),
586
589
  });
587
- return response.json();
588
- }, {
589
- operation: 'rdap.lookupAsn',
590
- context: reqCtx,
591
- maxRetries: config.rdapMaxRetries,
592
- baseDelayMs: 1000,
593
- signal: ctx.signal,
594
- });
595
- return normalizeAutnum(raw, `AS${asnNum}`);
590
+ return normalizeAutnum(raw, `AS${asnNum}`);
591
+ }
592
+ catch (err) {
593
+ // RDAP 404 on an ASN lookup means the ASN is not registered upstream
594
+ if (isRdapNotFound(err)) {
595
+ throw notFound(`ASN ${asnNum} not found (RDAP 404).`, {
596
+ reason: 'asn_not_found',
597
+ ...ctx.recoveryFor('asn_not_found'),
598
+ });
599
+ }
600
+ throw err;
601
+ }
596
602
  }
597
603
  }
598
604
  // ─── Init/accessor pattern ────────────────────────────────────────────────────
@@ -1 +1 @@
1
- {"version":3,"file":"rdap-service.js","sourceRoot":"","sources":["../../../src/services/rdap/rdap-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rdap-service.js","sourceRoot":"","sources":["../../../src/services/rdap/rdap-service.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cyanheads/whois-mcp-server",
3
- "version": "0.1.2",
3
+ "version": "0.1.4",
4
4
  "mcpName": "io.github.cyanheads/whois-mcp-server",
5
5
  "description": "Look up domain registration, check availability, fetch DNS records, and resolve IPs and ASNs via RDAP and DNS-over-HTTPS via MCP. STDIO or Streamable HTTP.",
6
6
  "type": "module",
@@ -31,7 +31,7 @@
31
31
  "format:unsafe": "biome check --write --unsafe .",
32
32
  "lint:mcp": "bun run scripts/lint-mcp.ts",
33
33
  "lint:packaging": "bun run scripts/lint-packaging.ts",
34
- "bundle": "npm run build && npx -y @anthropic-ai/mcpb pack . dist/whois-mcp-server.mcpb",
34
+ "bundle": "npm run build && npx -y @anthropic-ai/mcpb pack . dist/whois-mcp-server.mcpb && bun run scripts/clean-mcpb.ts dist/whois-mcp-server.mcpb",
35
35
  "changelog:build": "bun run scripts/build-changelog.ts",
36
36
  "changelog:check": "bun run scripts/build-changelog.ts --check",
37
37
  "release:github": "bun run scripts/release-github.ts",
@@ -66,7 +66,7 @@
66
66
  "url": "https://github.com/cyanheads/whois-mcp-server/issues"
67
67
  },
68
68
  "homepage": "https://github.com/cyanheads/whois-mcp-server#readme",
69
- "author": "cyanheads <casey@caseyjhand.com> (https://github.com/cyanheads/whois-mcp-server#readme)",
69
+ "author": "Casey Hand <casey@caseyjhand.com> (https://caseyjhand.com)",
70
70
  "funding": [
71
71
  {
72
72
  "type": "github",
@@ -78,7 +78,7 @@
78
78
  }
79
79
  ],
80
80
  "license": "Apache-2.0",
81
- "packageManager": "bun@1.3.11",
81
+ "packageManager": "bun@1.4.0",
82
82
  "engines": {
83
83
  "bun": ">=1.3.0",
84
84
  "node": ">=24.0.0"
@@ -87,17 +87,18 @@
87
87
  "access": "public"
88
88
  },
89
89
  "dependencies": {
90
- "@cyanheads/mcp-ts-core": "^0.9.21",
90
+ "@cyanheads/mcp-ts-core": "^0.12.3",
91
91
  "pino-pretty": "^13.1.3",
92
92
  "zod": "^4.4.3"
93
93
  },
94
94
  "devDependencies": {
95
- "@biomejs/biome": "^2.4.16",
96
- "@types/node": "25.9.2",
95
+ "@biomejs/biome": "^2.5.9",
96
+ "@socketsecurity/bun-security-scanner": "^1.1.2",
97
+ "@types/node": "^26",
97
98
  "depcheck": "^1.4.7",
98
- "ignore": "^7.0.5",
99
- "tsc-alias": "^1.8.17",
100
- "typescript": "^6.0.3",
101
- "vitest": "^4.1.8"
99
+ "ignore": "^7.0.6",
100
+ "tsc-alias": "^1.9.2",
101
+ "typescript": "^7.0.2",
102
+ "vitest": "^4.1.11"
102
103
  }
103
104
  }
package/server.json CHANGED
@@ -6,14 +6,14 @@
6
6
  "url": "https://github.com/cyanheads/whois-mcp-server",
7
7
  "source": "github"
8
8
  },
9
- "version": "0.1.2",
9
+ "version": "0.1.4",
10
10
  "packages": [
11
11
  {
12
12
  "registryType": "npm",
13
13
  "registryBaseUrl": "https://registry.npmjs.org",
14
14
  "identifier": "@cyanheads/whois-mcp-server",
15
15
  "runtimeHint": "bun",
16
- "version": "0.1.2",
16
+ "version": "0.1.4",
17
17
  "packageArguments": [
18
18
  {
19
19
  "type": "positional",
@@ -70,7 +70,7 @@
70
70
  "registryBaseUrl": "https://registry.npmjs.org",
71
71
  "identifier": "@cyanheads/whois-mcp-server",
72
72
  "runtimeHint": "bun",
73
- "version": "0.1.2",
73
+ "version": "0.1.4",
74
74
  "packageArguments": [
75
75
  {
76
76
  "type": "positional",