@inkog-io/mcp 1.0.1 → 1.0.2

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.
@@ -24,10 +24,9 @@ import { getRelativePaths, readDirectory } from '../utils/file-reader.js';
24
24
  const A2AArgsSchema = z.object({
25
25
  path: z.string().describe('Path to multi-agent system codebase'),
26
26
  protocol: z
27
- .enum(['a2a', 'crewai', 'langgraph', 'auto-detect'])
27
+ .enum(['a2a', 'crewai', 'langgraph', 'autogen', 'custom', 'unknown'])
28
28
  .optional()
29
- .default('auto-detect')
30
- .describe('Multi-agent protocol: a2a (Google), crewai, langgraph, or auto-detect'),
29
+ .describe('Multi-agent protocol hint: a2a (Google), crewai, langgraph, autogen, or leave empty for auto-detect'),
31
30
  check_delegation_chains: z
32
31
  .boolean()
33
32
  .optional()
@@ -38,7 +37,8 @@ const A2AArgsSchema = z.object({
38
37
  // Helpers
39
38
  // =============================================================================
40
39
  function formatSeverityIcon(severity) {
41
- switch (severity) {
40
+ const upper = severity.toUpperCase();
41
+ switch (upper) {
42
42
  case 'CRITICAL':
43
43
  return 'šŸ”“';
44
44
  case 'HIGH':
@@ -59,61 +59,86 @@ function formatProtocol(protocol) {
59
59
  return 'CrewAI';
60
60
  case 'langgraph':
61
61
  return 'LangGraph';
62
- case 'auto-detect':
63
- return 'Auto-detected';
62
+ case 'autogen':
63
+ return 'Microsoft AutoGen';
64
+ case 'custom':
65
+ return 'Custom Protocol';
66
+ case 'unknown':
67
+ return 'Unknown (auto-detect failed)';
64
68
  default:
65
69
  return protocol;
66
70
  }
67
71
  }
68
- function formatSecurityScore(score) {
69
- if (score >= 90) {
70
- return `āœ… ${score}/100 (Excellent)`;
71
- }
72
- else if (score >= 70) {
73
- return `🟢 ${score}/100 (Good)`;
74
- }
75
- else if (score >= 50) {
76
- return `🟔 ${score}/100 (Fair)`;
77
- }
78
- else if (score >= 30) {
79
- return `🟠 ${score}/100 (Poor)`;
80
- }
81
- else {
82
- return `šŸ”“ ${score}/100 (Critical)`;
72
+ function formatRiskLevel(risk) {
73
+ switch (risk.toLowerCase()) {
74
+ case 'critical':
75
+ return 'šŸ”“ Critical';
76
+ case 'high':
77
+ return '🟠 High';
78
+ case 'medium':
79
+ return '🟔 Medium';
80
+ case 'low':
81
+ return '🟢 Low';
82
+ case 'not_applicable':
83
+ return '⚪ N/A';
84
+ default:
85
+ return risk;
83
86
  }
84
87
  }
85
88
  function formatAgent(agent) {
86
89
  let output = `šŸ¤– ${agent.name}`;
87
- if (agent.role !== undefined) {
90
+ if (agent.role) {
88
91
  output += ` (${agent.role})`;
89
92
  }
90
93
  output += '\n';
91
- output += ` šŸ“ ${agent.file}:${agent.line}\n`;
94
+ if (agent.file) {
95
+ output += ` šŸ“ ${agent.file}${agent.line ? `:${agent.line}` : ''}\n`;
96
+ }
92
97
  if (agent.tools.length > 0) {
93
98
  output += ` šŸ”§ Tools: ${agent.tools.join(', ')}\n`;
94
99
  }
95
- if (agent.permissions.length > 0) {
96
- output += ` šŸ” Permissions: ${agent.permissions.join(', ')}\n`;
100
+ if (agent.delegation_targets.length > 0) {
101
+ output += ` šŸ”— Can delegate to: ${agent.delegation_targets.join(', ')}\n`;
102
+ }
103
+ // Security properties
104
+ const securityProps = [];
105
+ if (agent.has_auth_check)
106
+ securityProps.push('auth āœ“');
107
+ if (agent.has_rate_limiting)
108
+ securityProps.push('rate-limit āœ“');
109
+ if (agent.has_memory)
110
+ securityProps.push('memory');
111
+ if (securityProps.length > 0) {
112
+ output += ` šŸ” Security: ${securityProps.join(', ')}\n`;
113
+ }
114
+ if (agent.trust_level) {
115
+ output += ` šŸ›”ļø Trust: ${agent.trust_level}\n`;
97
116
  }
98
117
  return output;
99
118
  }
100
- function formatDelegationEdge(edge) {
101
- const arrow = edge.type === 'spawn' ? '⟹' : edge.type === 'handoff' ? '→' : '⇢';
102
- const guards = edge.hasGuards ? 'šŸ›”ļø' : 'āš ļø';
103
- return ` ${edge.from} ${arrow} ${edge.to} [${edge.type}] ${guards}`;
119
+ function formatCommunication(comm) {
120
+ const arrow = comm.type === 'delegation' ? '⟹' : comm.type === 'task' ? '→' : '⇢';
121
+ const guards = comm.has_guards ? 'šŸ›”ļø' : 'āš ļø';
122
+ const auth = comm.has_auth ? 'šŸ”' : '';
123
+ return ` ${comm.from} ${arrow} ${comm.to} [${comm.type}] ${guards}${auth}`;
104
124
  }
105
- function formatIssue(issue) {
106
- const icon = formatSeverityIcon(issue.severity);
107
- let output = `${icon} [${issue.severity}] ${issue.title}\n`;
108
- output += ` Category: ${formatIssueCategory(issue.category)}\n`;
109
- output += ` ${issue.description}\n`;
110
- output += ` Agents: ${issue.agents.join(', ')}\n`;
111
- output += ` šŸ“ ${issue.file}:${issue.line}\n`;
112
- output += ` šŸ’” ${issue.recommendation}`;
125
+ function formatFinding(finding) {
126
+ const icon = formatSeverityIcon(finding.severity);
127
+ let output = `${icon} [${finding.severity.toUpperCase()}] ${finding.type}\n`;
128
+ output += ` ${finding.description}\n`;
129
+ if (finding.agents_involved.length > 0) {
130
+ output += ` Agents: ${finding.agents_involved.join(', ')}\n`;
131
+ }
132
+ if (finding.file) {
133
+ output += ` šŸ“ ${finding.file}${finding.line ? `:${finding.line}` : ''}\n`;
134
+ }
135
+ if (finding.remediation) {
136
+ output += ` šŸ’” ${finding.remediation}`;
137
+ }
113
138
  return output;
114
139
  }
115
- function formatIssueCategory(category) {
116
- switch (category) {
140
+ function formatFindingType(type) {
141
+ switch (type) {
117
142
  case 'infinite-delegation':
118
143
  return 'ā™¾ļø Infinite Delegation';
119
144
  case 'privilege-escalation':
@@ -124,40 +149,43 @@ function formatIssueCategory(category) {
124
149
  return '🚫 Unauthorized Handoff';
125
150
  case 'missing-guards':
126
151
  return 'šŸ›”ļø Missing Guards';
152
+ case 'missing-auth':
153
+ return 'šŸ” Missing Authentication';
127
154
  default:
128
- return category;
155
+ return type;
129
156
  }
130
157
  }
131
- function renderDelegationGraph(agents, edges) {
132
- if (agents.length === 0 || edges.length === 0) {
158
+ function renderDelegationGraph(agents, communications) {
159
+ if (agents.length === 0 || communications.length === 0) {
133
160
  return 'No delegation relationships detected.\n';
134
161
  }
135
162
  let output = '\n';
136
163
  // Simple ASCII graph representation
137
164
  const agentMap = new Map(agents.map((a) => [a.id, a.name]));
138
- // Group edges by source agent
139
- const edgesBySource = new Map();
140
- for (const edge of edges) {
141
- if (!edgesBySource.has(edge.from)) {
142
- edgesBySource.set(edge.from, []);
165
+ // Group communications by source agent
166
+ const commsBySource = new Map();
167
+ for (const comm of communications) {
168
+ if (!commsBySource.has(comm.from)) {
169
+ commsBySource.set(comm.from, []);
143
170
  }
144
- edgesBySource.get(edge.from).push(edge);
171
+ commsBySource.get(comm.from).push(comm);
145
172
  }
146
- // Render each agent and its outgoing edges
173
+ // Render each agent and its outgoing communications
147
174
  for (const agent of agents) {
148
- const agentEdges = edgesBySource.get(agent.id) ?? [];
175
+ const agentComms = commsBySource.get(agent.id) ?? [];
149
176
  const name = agentMap.get(agent.id) ?? agent.id;
150
- if (agentEdges.length === 0) {
177
+ const displayName = name.length > 12 ? name.substring(0, 10) + '..' : name;
178
+ if (agentComms.length === 0) {
151
179
  output += ` ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”\n`;
152
- output += ` │ ${name.padEnd(12)} │\n`;
180
+ output += ` │ ${displayName.padEnd(12)} │\n`;
153
181
  output += ` ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜\n`;
154
182
  }
155
183
  else {
156
184
  output += ` ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”\n`;
157
- output += ` │ ${name.padEnd(12)} │`;
158
- agentEdges.forEach((edge, i) => {
159
- const targetName = agentMap.get(edge.to) ?? edge.to;
160
- const arrow = edge.hasGuards ? 'ā”€ā”€šŸ›”ļøā”€ā”€>' : 'ā”€ā”€āš ļøā”€ā”€>';
185
+ output += ` │ ${displayName.padEnd(12)} │`;
186
+ agentComms.forEach((comm, i) => {
187
+ const targetName = agentMap.get(comm.to) ?? comm.to;
188
+ const arrow = comm.has_guards ? 'ā”€ā”€šŸ›”ļøā”€ā”€>' : 'ā”€ā”€āš ļøā”€ā”€>';
161
189
  if (i === 0) {
162
190
  output += `${arrow} ${targetName}`;
163
191
  }
@@ -220,38 +248,63 @@ async function auditA2AHandler(rawArgs) {
220
248
  };
221
249
  }
222
250
  // Step 2: Use scan_id to audit A2A
223
- const response = await client.auditA2A([], {
224
- protocol: args.protocol,
251
+ const a2aOptions = {
225
252
  checkDelegationChains: args.check_delegation_chains,
226
253
  scanId: scanResponse.scan_id,
227
- });
254
+ };
255
+ if (args.protocol) {
256
+ a2aOptions.protocol = args.protocol;
257
+ }
258
+ const response = await client.auditA2A([], a2aOptions);
228
259
  // Build formatted output
229
260
  let output = '╔══════════════════════════════════════════════════════╗\n';
230
261
  output += 'ā•‘ šŸ¤– Agent-to-Agent Security Audit ā•‘\n';
231
262
  output += 'ā•šā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•\n\n';
263
+ // Warning if topology is incomplete
264
+ if (response.warning) {
265
+ output += `āš ļø ${response.warning}\n\n`;
266
+ }
232
267
  // Overview
233
268
  output += `šŸ“” Protocol: ${formatProtocol(response.protocol)}\n`;
234
269
  output += `šŸ¤– Agents Detected: ${response.agents.length}\n`;
235
- output += `šŸ”— Delegation Edges: ${response.delegationGraph.length}\n`;
236
- output += `šŸ“Š Security Score: ${formatSecurityScore(response.securityScore)}\n\n`;
237
- // Topology warnings
238
- if (response.hasCycles) {
239
- output += 'āš ļø WARNING: Delegation cycles detected (potential infinite loops)\n';
240
- }
241
- if (response.maxDelegationDepth > 5) {
242
- output += `āš ļø WARNING: Deep delegation chain detected (depth: ${response.maxDelegationDepth})\n`;
270
+ output += `šŸ”— Communication Channels: ${response.communications?.length ?? 0}\n`;
271
+ // Risk assessment
272
+ if (response.risk_assessment) {
273
+ output += `šŸ“Š Overall Risk: ${formatRiskLevel(response.risk_assessment.overall_risk)}\n`;
243
274
  }
244
275
  output += '\n';
245
- // Issues summary
246
- const critical = response.issues.filter((i) => i.severity === 'CRITICAL').length;
247
- const high = response.issues.filter((i) => i.severity === 'HIGH').length;
248
- const medium = response.issues.filter((i) => i.severity === 'MEDIUM').length;
249
- const low = response.issues.filter((i) => i.severity === 'LOW').length;
250
- if (response.issues.length === 0) {
276
+ // Trust analysis warnings
277
+ if (response.trust_analysis) {
278
+ const ta = response.trust_analysis;
279
+ if (ta.circular_delegations && ta.circular_delegations.length > 0) {
280
+ output += 'āš ļø WARNING: Circular delegation chains detected (potential infinite loops)\n';
281
+ for (const cycle of ta.circular_delegations) {
282
+ output += ` Cycle: ${cycle.join(' → ')}\n`;
283
+ }
284
+ output += '\n';
285
+ }
286
+ if (ta.unguarded_delegations > 0) {
287
+ output += `āš ļø WARNING: ${ta.unguarded_delegations} unguarded delegation(s) detected\n`;
288
+ }
289
+ if (ta.privilege_escalations > 0) {
290
+ output += `āš ļø WARNING: ${ta.privilege_escalations} potential privilege escalation(s)\n`;
291
+ }
292
+ if (ta.cross_boundary_flows > 0) {
293
+ output += `ā„¹ļø ${ta.cross_boundary_flows} cross-trust-boundary flow(s) detected\n`;
294
+ }
295
+ output += '\n';
296
+ }
297
+ // Findings summary
298
+ const findings = response.findings ?? [];
299
+ if (findings.length === 0) {
251
300
  output += 'āœ… No multi-agent security issues detected!\n\n';
252
301
  }
253
302
  else {
254
- output += `šŸ“‹ Security Issues: ${response.issues.length}\n`;
303
+ const critical = findings.filter((f) => f.severity.toUpperCase() === 'CRITICAL').length;
304
+ const high = findings.filter((f) => f.severity.toUpperCase() === 'HIGH').length;
305
+ const medium = findings.filter((f) => f.severity.toUpperCase() === 'MEDIUM').length;
306
+ const low = findings.filter((f) => f.severity.toUpperCase() === 'LOW').length;
307
+ output += `šŸ“‹ Security Issues: ${findings.length}\n`;
255
308
  output += ` šŸ”“ Critical: ${critical} | 🟠 High: ${high} | 🟔 Medium: ${medium} | 🟢 Low: ${low}\n\n`;
256
309
  }
257
310
  // Agent inventory
@@ -263,67 +316,65 @@ async function auditA2AHandler(rawArgs) {
263
316
  }
264
317
  }
265
318
  // Delegation graph visualization
266
- if (response.delegationGraph.length > 0) {
319
+ const communications = response.communications ?? [];
320
+ if (communications.length > 0) {
267
321
  output += '━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n\n';
268
322
  output += 'šŸ”— DELEGATION GRAPH\n';
269
- output += renderDelegationGraph(response.agents, response.delegationGraph);
323
+ output += renderDelegationGraph(response.agents, communications);
270
324
  output += '\n';
271
- output += 'Delegation Edges:\n';
272
- for (const edge of response.delegationGraph) {
273
- output += formatDelegationEdge(edge) + '\n';
325
+ output += 'Communication Channels:\n';
326
+ for (const comm of communications) {
327
+ output += formatCommunication(comm) + '\n';
274
328
  }
275
329
  output += '\n';
276
- output += 'Legend: šŸ›”ļø = has permission guards, āš ļø = no guards\n\n';
330
+ output += 'Legend: šŸ›”ļø = has permission guards, āš ļø = no guards, šŸ” = authenticated\n\n';
277
331
  }
278
- // Detailed issues
279
- if (response.issues.length > 0) {
332
+ // Detailed findings
333
+ if (findings.length > 0) {
280
334
  output += '━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n\n';
281
- output += 'šŸ” SECURITY ISSUES\n\n';
282
- // Group by category
283
- const infiniteDelegation = response.issues.filter((i) => i.category === 'infinite-delegation');
284
- const privilegeEscalation = response.issues.filter((i) => i.category === 'privilege-escalation');
285
- const dataLeakage = response.issues.filter((i) => i.category === 'data-leakage');
286
- const unauthorizedHandoff = response.issues.filter((i) => i.category === 'unauthorized-handoff');
287
- const missingGuards = response.issues.filter((i) => i.category === 'missing-guards');
288
- if (infiniteDelegation.length > 0) {
289
- output += 'ā™¾ļø INFINITE DELEGATION RISKS\n\n';
290
- for (const issue of infiniteDelegation) {
291
- output += formatIssue(issue) + '\n\n';
335
+ output += 'šŸ” SECURITY FINDINGS\n\n';
336
+ // Group by type
337
+ const groupedFindings = new Map();
338
+ for (const finding of findings) {
339
+ const type = finding.type;
340
+ if (!groupedFindings.has(type)) {
341
+ groupedFindings.set(type, []);
292
342
  }
343
+ groupedFindings.get(type).push(finding);
293
344
  }
294
- if (privilegeEscalation.length > 0) {
295
- output += 'ā¬†ļø PRIVILEGE ESCALATION RISKS\n\n';
296
- for (const issue of privilegeEscalation) {
297
- output += formatIssue(issue) + '\n\n';
345
+ for (const [type, typeFindings] of groupedFindings) {
346
+ output += `${formatFindingType(type)}\n\n`;
347
+ for (const finding of typeFindings) {
348
+ output += formatFinding(finding) + '\n\n';
298
349
  }
299
350
  }
300
- if (dataLeakage.length > 0) {
301
- output += 'šŸ’§ DATA LEAKAGE RISKS\n\n';
302
- for (const issue of dataLeakage) {
303
- output += formatIssue(issue) + '\n\n';
304
- }
305
- }
306
- if (unauthorizedHandoff.length > 0) {
307
- output += '🚫 UNAUTHORIZED HANDOFF RISKS\n\n';
308
- for (const issue of unauthorizedHandoff) {
309
- output += formatIssue(issue) + '\n\n';
310
- }
311
- }
312
- if (missingGuards.length > 0) {
313
- output += 'šŸ›”ļø MISSING GUARDS\n\n';
314
- for (const issue of missingGuards) {
315
- output += formatIssue(issue) + '\n\n';
351
+ }
352
+ // Trust boundaries
353
+ if (response.trust_analysis?.trust_boundaries && response.trust_analysis.trust_boundaries.length > 0) {
354
+ output += '━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n\n';
355
+ output += 'šŸ›”ļø TRUST BOUNDARIES\n\n';
356
+ for (const boundary of response.trust_analysis.trust_boundaries) {
357
+ output += `šŸ“¦ ${boundary.name} [${boundary.trust_level}]\n`;
358
+ if (boundary.description) {
359
+ output += ` ${boundary.description}\n`;
316
360
  }
361
+ output += ` Agents: ${boundary.agent_ids.join(', ')}\n\n`;
317
362
  }
318
363
  }
319
364
  // Recommendations
320
- if (response.recommendations.length > 0) {
365
+ const recommendations = response.risk_assessment?.recommendations ?? [];
366
+ if (recommendations.length > 0) {
321
367
  output += '━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n\n';
322
368
  output += 'šŸ’” RECOMMENDATIONS\n\n';
323
- for (let i = 0; i < response.recommendations.length; i++) {
324
- output += `${i + 1}. ${response.recommendations[i]}\n`;
369
+ for (let i = 0; i < recommendations.length; i++) {
370
+ output += `${i + 1}. ${recommendations[i]}\n`;
325
371
  }
326
372
  }
373
+ // Risk summary
374
+ if (response.risk_assessment?.summary) {
375
+ output += '\nšŸ“Š SUMMARY\n';
376
+ output += ` ${response.risk_assessment.summary}\n`;
377
+ }
327
378
  // Footer
328
379
  output += '\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n';
329
380
  output += 'Multi-Agent Security Audit powered by Inkog AI Security Platform\n';
@@ -400,7 +451,7 @@ async function auditA2AHandler(rawArgs) {
400
451
  export const auditA2aTool = {
401
452
  tool: {
402
453
  name: 'inkog_audit_a2a',
403
- description: 'Audit Agent-to-Agent (A2A) communications in multi-agent systems. Detects infinite delegation loops, privilege escalation, data leakage between agents, and unauthorized handoffs. Supports Google A2A protocol, CrewAI, and LangGraph.',
454
+ description: 'Audit Agent-to-Agent (A2A) communications in multi-agent systems. Detects infinite delegation loops, privilege escalation, data leakage between agents, and unauthorized handoffs. Supports Google A2A protocol, CrewAI, LangGraph, and AutoGen.',
404
455
  inputSchema: {
405
456
  type: 'object',
406
457
  properties: {
@@ -410,9 +461,8 @@ export const auditA2aTool = {
410
461
  },
411
462
  protocol: {
412
463
  type: 'string',
413
- enum: ['a2a', 'crewai', 'langgraph', 'auto-detect'],
414
- default: 'auto-detect',
415
- description: 'Multi-agent protocol: a2a (Google), crewai, langgraph, or auto-detect',
464
+ enum: ['a2a', 'crewai', 'langgraph', 'autogen', 'custom'],
465
+ description: 'Multi-agent protocol hint (optional, will auto-detect if not specified)',
416
466
  },
417
467
  check_delegation_chains: {
418
468
  type: 'boolean',
@@ -1 +1 @@
1
- {"version":3,"file":"audit-a2a.js","sourceRoot":"","sources":["../../src/tools/audit-a2a.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"audit-a2a.js","sourceRoot":"","sources":["../../src/tools/audit-a2a.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"audit-mcp.d.ts","sourceRoot":"","sources":["../../src/tools/audit-mcp.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAYH,OAAO,KAAK,EAAE,cAAc,EAAc,MAAM,YAAY,CAAC;AA8S7D,eAAO,MAAM,YAAY,EAAE,cAoB1B,CAAC"}
1
+ {"version":3,"file":"audit-mcp.d.ts","sourceRoot":"","sources":["../../src/tools/audit-mcp.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAYH,OAAO,KAAK,EAAE,cAAc,EAAc,MAAM,YAAY,CAAC;AA0S7D,eAAO,MAAM,YAAY,EAAE,cAoB1B,CAAC"}