@trustlists/mcp 0.1.0 → 0.2.0

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.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * trustlists_audit_dependencies scan a project's dependency manifests and
2
+ * trustlists_audit_dependencies: scan a project's dependency manifests and
3
3
  * map each dependency to its vendor's trust center.
4
4
  *
5
5
  * Supports:
@@ -10,8 +10,8 @@
10
10
  * - Gemfile (Ruby)
11
11
  * - composer.json (PHP)
12
12
  *
13
- * Returns a structured audit so the host AI (Cursor/Claude) can produce a
14
- * risk report without us shipping our own scoring logic.
13
+ * Returns a structured inventory so the host AI (Cursor/Claude) can describe
14
+ * public security-documentation visibility without inventing a risk score.
15
15
  */
16
16
  import { promises as fs } from 'node:fs';
17
17
  import path from 'node:path';
@@ -61,7 +61,10 @@ export async function runAudit(input) {
61
61
  };
62
62
  }
63
63
  const dedupedDeps = dedupeDependencies(allDeps);
64
- const registry = await getRegistry().catch(() => []);
64
+ // A missing registry is not the same thing as zero matched vendors. Let the
65
+ // MCP error boundary report the outage rather than returning a plausible but
66
+ // false "0/N have trust centers" result.
67
+ const registry = await getRegistry();
65
68
  const audited = await Promise.all(dedupedDeps.map((dep) => auditDependency(dep, registry)));
66
69
  const withTrustCenters = audited.filter((a) => a.hasTrustCenter).length;
67
70
  const unknown = audited.filter((a) => a.matchType === 'unknown').length;
@@ -79,7 +82,7 @@ export async function runAudit(input) {
79
82
  unknownVendor: unknown,
80
83
  byManager,
81
84
  results: audited,
82
- message: `Scanned ${scannedFiles.length} manifest${scannedFiles.length === 1 ? '' : 's'}. ${withTrustCenters}/${audited.length} dependencies have trust centers in the TrustLists registry.`,
85
+ message: `Scanned ${scannedFiles.length} manifest${scannedFiles.length === 1 ? '' : 's'}. ${withTrustCenters}/${audited.length} dependencies map to trust centers in the trustlists directory.`,
83
86
  };
84
87
  }
85
88
  function dedupeDependencies(deps) {
@@ -206,7 +209,7 @@ const NPM_SCOPE_OVERRIDES = {
206
209
  * Curated mapping for unscoped or oddly-named packages whose name doesn't
207
210
  * obviously match the vendor domain. Keys are lowercased package names.
208
211
  *
209
- * Some entries map to a domain that isn't (yet) in the TrustLists registry —
212
+ * Some entries map to a domain that isn't (yet) in the trustlists directory.
210
213
  * that's fine; the audit will return "unknown" and we'll add to the registry
211
214
  * over time.
212
215
  */
@@ -480,7 +483,7 @@ async function scanComposerJson(root, includeDev) {
480
483
  }
481
484
  export const auditToolDefinition = {
482
485
  name: 'trustlists_audit_dependencies',
483
- description: "Scan a project's dependency manifests (package.json, requirements.txt, go.mod, Cargo.toml, Gemfile, composer.json, pyproject.toml, Pipfile) and map each dependency to its vendor's trust center in the TrustLists registry. Returns structured data for the AI to produce a supply chain risk report. Use when reviewing third-party packages or doing a security audit.",
486
+ description: "Scan a project's dependency manifests (package.json, requirements.txt, go.mod, Cargo.toml, Gemfile, composer.json, pyproject.toml, Pipfile) and map likely vendors to public trust center records. Returns documentation-visibility data, not a security score. Use when inventorying third-party services or preparing vendor review.",
484
487
  inputSchema: {
485
488
  type: 'object',
486
489
  properties: {
@@ -1 +1 @@
1
- {"version":3,"file":"audit-dependencies.js","sourceRoot":"","sources":["../../src/tools/audit-dependencies.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"audit-dependencies.js","sourceRoot":"","sources":["../../src/tools/audit-dependencies.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,84 @@
1
+ /**
2
+ * trustlists_browse: filter the public directory by platform, listed framework,
3
+ * or CSA STAR level.
4
+ */
5
+ import { z } from 'zod';
6
+ import { formatSearchResult, type RegistryEntry } from '../api/client.js';
7
+ export declare const browseInputSchema: z.ZodObject<{
8
+ platform: z.ZodOptional<z.ZodString>;
9
+ framework: z.ZodOptional<z.ZodString>;
10
+ csaStarLevel: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<1>, z.ZodLiteral<2>]>>;
11
+ limit: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
12
+ offset: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
13
+ }, "strip", z.ZodTypeAny, {
14
+ limit: number;
15
+ offset: number;
16
+ platform?: string | undefined;
17
+ csaStarLevel?: 2 | 1 | undefined;
18
+ framework?: string | undefined;
19
+ }, {
20
+ limit?: number | undefined;
21
+ platform?: string | undefined;
22
+ csaStarLevel?: 2 | 1 | undefined;
23
+ framework?: string | undefined;
24
+ offset?: number | undefined;
25
+ }>;
26
+ export type BrowseInput = z.infer<typeof browseInputSchema>;
27
+ export interface BrowseToolResult {
28
+ filters: {
29
+ platform?: string;
30
+ framework?: string;
31
+ csaStarLevel?: 1 | 2;
32
+ };
33
+ totalMatches: number;
34
+ offset: number;
35
+ limit: number;
36
+ results: ReturnType<typeof formatSearchResult>[];
37
+ availablePlatforms: string[];
38
+ matchedFrameworks: string[];
39
+ registry: {
40
+ source: 'trustlists.org' | 'github';
41
+ total: number;
42
+ generated?: string;
43
+ };
44
+ message: string;
45
+ caveat: string;
46
+ }
47
+ export declare function filterRegistry(registry: RegistryEntry[], input: Pick<BrowseInput, 'platform' | 'framework' | 'csaStarLevel'>): RegistryEntry[];
48
+ export declare function runBrowse(input: BrowseInput): Promise<BrowseToolResult>;
49
+ export declare const browseToolDefinition: {
50
+ readonly name: "trustlists_browse";
51
+ readonly description: "Browse the public trustlists directory by exact trust center platform, listed framework, or CSA STAR level. Use for questions like \"show SafeBase-hosted vendors\", \"find entries listing ISO 27001\", or \"list CSA STAR Level 2 companies\". Results are directory metadata, not security ratings.";
52
+ readonly inputSchema: {
53
+ readonly type: "object";
54
+ readonly properties: {
55
+ readonly platform: {
56
+ readonly type: "string";
57
+ readonly description: "Exact platform name, such as \"Vanta\", \"SafeBase\", or \"Self-hosted\".";
58
+ };
59
+ readonly framework: {
60
+ readonly type: "string";
61
+ readonly description: "Case-insensitive listed framework text, such as \"SOC 2\", \"ISO 27001\", or \"PCI DSS\".";
62
+ };
63
+ readonly csaStarLevel: {
64
+ readonly type: "integer";
65
+ readonly enum: readonly [1, 2];
66
+ readonly description: "CSA STAR registry level.";
67
+ };
68
+ readonly limit: {
69
+ readonly type: "integer";
70
+ readonly minimum: 1;
71
+ readonly maximum: 100;
72
+ readonly default: 20;
73
+ readonly description: "Maximum records to return (1-100, default 20).";
74
+ };
75
+ readonly offset: {
76
+ readonly type: "integer";
77
+ readonly minimum: 0;
78
+ readonly default: 0;
79
+ readonly description: "Number of matching records to skip for pagination.";
80
+ };
81
+ };
82
+ };
83
+ };
84
+ //# sourceMappingURL=browse.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browse.d.ts","sourceRoot":"","sources":["../../src/tools/browse.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,kBAAkB,EAElB,KAAK,aAAa,EACnB,MAAM,kBAAkB,CAAC;AAE1B,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;EAM5B,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE;QACP,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,YAAY,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;KACtB,CAAC;IACF,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,UAAU,CAAC,OAAO,kBAAkB,CAAC,EAAE,CAAC;IACjD,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,QAAQ,EAAE;QACR,MAAM,EAAE,gBAAgB,GAAG,QAAQ,CAAC;QACpC,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAWD,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,aAAa,EAAE,EACzB,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,UAAU,GAAG,WAAW,GAAG,cAAc,CAAC,GAClE,aAAa,EAAE,CAiBjB;AAED,wBAAsB,SAAS,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAiC7E;AAED,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmCvB,CAAC"}
@@ -0,0 +1,102 @@
1
+ /**
2
+ * trustlists_browse: filter the public directory by platform, listed framework,
3
+ * or CSA STAR level.
4
+ */
5
+ import { z } from 'zod';
6
+ import { formatSearchResult, getRegistrySnapshot, } from '../api/client.js';
7
+ export const browseInputSchema = z.object({
8
+ platform: z.string().trim().min(1).optional(),
9
+ framework: z.string().trim().min(1).optional(),
10
+ csaStarLevel: z.union([z.literal(1), z.literal(2)]).optional(),
11
+ limit: z.number().int().min(1).max(100).optional().default(20),
12
+ offset: z.number().int().min(0).optional().default(0),
13
+ });
14
+ function normalized(value) {
15
+ return String(value || '').trim().toLowerCase();
16
+ }
17
+ function includesValue(values, query) {
18
+ const needle = normalized(query);
19
+ return (values || []).some((value) => normalized(value).includes(needle));
20
+ }
21
+ export function filterRegistry(registry, input) {
22
+ const platform = normalized(input.platform);
23
+ const framework = normalized(input.framework);
24
+ return registry
25
+ .filter((entry) => {
26
+ if (platform && normalized(entry.platform) !== platform)
27
+ return false;
28
+ if (framework && !includesValue(entry.certifications, framework))
29
+ return false;
30
+ if (input.csaStarLevel != null
31
+ && Number(entry.csaStar?.level) !== input.csaStarLevel) {
32
+ return false;
33
+ }
34
+ return true;
35
+ })
36
+ .sort((a, b) => a.name.localeCompare(b.name));
37
+ }
38
+ export async function runBrowse(input) {
39
+ const snapshot = await getRegistrySnapshot();
40
+ const matches = filterRegistry(snapshot.entries, input);
41
+ const page = matches.slice(input.offset, input.offset + input.limit);
42
+ const availablePlatforms = [...new Set(snapshot.entries.map((entry) => entry.platform).filter(Boolean))].sort((a, b) => a.localeCompare(b));
43
+ const matchedFrameworks = [...new Set(matches.flatMap((entry) => entry.certifications || []))].sort((a, b) => a.localeCompare(b));
44
+ return {
45
+ filters: {
46
+ platform: input.platform,
47
+ framework: input.framework,
48
+ csaStarLevel: input.csaStarLevel,
49
+ },
50
+ totalMatches: matches.length,
51
+ offset: input.offset,
52
+ limit: input.limit,
53
+ results: page.map((entry) => formatSearchResult(entry)),
54
+ availablePlatforms,
55
+ matchedFrameworks,
56
+ registry: {
57
+ source: snapshot.info.source,
58
+ total: snapshot.info.total,
59
+ generated: snapshot.info.generated,
60
+ },
61
+ message: matches.length === 0
62
+ ? 'No directory records match those filters.'
63
+ : `Returning ${page.length} of ${matches.length} matching directory records.`,
64
+ caveat: 'Filters use directory labels. A listed framework does not establish certification scope, validity, or legal compliance.',
65
+ };
66
+ }
67
+ export const browseToolDefinition = {
68
+ name: 'trustlists_browse',
69
+ description: 'Browse the public trustlists directory by exact trust center platform, listed framework, or CSA STAR level. Use for questions like "show SafeBase-hosted vendors", "find entries listing ISO 27001", or "list CSA STAR Level 2 companies". Results are directory metadata, not security ratings.',
70
+ inputSchema: {
71
+ type: 'object',
72
+ properties: {
73
+ platform: {
74
+ type: 'string',
75
+ description: 'Exact platform name, such as "Vanta", "SafeBase", or "Self-hosted".',
76
+ },
77
+ framework: {
78
+ type: 'string',
79
+ description: 'Case-insensitive listed framework text, such as "SOC 2", "ISO 27001", or "PCI DSS".',
80
+ },
81
+ csaStarLevel: {
82
+ type: 'integer',
83
+ enum: [1, 2],
84
+ description: 'CSA STAR registry level.',
85
+ },
86
+ limit: {
87
+ type: 'integer',
88
+ minimum: 1,
89
+ maximum: 100,
90
+ default: 20,
91
+ description: 'Maximum records to return (1-100, default 20).',
92
+ },
93
+ offset: {
94
+ type: 'integer',
95
+ minimum: 0,
96
+ default: 0,
97
+ description: 'Number of matching records to skip for pagination.',
98
+ },
99
+ },
100
+ },
101
+ };
102
+ //# sourceMappingURL=browse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browse.js","sourceRoot":"","sources":["../../src/tools/browse.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  /**
2
- * trustlists_lookup exact-domain vendor lookup.
2
+ * trustlists_lookup: exact-domain vendor lookup.
3
3
  *
4
- * Use when you have a domain and want a definitive yes/no answer about whether
5
- * the vendor publishes a trust center, plus their certifications.
4
+ * Use when you have a domain and want to check the current directory for an
5
+ * exact-domain record, trust center URL, and listed frameworks.
6
6
  */
7
7
  import { z } from 'zod';
8
8
  export declare const lookupInputSchema: z.ZodObject<{
@@ -24,13 +24,20 @@ export interface LookupToolResult {
24
24
  certifications: string[];
25
25
  csaStarLevel?: number;
26
26
  lastVerified?: string;
27
+ directoryUrl: string;
28
+ };
29
+ registry: {
30
+ source: 'trustlists.org' | 'github';
31
+ total: number;
32
+ generated?: string;
27
33
  };
28
34
  message: string;
35
+ caveat: string;
29
36
  }
30
37
  export declare function runLookup(input: LookupInput): Promise<LookupToolResult>;
31
38
  export declare const lookupToolDefinition: {
32
39
  readonly name: "trustlists_lookup";
33
- readonly description: "Look up a single company in the TrustLists registry by exact domain. Returns trust center URL, platform, certifications, and CSA STAR status if available. Use this when you have a domain and want a definitive answer.";
40
+ readonly description: "Look up one company in the public trustlists directory by exact website domain. Returns its trust center URL, platform, listed frameworks, CSA STAR level, verification date, and directory page. Directory metadata is a discovery aid, not proof of compliance.";
34
41
  readonly inputSchema: {
35
42
  readonly type: "object";
36
43
  readonly properties: {
@@ -1 +1 @@
1
- {"version":3,"file":"lookup.d.ts","sourceRoot":"","sources":["../../src/tools/lookup.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,iBAAiB;;;;;;EAE5B,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE;QACP,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,EAAE,MAAM,CAAC;QACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,cAAc,EAAE,MAAM,EAAE,CAAC;QACzB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAsB,SAAS,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA0C7E;AAED,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;CAcvB,CAAC"}
1
+ {"version":3,"file":"lookup.d.ts","sourceRoot":"","sources":["../../src/tools/lookup.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB,eAAO,MAAM,iBAAiB;;;;;;EAE5B,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE;QACP,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,EAAE,MAAM,CAAC;QACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,cAAc,EAAE,MAAM,EAAE,CAAC;QACzB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,QAAQ,EAAE;QACR,MAAM,EAAE,gBAAgB,GAAG,QAAQ,CAAC;QACpC,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,SAAS,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA0D7E;AAED,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;CAcvB,CAAC"}
@@ -1,11 +1,11 @@
1
1
  /**
2
- * trustlists_lookup exact-domain vendor lookup.
2
+ * trustlists_lookup: exact-domain vendor lookup.
3
3
  *
4
- * Use when you have a domain and want a definitive yes/no answer about whether
5
- * the vendor publishes a trust center, plus their certifications.
4
+ * Use when you have a domain and want to check the current directory for an
5
+ * exact-domain record, trust center URL, and listed frameworks.
6
6
  */
7
7
  import { z } from 'zod';
8
- import { getRegistry, lookupByDomain, normalizeDomain } from '../api/client.js';
8
+ import { companyDirectoryUrl, getRegistrySnapshot, lookupByDomain, normalizeDomain, } from '../api/client.js';
9
9
  export const lookupInputSchema = z.object({
10
10
  domain: z.string().min(3, 'Domain must be at least 3 characters'),
11
11
  });
@@ -15,43 +15,58 @@ export async function runLookup(input) {
15
15
  return {
16
16
  found: false,
17
17
  domain: input.domain,
18
+ registry: {
19
+ source: 'trustlists.org',
20
+ total: 0,
21
+ },
18
22
  message: 'Invalid domain. Provide a hostname like "stripe.com" or a URL.',
23
+ caveat: 'A directory record is a discovery aid, not an audit, certification, endorsement, or security rating.',
19
24
  };
20
25
  }
21
- const lookup = await lookupByDomain(normalized);
26
+ const [lookup, snapshot] = await Promise.all([
27
+ lookupByDomain(normalized),
28
+ getRegistrySnapshot(),
29
+ ]);
22
30
  if (!lookup.found) {
23
31
  return {
24
32
  found: false,
25
33
  domain: normalized,
26
- message: `No trust center found for ${normalized} in the public TrustLists registry. The vendor may not publish one, or it may be hosted at a different domain. Consider searching by name with trustlists_search.`,
34
+ registry: {
35
+ source: snapshot.info.source,
36
+ total: snapshot.info.total,
37
+ generated: snapshot.info.generated,
38
+ },
39
+ message: `No trust center found for ${normalized} in the public trustlists registry. The vendor may not publish one, or it may be registered under a different domain. Consider searching by name with trustlists_search.`,
40
+ caveat: 'Not found means only that the current directory has no matching record. It does not mean the vendor lacks security documentation.',
27
41
  };
28
42
  }
29
- let registryEntry;
30
- try {
31
- const registry = await getRegistry();
32
- registryEntry = registry.find((entry) => normalizeDomain(entry.website) === normalized);
33
- }
34
- catch {
35
- registryEntry = undefined;
36
- }
43
+ const registryEntry = lookup.entry;
44
+ const name = lookup.name || registryEntry?.name || normalized;
37
45
  return {
38
46
  found: true,
39
47
  domain: normalized,
40
48
  result: {
41
- name: lookup.name || registryEntry?.name || normalized,
49
+ name,
42
50
  website: lookup.website || registryEntry?.website || `https://${normalized}`,
43
51
  trustCenter: lookup.trustCenter || registryEntry?.trustCenter || '',
44
52
  platform: registryEntry?.platform,
45
53
  certifications: registryEntry?.certifications || [],
46
54
  csaStarLevel: registryEntry?.csaStar?.level,
47
55
  lastVerified: registryEntry?.lastVerified,
56
+ directoryUrl: companyDirectoryUrl(name),
57
+ },
58
+ registry: {
59
+ source: snapshot.info.source,
60
+ total: snapshot.info.total,
61
+ generated: snapshot.info.generated,
48
62
  },
49
- message: `Found ${lookup.name} in the TrustLists registry.`,
63
+ message: `Found ${name} in the trustlists directory.`,
64
+ caveat: 'Listed frameworks describe what the directory record links or labels. Confirm current scope, validity, and document access with the vendor.',
50
65
  };
51
66
  }
52
67
  export const lookupToolDefinition = {
53
68
  name: 'trustlists_lookup',
54
- description: 'Look up a single company in the TrustLists registry by exact domain. Returns trust center URL, platform, certifications, and CSA STAR status if available. Use this when you have a domain and want a definitive answer.',
69
+ description: 'Look up one company in the public trustlists directory by exact website domain. Returns its trust center URL, platform, listed frameworks, CSA STAR level, verification date, and directory page. Directory metadata is a discovery aid, not proof of compliance.',
55
70
  inputSchema: {
56
71
  type: 'object',
57
72
  properties: {
@@ -1 +1 @@
1
- {"version":3,"file":"lookup.js","sourceRoot":"","sources":["../../src/tools/lookup.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,eAAe,EAAsB,MAAM,kBAAkB,CAAC;AAEpG,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,sCAAsC,CAAC;CAClE,CAAC,CAAC;AAmBH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,KAAkB;IAChD,MAAM,UAAU,GAAG,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACjD,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO;YACL,KAAK,EAAE,KAAK;YACZ,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,OAAO,EAAE,gEAAgE;SAC1E,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,UAAU,CAAC,CAAC;IAEhD,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAClB,OAAO;YACL,KAAK,EAAE,KAAK;YACZ,MAAM,EAAE,UAAU;YAClB,OAAO,EAAE,6BAA6B,UAAU,mKAAmK;SACpN,CAAC;IACJ,CAAC;IAED,IAAI,aAAwC,CAAC;IAC7C,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,WAAW,EAAE,CAAC;QACrC,aAAa,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,UAAU,CAAC,CAAC;IAC1F,CAAC;IAAC,MAAM,CAAC;QACP,aAAa,GAAG,SAAS,CAAC;IAC5B,CAAC;IAED,OAAO;QACL,KAAK,EAAE,IAAI;QACX,MAAM,EAAE,UAAU;QAClB,MAAM,EAAE;YACN,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,aAAa,EAAE,IAAI,IAAI,UAAU;YACtD,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,aAAa,EAAE,OAAO,IAAI,WAAW,UAAU,EAAE;YAC5E,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,aAAa,EAAE,WAAW,IAAI,EAAE;YACnE,QAAQ,EAAE,aAAa,EAAE,QAAQ;YACjC,cAAc,EAAE,aAAa,EAAE,cAAc,IAAI,EAAE;YACnD,YAAY,EAAE,aAAa,EAAE,OAAO,EAAE,KAAK;YAC3C,YAAY,EAAE,aAAa,EAAE,YAAY;SAC1C;QACD,OAAO,EAAE,SAAS,MAAM,CAAC,IAAI,8BAA8B;KAC5D,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,IAAI,EAAE,mBAAmB;IACzB,WAAW,EACT,0NAA0N;IAC5N,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,yCAAyC;aACvD;SACF;QACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;KACrB;CACO,CAAC"}
1
+ {"version":3,"file":"lookup.js","sourceRoot":"","sources":["../../src/tools/lookup.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,5 @@
1
1
  /**
2
- * trustlists_search search the TrustLists registry by name or domain.
3
- *
4
- * Returns ranked matches from the public registry plus, when available,
5
- * Brandfetch results for vendors not yet in our directory.
2
+ * trustlists_search: search the public trustlists directory by name or domain.
6
3
  */
7
4
  import { z } from 'zod';
8
5
  export declare const searchInputSchema: z.ZodObject<{
@@ -26,14 +23,24 @@ export interface SearchToolResult {
26
23
  trustCenter?: string;
27
24
  inDirectory: boolean;
28
25
  certifications: string[];
26
+ platform?: string;
27
+ csaStarLevel?: number;
28
+ lastVerified?: string;
29
+ directoryUrl?: string;
29
30
  logo?: string | null;
30
31
  }>;
32
+ registry: {
33
+ source: 'trustlists.org' | 'github';
34
+ total: number;
35
+ generated?: string;
36
+ };
31
37
  message: string;
38
+ caveat: string;
32
39
  }
33
40
  export declare function runSearch(input: SearchInput): Promise<SearchToolResult>;
34
41
  export declare const searchToolDefinition: {
35
42
  readonly name: "trustlists_search";
36
- readonly description: "Search the TrustLists registry of 2,000+ company trust centers by name or domain. Returns matching companies with their trust center URLs, certifications, and security platforms (Vanta, SafeBase, Drata, etc.). Use this when the user asks about a vendor by name and you want suggestions.";
43
+ readonly description: "Search thousands of public trust center records by company name or website domain. Returns directory matches with trust center URLs, platforms, listed frameworks, CSA STAR levels, and source pages. Use when the user gives a company name or partial domain.";
37
44
  readonly inputSchema: {
38
45
  readonly type: "object";
39
46
  readonly properties: {
@@ -1 +1 @@
1
- {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/tools/search.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,iBAAiB;;;;;;;;;EAG5B,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,KAAK,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;QACtB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;QACvB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,WAAW,EAAE,OAAO,CAAC;QACrB,cAAc,EAAE,MAAM,EAAE,CAAC;QACzB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;KACtB,CAAC,CAAC;IACH,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAsB,SAAS,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA4B7E;AAED,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;CAqBvB,CAAC"}
1
+ {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/tools/search.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,eAAO,MAAM,iBAAiB;;;;;;;;;EAG5B,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,KAAK,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;QACtB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;QACvB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,WAAW,EAAE,OAAO,CAAC;QACrB,cAAc,EAAE,MAAM,EAAE,CAAC;QACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;KACtB,CAAC,CAAC;IACH,QAAQ,EAAE;QACR,MAAM,EAAE,gBAAgB,GAAG,QAAQ,CAAC;QACpC,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,SAAS,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAsC7E;AAED,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;CAqBvB,CAAC"}
@@ -1,44 +1,51 @@
1
1
  /**
2
- * trustlists_search search the TrustLists registry by name or domain.
3
- *
4
- * Returns ranked matches from the public registry plus, when available,
5
- * Brandfetch results for vendors not yet in our directory.
2
+ * trustlists_search: search the public trustlists directory by name or domain.
6
3
  */
7
4
  import { z } from 'zod';
8
- import { searchVendors } from '../api/client.js';
5
+ import { getRegistrySnapshot, searchVendors, } from '../api/client.js';
9
6
  export const searchInputSchema = z.object({
10
7
  query: z.string().min(2, 'Query must be at least 2 characters'),
11
8
  limit: z.number().int().min(1).max(20).optional().default(8),
12
9
  });
13
10
  export async function runSearch(input) {
14
11
  const { query, limit } = input;
15
- const results = await searchVendors(query);
12
+ const [results, snapshot] = await Promise.all([
13
+ searchVendors(query),
14
+ getRegistrySnapshot(),
15
+ ]);
16
16
  const limited = results.slice(0, limit);
17
- const inDirectoryCount = limited.filter((r) => r.source === 'trustlists').length;
18
17
  const formatted = limited.map((r) => ({
19
18
  name: r.name,
20
19
  domain: r.domain,
21
20
  website: r.website,
22
21
  trustCenter: r.trustCenter,
23
- inDirectory: r.source === 'trustlists',
22
+ inDirectory: true,
24
23
  certifications: r.certifications || [],
24
+ platform: r.platform,
25
+ csaStarLevel: r.csaStarLevel,
26
+ lastVerified: r.lastVerified,
27
+ directoryUrl: r.directoryUrl,
25
28
  logo: r.logo ?? null,
26
29
  }));
27
30
  const message = limited.length === 0
28
- ? `No matches for "${query}" in the TrustLists registry.`
29
- : inDirectoryCount > 0
30
- ? `Found ${limited.length} matches (${inDirectoryCount} in directory) for "${query}".`
31
- : `No directory matches. Suggestions from Brandfetch: ${limited.length}.`;
31
+ ? `No matches for "${query}" in the trustlists directory.`
32
+ : `Found ${limited.length} of ${results.length} directory matches for "${query}".`;
32
33
  return {
33
34
  query,
34
35
  totalMatches: results.length,
35
36
  results: formatted,
37
+ registry: {
38
+ source: snapshot.info.source,
39
+ total: snapshot.info.total,
40
+ generated: snapshot.info.generated,
41
+ },
36
42
  message,
43
+ caveat: 'Search returns directory records only. Listed frameworks are not independent compliance determinations.',
37
44
  };
38
45
  }
39
46
  export const searchToolDefinition = {
40
47
  name: 'trustlists_search',
41
- description: 'Search the TrustLists registry of 2,000+ company trust centers by name or domain. Returns matching companies with their trust center URLs, certifications, and security platforms (Vanta, SafeBase, Drata, etc.). Use this when the user asks about a vendor by name and you want suggestions.',
48
+ description: 'Search thousands of public trust center records by company name or website domain. Returns directory matches with trust center URLs, platforms, listed frameworks, CSA STAR levels, and source pages. Use when the user gives a company name or partial domain.',
42
49
  inputSchema: {
43
50
  type: 'object',
44
51
  properties: {
@@ -1 +1 @@
1
- {"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/tools/search.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,aAAa,EAAqB,MAAM,kBAAkB,CAAC;AAEpE,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,qCAAqC,CAAC;IAC/D,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;CAC7D,CAAC,CAAC;AAmBH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,KAAkB;IAChD,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;IAC/B,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,KAAK,CAAC,CAAC;IAC3C,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IACxC,MAAM,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,YAAY,CAAC,CAAC,MAAM,CAAC;IAEjF,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAe,EAAE,EAAE,CAAC,CAAC;QAClD,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,MAAM,EAAE,CAAC,CAAC,MAAM;QAChB,OAAO,EAAE,CAAC,CAAC,OAAO;QAClB,WAAW,EAAE,CAAC,CAAC,WAAW;QAC1B,WAAW,EAAE,CAAC,CAAC,MAAM,KAAK,YAAY;QACtC,cAAc,EAAE,CAAC,CAAC,cAAc,IAAI,EAAE;QACtC,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,IAAI;KACrB,CAAC,CAAC,CAAC;IAEJ,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,KAAK,CAAC;QAClC,CAAC,CAAC,mBAAmB,KAAK,+BAA+B;QACzD,CAAC,CAAC,gBAAgB,GAAG,CAAC;YACpB,CAAC,CAAC,SAAS,OAAO,CAAC,MAAM,aAAa,gBAAgB,uBAAuB,KAAK,IAAI;YACtF,CAAC,CAAC,sDAAsD,OAAO,CAAC,MAAM,GAAG,CAAC;IAE9E,OAAO;QACL,KAAK;QACL,YAAY,EAAE,OAAO,CAAC,MAAM;QAC5B,OAAO,EAAE,SAAS;QAClB,OAAO;KACR,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,IAAI,EAAE,mBAAmB;IACzB,WAAW,EACT,gSAAgS;IAClS,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,0DAA0D;aACxE;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,0CAA0C;gBACvD,OAAO,EAAE,CAAC;gBACV,OAAO,EAAE,EAAE;gBACX,OAAO,EAAE,CAAC;aACX;SACF;QACD,QAAQ,EAAE,CAAC,OAAO,CAAC;KACpB;CACO,CAAC"}
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/tools/search.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,mBAAmB,EACnB,aAAa,GAEd,MAAM,kBAAkB,CAAC;AAE1B,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,qCAAqC,CAAC;IAC/D,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;CAC7D,CAAC,CAAC;AA6BH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,KAAkB;IAChD,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;IAC/B,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC5C,aAAa,CAAC,KAAK,CAAC;QACpB,mBAAmB,EAAE;KACtB,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IAExC,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAe,EAAE,EAAE,CAAC,CAAC;QAClD,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,MAAM,EAAE,CAAC,CAAC,MAAM;QAChB,OAAO,EAAE,CAAC,CAAC,OAAO;QAClB,WAAW,EAAE,CAAC,CAAC,WAAW;QAC1B,WAAW,EAAE,IAAI;QACjB,cAAc,EAAE,CAAC,CAAC,cAAc,IAAI,EAAE;QACtC,QAAQ,EAAE,CAAC,CAAC,QAAQ;QACpB,YAAY,EAAE,CAAC,CAAC,YAAY;QAC5B,YAAY,EAAE,CAAC,CAAC,YAAY;QAC5B,YAAY,EAAE,CAAC,CAAC,YAAY;QAC5B,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,IAAI;KACrB,CAAC,CAAC,CAAC;IAEJ,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,KAAK,CAAC;QAClC,CAAC,CAAC,mBAAmB,KAAK,gCAAgC;QAC1D,CAAC,CAAC,SAAS,OAAO,CAAC,MAAM,OAAO,OAAO,CAAC,MAAM,2BAA2B,KAAK,IAAI,CAAC;IAErF,OAAO;QACL,KAAK;QACL,YAAY,EAAE,OAAO,CAAC,MAAM;QAC5B,OAAO,EAAE,SAAS;QAClB,QAAQ,EAAE;YACR,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,MAAM;YAC5B,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK;YAC1B,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,SAAS;SACnC;QACD,OAAO;QACP,MAAM,EAAE,yGAAyG;KAClH,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,IAAI,EAAE,mBAAmB;IACzB,WAAW,EACT,iQAAiQ;IACnQ,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,0DAA0D;aACxE;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,0CAA0C;gBACvD,OAAO,EAAE,CAAC;gBACV,OAAO,EAAE,EAAE;gBACX,OAAO,EAAE,CAAC;aACX;SACF;QACD,QAAQ,EAAE,CAAC,OAAO,CAAC;KACpB;CACO,CAAC"}