mcp-guardian 1.2.1 → 1.3.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.
@@ -12,6 +12,17 @@ import { getDefaultConfigPath, getVersion, } from "../src/config.js";
12
12
  import { securityAuditHandler, } from "../src/security-audit.js";
13
13
  import { scanMcpConfig, scanMcpConfigSync, } from "../src/manifest.js";
14
14
  import { getManifestSummary, } from "../src/tool-pinning.js";
15
+ /**
16
+ * Exit codes for CI/CD integration
17
+ * - 0: Clean scan (no issues)
18
+ * - 1: Warnings detected
19
+ * - 2: Critical issues detected
20
+ * - 3: Configuration/runtime error
21
+ */
22
+ const EXIT_CLEAN = 0;
23
+ const EXIT_WARNING = 1;
24
+ const EXIT_CRITICAL = 2;
25
+ const EXIT_ERROR = 3;
15
26
  const VERSION = getVersion();
16
27
  /**
17
28
  * Run as MCP server
@@ -93,6 +104,93 @@ async function runMcpServer() {
93
104
  await server.connect(transport);
94
105
  console.error(`[mcp-guardian] MCP server v${VERSION} running on stdio`);
95
106
  }
107
+ /**
108
+ * Filter results based on severity threshold
109
+ */
110
+ function filterBySeverity(result, threshold) {
111
+ if (threshold === "info")
112
+ return result;
113
+ const filteredServers = result.servers.map(server => {
114
+ const filteredIssues = server.issues.map(tool => ({
115
+ ...tool,
116
+ issues: tool.issues.filter(issue => {
117
+ if (threshold === "critical")
118
+ return issue.severity === "critical";
119
+ if (threshold === "warning")
120
+ return issue.severity === "critical" || issue.severity === "warning";
121
+ return true;
122
+ })
123
+ })).filter(tool => tool.issues.length > 0);
124
+ return {
125
+ ...server,
126
+ issues: filteredIssues,
127
+ status: filteredIssues.some(t => t.issues.some(i => i.severity === "critical")) ? "critical" :
128
+ filteredIssues.some(t => t.issues.some(i => i.severity === "warning")) ? "warning" : "clean"
129
+ };
130
+ });
131
+ return {
132
+ servers: filteredServers,
133
+ summary: result.summary // Keep original summary for context
134
+ };
135
+ }
136
+ /**
137
+ * Generate SARIF 2.1.0 output format
138
+ */
139
+ function generateSarif(result, configPath) {
140
+ const rules = [];
141
+ const ruleIds = new Set();
142
+ // Collect unique rules from findings
143
+ for (const server of result.servers) {
144
+ for (const tool of server.issues) {
145
+ for (const issue of tool.issues) {
146
+ if (!ruleIds.has(issue.pattern)) {
147
+ ruleIds.add(issue.pattern);
148
+ rules.push({
149
+ id: issue.pattern,
150
+ shortDescription: { text: issue.pattern.replace(/_/g, " ") },
151
+ defaultConfiguration: {
152
+ level: issue.severity === "critical" ? "error" : "warning"
153
+ },
154
+ ...(issue.severity === "critical" && { properties: { cwe: "CWE-94" } })
155
+ });
156
+ }
157
+ }
158
+ }
159
+ }
160
+ const results = [];
161
+ for (const server of result.servers) {
162
+ for (const tool of server.issues) {
163
+ for (const issue of tool.issues) {
164
+ results.push({
165
+ ruleId: issue.pattern,
166
+ level: issue.severity === "critical" ? "error" : "warning",
167
+ message: { text: `Detected "${issue.match}" in tool "${tool.toolName}" (server: ${server.serverName})` },
168
+ locations: [{
169
+ physicalLocation: {
170
+ artifactLocation: { uri: configPath },
171
+ ...(issue.position !== undefined && { region: { startLine: 1 } })
172
+ }
173
+ }]
174
+ });
175
+ }
176
+ }
177
+ }
178
+ return {
179
+ $schema: "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/master/Schemata/sarif-schema-2.1.0.json",
180
+ version: "2.1.0",
181
+ runs: [{
182
+ tool: {
183
+ driver: {
184
+ name: "mcp-guardian",
185
+ version: VERSION,
186
+ informationUri: "https://github.com/alexandriashai/mcp-guardian",
187
+ rules
188
+ }
189
+ },
190
+ results
191
+ }]
192
+ };
193
+ }
96
194
  /**
97
195
  * Run CLI scan
98
196
  */
@@ -104,36 +202,61 @@ async function runCliScan(configPath, options) {
104
202
  console.error(` macOS: ~/Library/Application Support/Claude/claude_desktop_config.json`);
105
203
  console.error(` Windows: %APPDATA%\\Claude\\claude_desktop_config.json`);
106
204
  console.error(` Linux: ~/.config/Claude/claude_desktop_config.json`);
107
- process.exit(1);
205
+ process.exit(EXIT_ERROR);
206
+ }
207
+ if (!options.quiet) {
208
+ console.error(`[mcp-guardian] Scanning: ${targetPath}`);
108
209
  }
109
- console.error(`[mcp-guardian] Scanning: ${targetPath}`);
110
210
  let result;
111
211
  if (options.sync) {
112
212
  // Sync mode only parses config structure, doesn't query servers
113
213
  result = scanMcpConfigSync(targetPath);
114
- console.error(`[mcp-guardian] Note: --sync mode only reads config structure (no tool scanning)`);
214
+ if (!options.quiet) {
215
+ console.error(`[mcp-guardian] Note: --sync mode only reads config structure (no tool scanning)`);
216
+ }
115
217
  }
116
218
  else {
117
219
  // Default: async mode that actually queries MCP servers
118
- console.error(`[mcp-guardian] Connecting to MCP servers to scan their tools...`);
220
+ if (!options.quiet) {
221
+ console.error(`[mcp-guardian] Connecting to MCP servers to scan their tools...`);
222
+ }
119
223
  result = await scanMcpConfig(targetPath);
120
224
  }
121
- if (options.json) {
122
- console.log(JSON.stringify(result, null, 2));
225
+ // Apply severity threshold filter
226
+ const filteredResult = filterBySeverity(result, options.severityThreshold);
227
+ // Determine exit code based on findings
228
+ const exitCode = result.summary.critical > 0 ? EXIT_CRITICAL
229
+ : result.summary.warning > 0 ? EXIT_WARNING
230
+ : EXIT_CLEAN;
231
+ // Quiet mode: no output on clean scan
232
+ if (options.quiet && exitCode === EXIT_CLEAN) {
233
+ process.exit(options.exitZero ? EXIT_CLEAN : exitCode);
234
+ }
235
+ // Output results
236
+ if (options.sarif) {
237
+ console.log(JSON.stringify(generateSarif(filteredResult, targetPath), null, 2));
238
+ }
239
+ else if (options.json) {
240
+ console.log(JSON.stringify(filteredResult, null, 2));
123
241
  }
124
242
  else {
125
243
  // Human-readable output
126
244
  console.log(`\n=== MCP Guardian Security Scan ===`);
127
245
  console.log(`Config: ${targetPath}`);
128
- console.log(`Servers: ${result.servers.length}`);
246
+ console.log(`Servers: ${filteredResult.servers.length}`);
129
247
  console.log(`\nServers found:`);
130
- for (const server of result.servers) {
248
+ for (const server of filteredResult.servers) {
131
249
  const icon = server.status === "critical" ? "🔴" :
132
250
  server.status === "warning" ? "🟡" : "🟢";
133
251
  console.log(` ${icon} ${server.serverName} (${server.toolCount} tools)`);
134
252
  if (server.issues.length > 0) {
135
253
  for (const tool of server.issues) {
136
- console.log(` └─ ${tool.toolName}: ${tool.issues.length} issue(s)`);
254
+ console.log(` └─ ${tool.toolName}:`);
255
+ for (const issue of tool.issues) {
256
+ const severity = issue.severity === "critical" ? "🔴 CRITICAL" : "🟡 WARNING";
257
+ console.log(` ${severity}: ${issue.pattern}`);
258
+ console.log(` Match: "${issue.match}" at position ${issue.position}`);
259
+ }
137
260
  }
138
261
  }
139
262
  }
@@ -142,7 +265,12 @@ async function runCliScan(configPath, options) {
142
265
  console.log(` Clean: ${result.summary.clean}`);
143
266
  console.log(` Warning: ${result.summary.warning}`);
144
267
  console.log(` Critical: ${result.summary.critical}`);
268
+ if (options.severityThreshold !== "warning") {
269
+ console.log(`\n (Filtered to ${options.severityThreshold} severity)`);
270
+ }
145
271
  }
272
+ // Exit with appropriate code
273
+ process.exit(options.exitZero ? EXIT_CLEAN : exitCode);
146
274
  }
147
275
  /**
148
276
  * Show help
@@ -156,14 +284,24 @@ USAGE:
156
284
  mcp-guardian [options] [config_path]
157
285
 
158
286
  OPTIONS:
159
- --mcp Run as MCP server (for Claude Desktop integration)
160
- --json Output JSON instead of human-readable format
161
- --sync Fast mode: only parse config, don't query servers (no tool scanning)
162
- --version, -v Show version
163
- --help, -h Show this help
287
+ --mcp Run as MCP server (for Claude Desktop integration)
288
+ --json Output JSON instead of human-readable format
289
+ --sarif Output SARIF 2.1.0 format (for GitHub Advanced Security)
290
+ --sync Fast mode: only parse config, don't query servers
291
+ --severity-threshold <lvl> Filter results: critical, warning (default), or info
292
+ --quiet Suppress output on clean scans (exit code still set)
293
+ --exit-zero Always exit with code 0 (for info-only mode)
294
+ --version, -v Show version
295
+ --help, -h Show this help
296
+
297
+ EXIT CODES:
298
+ 0 Clean scan (no issues found)
299
+ 1 Warnings detected
300
+ 2 Critical issues detected
301
+ 3 Configuration or runtime error
164
302
 
165
303
  EXAMPLES:
166
- # Scan all MCP servers in Claude Desktop config (default: async)
304
+ # Scan all MCP servers in Claude Desktop config
167
305
  mcp-guardian
168
306
 
169
307
  # Scan specific config file
@@ -175,8 +313,17 @@ EXAMPLES:
175
313
  # JSON output
176
314
  mcp-guardian --json
177
315
 
178
- # Fast scan (config structure only, no server queries)
179
- mcp-guardian --sync
316
+ # SARIF output for GitHub Advanced Security
317
+ mcp-guardian --sarif > results.sarif
318
+
319
+ # Only show critical issues
320
+ mcp-guardian --severity-threshold critical
321
+
322
+ # CI mode: quiet on success, fail on findings
323
+ mcp-guardian --quiet
324
+
325
+ # Info mode: report but don't fail pipeline
326
+ mcp-guardian --exit-zero
180
327
 
181
328
  CLAUDE DESKTOP INTEGRATION:
182
329
  Add to your claude_desktop_config.json:
@@ -191,6 +338,21 @@ CLAUDE DESKTOP INTEGRATION:
191
338
  }
192
339
  `);
193
340
  }
341
+ /**
342
+ * Parse severity threshold from args
343
+ */
344
+ function parseSeverityThreshold(args) {
345
+ const idx = args.indexOf("--severity-threshold");
346
+ if (idx === -1 || idx >= args.length - 1) {
347
+ return "warning"; // default
348
+ }
349
+ const value = args[idx + 1];
350
+ if (value === "critical" || value === "warning" || value === "info") {
351
+ return value;
352
+ }
353
+ console.error(`Invalid severity threshold: ${value}. Using 'warning'.`);
354
+ return "warning";
355
+ }
194
356
  /**
195
357
  * Main entry point
196
358
  */
@@ -200,12 +362,23 @@ async function main() {
200
362
  const options = {
201
363
  mcp: args.includes("--mcp"),
202
364
  json: args.includes("--json"),
365
+ sarif: args.includes("--sarif"),
203
366
  sync: args.includes("--sync"),
204
367
  help: args.includes("--help") || args.includes("-h"),
205
368
  version: args.includes("--version") || args.includes("-v"),
369
+ quiet: args.includes("--quiet"),
370
+ exitZero: args.includes("--exit-zero"),
371
+ severityThreshold: parseSeverityThreshold(args),
206
372
  };
207
- // Filter out flags to get config path
208
- const positionalArgs = args.filter(arg => !arg.startsWith("-"));
373
+ // Filter out flags to get config path (skip flag values too)
374
+ const positionalArgs = args.filter((arg, idx) => {
375
+ if (arg.startsWith("-"))
376
+ return false;
377
+ // Skip values that follow --severity-threshold
378
+ if (idx > 0 && args[idx - 1] === "--severity-threshold")
379
+ return false;
380
+ return true;
381
+ });
209
382
  const configPath = positionalArgs[0] || null;
210
383
  if (options.version) {
211
384
  console.log(VERSION);
@@ -219,10 +392,10 @@ async function main() {
219
392
  await runMcpServer();
220
393
  return;
221
394
  }
222
- await runCliScan(configPath, { json: options.json, sync: options.sync });
395
+ await runCliScan(configPath, options);
223
396
  }
224
397
  main().catch((error) => {
225
398
  console.error("Fatal error:", error);
226
- process.exit(1);
399
+ process.exit(EXIT_ERROR);
227
400
  });
228
401
  //# sourceMappingURL=mcp-guardian.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-guardian.js","sourceRoot":"","sources":["../../bin/mcp-guardian.ts"],"names":[],"mappings":";AACA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EACL,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,oBAAoB,EACpB,UAAU,GACX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,oBAAoB,GAErB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,aAAa,EACb,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAGL,kBAAkB,GACnB,MAAM,wBAAwB,CAAC;AAEhC,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;AAE7B;;GAEG;AACH,KAAK,UAAU,YAAY;IACzB,MAAM,MAAM,GAAG,IAAI,MAAM,CACvB;QACE,IAAI,EAAE,cAAc;QACpB,OAAO,EAAE,OAAO;KACjB,EACD;QACE,YAAY,EAAE;YACZ,KAAK,EAAE,EAAE;SACV;KACF,CACF,CAAC;IAEF,aAAa;IACb,MAAM,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;QAC5D,KAAK,EAAE;YACL;gBACE,IAAI,EAAE,gBAAgB;gBACtB,WAAW,EACT,wLAAwL;gBAC1L,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,WAAW,EAAE;4BACX,IAAI,EAAE,QAAQ;4BACd,WAAW,EACT,wFAAwF;yBAC3F;wBACD,MAAM,EAAE;4BACN,IAAI,EAAE,QAAQ;4BACd,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;4BACtB,OAAO,EAAE,MAAM;4BACf,WAAW,EAAE,2DAA2D;yBACzE;wBACD,UAAU,EAAE;4BACV,IAAI,EAAE,SAAS;4BACf,OAAO,EAAE,KAAK;4BACd,WAAW,EAAE,gEAAgE;yBAC9E;qBACF;iBACF;aACF;YACD;gBACE,IAAI,EAAE,gBAAgB;gBACtB,WAAW,EACT,8GAA8G;gBAChH,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE,EAAE;iBACf;aACF;SACF;KACF,CAAC,CAAC,CAAC;IAEJ,oBAAoB;IACpB,MAAM,CAAC,iBAAiB,CAAC,qBAAqB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QAChE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;QAEjD,IAAI,IAAI,KAAK,gBAAgB,EAAE,CAAC;YAC9B,OAAO,MAAM,oBAAoB,CAAC,IAAkD,CAAC,CAAC;QACxF,CAAC;QAED,IAAI,IAAI,KAAK,gBAAgB,EAAE,CAAC;YAC9B,MAAM,OAAO,GAAG,kBAAkB,EAAE,CAAC;YACrC,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;qBACvC;iBACF;aACF,CAAC;QACJ,CAAC;QAED,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,iBAAiB,IAAI,EAAE,EAAE,CAAC;iBACzD;aACF;SACF,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,eAAe;IACf,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAEhC,OAAO,CAAC,KAAK,CAAC,8BAA8B,OAAO,mBAAmB,CAAC,CAAC;AAC1E,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,UAAU,CAAC,UAAyB,EAAE,OAGpD;IACC,MAAM,UAAU,GAAG,UAAU,IAAI,oBAAoB,EAAE,CAAC;IAExD,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5B,OAAO,CAAC,KAAK,CAAC,0BAA0B,UAAU,EAAE,CAAC,CAAC;QACtD,OAAO,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAC9C,OAAO,CAAC,KAAK,CAAC,4EAA4E,CAAC,CAAC;QAC5F,OAAO,CAAC,KAAK,CAAC,0DAA0D,CAAC,CAAC;QAC1E,OAAO,CAAC,KAAK,CAAC,wDAAwD,CAAC,CAAC;QACxE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,OAAO,CAAC,KAAK,CAAC,4BAA4B,UAAU,EAAE,CAAC,CAAC;IAExD,IAAI,MAAM,CAAC;IACX,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,gEAAgE;QAChE,MAAM,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAC;QACvC,OAAO,CAAC,KAAK,CAAC,iFAAiF,CAAC,CAAC;IACnG,CAAC;SAAM,CAAC;QACN,wDAAwD;QACxD,OAAO,CAAC,KAAK,CAAC,iEAAiE,CAAC,CAAC;QACjF,MAAM,GAAG,MAAM,aAAa,CAAC,UAAU,CAAC,CAAC;IAC3C,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/C,CAAC;SAAM,CAAC;QACN,wBAAwB;QACxB,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;QACpD,OAAO,CAAC,GAAG,CAAC,WAAW,UAAU,EAAE,CAAC,CAAC;QACrC,OAAO,CAAC,GAAG,CAAC,YAAY,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QACjD,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QAEhC,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACpC,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBACrC,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;YACvD,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,IAAI,MAAM,CAAC,UAAU,KAAK,MAAM,CAAC,SAAS,SAAS,CAAC,CAAC;YAE1E,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7B,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;oBACjC,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,MAAM,CAAC,MAAM,WAAW,CAAC,CAAC;gBAC1E,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,kBAAkB,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,YAAY,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;QACpD,OAAO,CAAC,GAAG,CAAC,eAAe,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IACxD,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,QAAQ;IACf,OAAO,CAAC,GAAG,CAAC;0BACY,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwChC,CAAC,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,IAAI;IACjB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAEnC,gBAAgB;IAChB,MAAM,OAAO,GAAG;QACd,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;QAC3B,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC7B,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC7B,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QACpD,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;KAC3D,CAAC;IAEF,sCAAsC;IACtC,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;IAChE,MAAM,UAAU,GAAG,cAAc,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;IAE7C,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACrB,OAAO;IACT,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,QAAQ,EAAE,CAAC;QACX,OAAO;IACT,CAAC;IAED,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QAChB,MAAM,YAAY,EAAE,CAAC;QACrB,OAAO;IACT,CAAC;IAED,MAAM,UAAU,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;AAC3E,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"mcp-guardian.js","sourceRoot":"","sources":["../../bin/mcp-guardian.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mcp-guardian",
3
- "version": "1.2.1",
3
+ "version": "1.3.0",
4
4
  "description": "MCP security scanner - detect prompt injection in tool descriptions",
5
5
  "type": "module",
6
6
  "main": "dist/src/index.js",