@inkog-io/mcp 1.0.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.
- package/LICENSE +190 -0
- package/README.md +265 -0
- package/dist/api/client.d.ts +108 -0
- package/dist/api/client.d.ts.map +1 -0
- package/dist/api/client.js +288 -0
- package/dist/api/client.js.map +1 -0
- package/dist/api/types.d.ts +286 -0
- package/dist/api/types.d.ts.map +1 -0
- package/dist/api/types.js +21 -0
- package/dist/api/types.js.map +1 -0
- package/dist/config.d.ts +68 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +130 -0
- package/dist/config.js.map +1 -0
- package/dist/index.d.ts +19 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +203 -0
- package/dist/index.js.map +1 -0
- package/dist/tools/audit-a2a.d.ts +20 -0
- package/dist/tools/audit-a2a.d.ts.map +1 -0
- package/dist/tools/audit-a2a.js +382 -0
- package/dist/tools/audit-a2a.js.map +1 -0
- package/dist/tools/audit-mcp.d.ts +16 -0
- package/dist/tools/audit-mcp.d.ts.map +1 -0
- package/dist/tools/audit-mcp.js +259 -0
- package/dist/tools/audit-mcp.js.map +1 -0
- package/dist/tools/compliance.d.ts +14 -0
- package/dist/tools/compliance.d.ts.map +1 -0
- package/dist/tools/compliance.js +255 -0
- package/dist/tools/compliance.js.map +1 -0
- package/dist/tools/explain.d.ts +14 -0
- package/dist/tools/explain.d.ts.map +1 -0
- package/dist/tools/explain.js +202 -0
- package/dist/tools/explain.js.map +1 -0
- package/dist/tools/governance.d.ts +16 -0
- package/dist/tools/governance.d.ts.map +1 -0
- package/dist/tools/governance.js +200 -0
- package/dist/tools/governance.js.map +1 -0
- package/dist/tools/index.d.ts +50 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +94 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/mlbom.d.ts +18 -0
- package/dist/tools/mlbom.d.ts.map +1 -0
- package/dist/tools/mlbom.js +344 -0
- package/dist/tools/mlbom.js.map +1 -0
- package/dist/tools/scan.d.ts +15 -0
- package/dist/tools/scan.d.ts.map +1 -0
- package/dist/tools/scan.js +270 -0
- package/dist/tools/scan.js.map +1 -0
- package/dist/utils/file-reader.d.ts +55 -0
- package/dist/utils/file-reader.d.ts.map +1 -0
- package/dist/utils/file-reader.js +269 -0
- package/dist/utils/file-reader.js.map +1 -0
- package/package.json +64 -0
|
@@ -0,0 +1,382 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* inkog_audit_a2a Tool
|
|
3
|
+
*
|
|
4
|
+
* P2 - Agent-to-Agent (A2A) Security Auditing (MULTI-AGENT SECURITY)
|
|
5
|
+
*
|
|
6
|
+
* Audits communication patterns in multi-agent systems for:
|
|
7
|
+
* - Infinite delegation loops
|
|
8
|
+
* - Privilege escalation via delegation
|
|
9
|
+
* - Data leakage between agents
|
|
10
|
+
* - Unauthorized agent handoffs
|
|
11
|
+
* - Missing permission guards
|
|
12
|
+
*
|
|
13
|
+
* Supports: Google A2A protocol, CrewAI, LangGraph, auto-detection
|
|
14
|
+
*
|
|
15
|
+
* Aligned with Google Cloud AI Agent Trends 2026:
|
|
16
|
+
* "Multi-agent orchestration is the future of enterprise AI"
|
|
17
|
+
*/
|
|
18
|
+
import { z } from 'zod';
|
|
19
|
+
import { getClient, InkogAuthError, InkogNetworkError } from '../api/client.js';
|
|
20
|
+
import { getRelativePaths, readDirectory } from '../utils/file-reader.js';
|
|
21
|
+
// =============================================================================
|
|
22
|
+
// Schema
|
|
23
|
+
// =============================================================================
|
|
24
|
+
const A2AArgsSchema = z.object({
|
|
25
|
+
path: z.string().describe('Path to multi-agent system codebase'),
|
|
26
|
+
protocol: z
|
|
27
|
+
.enum(['a2a', 'crewai', 'langgraph', 'auto-detect'])
|
|
28
|
+
.optional()
|
|
29
|
+
.default('auto-detect')
|
|
30
|
+
.describe('Multi-agent protocol: a2a (Google), crewai, langgraph, or auto-detect'),
|
|
31
|
+
check_delegation_chains: z
|
|
32
|
+
.boolean()
|
|
33
|
+
.optional()
|
|
34
|
+
.default(true)
|
|
35
|
+
.describe('Check for infinite delegation loops and unauthorized handoffs'),
|
|
36
|
+
});
|
|
37
|
+
// =============================================================================
|
|
38
|
+
// Helpers
|
|
39
|
+
// =============================================================================
|
|
40
|
+
function formatSeverityIcon(severity) {
|
|
41
|
+
switch (severity) {
|
|
42
|
+
case 'CRITICAL':
|
|
43
|
+
return 'š“';
|
|
44
|
+
case 'HIGH':
|
|
45
|
+
return 'š ';
|
|
46
|
+
case 'MEDIUM':
|
|
47
|
+
return 'š”';
|
|
48
|
+
case 'LOW':
|
|
49
|
+
return 'š¢';
|
|
50
|
+
default:
|
|
51
|
+
return 'āŖ';
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
function formatProtocol(protocol) {
|
|
55
|
+
switch (protocol) {
|
|
56
|
+
case 'a2a':
|
|
57
|
+
return 'Google A2A Protocol';
|
|
58
|
+
case 'crewai':
|
|
59
|
+
return 'CrewAI';
|
|
60
|
+
case 'langgraph':
|
|
61
|
+
return 'LangGraph';
|
|
62
|
+
case 'auto-detect':
|
|
63
|
+
return 'Auto-detected';
|
|
64
|
+
default:
|
|
65
|
+
return protocol;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
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)`;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
function formatAgent(agent) {
|
|
86
|
+
let output = `š¤ ${agent.name}`;
|
|
87
|
+
if (agent.role !== undefined) {
|
|
88
|
+
output += ` (${agent.role})`;
|
|
89
|
+
}
|
|
90
|
+
output += '\n';
|
|
91
|
+
output += ` š ${agent.file}:${agent.line}\n`;
|
|
92
|
+
if (agent.tools.length > 0) {
|
|
93
|
+
output += ` š§ Tools: ${agent.tools.join(', ')}\n`;
|
|
94
|
+
}
|
|
95
|
+
if (agent.permissions.length > 0) {
|
|
96
|
+
output += ` š Permissions: ${agent.permissions.join(', ')}\n`;
|
|
97
|
+
}
|
|
98
|
+
return output;
|
|
99
|
+
}
|
|
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}`;
|
|
104
|
+
}
|
|
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}`;
|
|
113
|
+
return output;
|
|
114
|
+
}
|
|
115
|
+
function formatIssueCategory(category) {
|
|
116
|
+
switch (category) {
|
|
117
|
+
case 'infinite-delegation':
|
|
118
|
+
return 'ā¾ļø Infinite Delegation';
|
|
119
|
+
case 'privilege-escalation':
|
|
120
|
+
return 'ā¬ļø Privilege Escalation';
|
|
121
|
+
case 'data-leakage':
|
|
122
|
+
return 'š§ Data Leakage';
|
|
123
|
+
case 'unauthorized-handoff':
|
|
124
|
+
return 'š« Unauthorized Handoff';
|
|
125
|
+
case 'missing-guards':
|
|
126
|
+
return 'š”ļø Missing Guards';
|
|
127
|
+
default:
|
|
128
|
+
return category;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
function renderDelegationGraph(agents, edges) {
|
|
132
|
+
if (agents.length === 0 || edges.length === 0) {
|
|
133
|
+
return 'No delegation relationships detected.\n';
|
|
134
|
+
}
|
|
135
|
+
let output = '\n';
|
|
136
|
+
// Simple ASCII graph representation
|
|
137
|
+
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, []);
|
|
143
|
+
}
|
|
144
|
+
edgesBySource.get(edge.from).push(edge);
|
|
145
|
+
}
|
|
146
|
+
// Render each agent and its outgoing edges
|
|
147
|
+
for (const agent of agents) {
|
|
148
|
+
const agentEdges = edgesBySource.get(agent.id) ?? [];
|
|
149
|
+
const name = agentMap.get(agent.id) ?? agent.id;
|
|
150
|
+
if (agentEdges.length === 0) {
|
|
151
|
+
output += ` āāāāāāāāāāāāāāāā\n`;
|
|
152
|
+
output += ` ā ${name.padEnd(12)} ā\n`;
|
|
153
|
+
output += ` āāāāāāāāāāāāāāāā\n`;
|
|
154
|
+
}
|
|
155
|
+
else {
|
|
156
|
+
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 ? 'āāš”ļøāā>' : 'āāā ļøāā>';
|
|
161
|
+
if (i === 0) {
|
|
162
|
+
output += `${arrow} ${targetName}`;
|
|
163
|
+
}
|
|
164
|
+
else {
|
|
165
|
+
output += `\n ā ā${arrow} ${targetName}`;
|
|
166
|
+
}
|
|
167
|
+
});
|
|
168
|
+
output += `\n āāāāāāāāāāāāāāāā\n`;
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
return output;
|
|
172
|
+
}
|
|
173
|
+
// =============================================================================
|
|
174
|
+
// Handler
|
|
175
|
+
// =============================================================================
|
|
176
|
+
async function auditA2AHandler(rawArgs) {
|
|
177
|
+
// Validate arguments
|
|
178
|
+
const parseResult = A2AArgsSchema.safeParse(rawArgs);
|
|
179
|
+
if (!parseResult.success) {
|
|
180
|
+
return {
|
|
181
|
+
content: [
|
|
182
|
+
{
|
|
183
|
+
type: 'text',
|
|
184
|
+
text: `Invalid arguments: ${parseResult.error.message}`,
|
|
185
|
+
},
|
|
186
|
+
],
|
|
187
|
+
isError: true,
|
|
188
|
+
};
|
|
189
|
+
}
|
|
190
|
+
const args = parseResult.data;
|
|
191
|
+
try {
|
|
192
|
+
// Read files from path
|
|
193
|
+
const readResult = readDirectory(args.path);
|
|
194
|
+
if (readResult.files.length === 0) {
|
|
195
|
+
return {
|
|
196
|
+
content: [
|
|
197
|
+
{
|
|
198
|
+
type: 'text',
|
|
199
|
+
text: `No files found in: ${args.path}`,
|
|
200
|
+
},
|
|
201
|
+
],
|
|
202
|
+
isError: true,
|
|
203
|
+
};
|
|
204
|
+
}
|
|
205
|
+
// Get relative paths
|
|
206
|
+
const files = getRelativePaths(readResult.files, args.path);
|
|
207
|
+
// Call Inkog API
|
|
208
|
+
const client = getClient();
|
|
209
|
+
const response = await client.auditA2A(files, {
|
|
210
|
+
protocol: args.protocol,
|
|
211
|
+
checkDelegationChains: args.check_delegation_chains,
|
|
212
|
+
});
|
|
213
|
+
// Build formatted output
|
|
214
|
+
let output = 'āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā\n';
|
|
215
|
+
output += 'ā š¤ Agent-to-Agent Security Audit ā\n';
|
|
216
|
+
output += 'āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā\n\n';
|
|
217
|
+
// Overview
|
|
218
|
+
output += `š” Protocol: ${formatProtocol(response.protocol)}\n`;
|
|
219
|
+
output += `š¤ Agents Detected: ${response.agents.length}\n`;
|
|
220
|
+
output += `š Delegation Edges: ${response.delegationGraph.length}\n`;
|
|
221
|
+
output += `š Security Score: ${formatSecurityScore(response.securityScore)}\n\n`;
|
|
222
|
+
// Topology warnings
|
|
223
|
+
if (response.hasCycles) {
|
|
224
|
+
output += 'ā ļø WARNING: Delegation cycles detected (potential infinite loops)\n';
|
|
225
|
+
}
|
|
226
|
+
if (response.maxDelegationDepth > 5) {
|
|
227
|
+
output += `ā ļø WARNING: Deep delegation chain detected (depth: ${response.maxDelegationDepth})\n`;
|
|
228
|
+
}
|
|
229
|
+
output += '\n';
|
|
230
|
+
// Issues summary
|
|
231
|
+
const critical = response.issues.filter((i) => i.severity === 'CRITICAL').length;
|
|
232
|
+
const high = response.issues.filter((i) => i.severity === 'HIGH').length;
|
|
233
|
+
const medium = response.issues.filter((i) => i.severity === 'MEDIUM').length;
|
|
234
|
+
const low = response.issues.filter((i) => i.severity === 'LOW').length;
|
|
235
|
+
if (response.issues.length === 0) {
|
|
236
|
+
output += 'ā
No multi-agent security issues detected!\n\n';
|
|
237
|
+
}
|
|
238
|
+
else {
|
|
239
|
+
output += `š Security Issues: ${response.issues.length}\n`;
|
|
240
|
+
output += ` š“ Critical: ${critical} | š High: ${high} | š” Medium: ${medium} | š¢ Low: ${low}\n\n`;
|
|
241
|
+
}
|
|
242
|
+
// Agent inventory
|
|
243
|
+
if (response.agents.length > 0) {
|
|
244
|
+
output += 'āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā\n\n';
|
|
245
|
+
output += 'š¤ AGENT INVENTORY\n\n';
|
|
246
|
+
for (const agent of response.agents) {
|
|
247
|
+
output += formatAgent(agent) + '\n';
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
// Delegation graph visualization
|
|
251
|
+
if (response.delegationGraph.length > 0) {
|
|
252
|
+
output += 'āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā\n\n';
|
|
253
|
+
output += 'š DELEGATION GRAPH\n';
|
|
254
|
+
output += renderDelegationGraph(response.agents, response.delegationGraph);
|
|
255
|
+
output += '\n';
|
|
256
|
+
output += 'Delegation Edges:\n';
|
|
257
|
+
for (const edge of response.delegationGraph) {
|
|
258
|
+
output += formatDelegationEdge(edge) + '\n';
|
|
259
|
+
}
|
|
260
|
+
output += '\n';
|
|
261
|
+
output += 'Legend: š”ļø = has permission guards, ā ļø = no guards\n\n';
|
|
262
|
+
}
|
|
263
|
+
// Detailed issues
|
|
264
|
+
if (response.issues.length > 0) {
|
|
265
|
+
output += 'āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā\n\n';
|
|
266
|
+
output += 'š SECURITY ISSUES\n\n';
|
|
267
|
+
// Group by category
|
|
268
|
+
const infiniteDelegation = response.issues.filter((i) => i.category === 'infinite-delegation');
|
|
269
|
+
const privilegeEscalation = response.issues.filter((i) => i.category === 'privilege-escalation');
|
|
270
|
+
const dataLeakage = response.issues.filter((i) => i.category === 'data-leakage');
|
|
271
|
+
const unauthorizedHandoff = response.issues.filter((i) => i.category === 'unauthorized-handoff');
|
|
272
|
+
const missingGuards = response.issues.filter((i) => i.category === 'missing-guards');
|
|
273
|
+
if (infiniteDelegation.length > 0) {
|
|
274
|
+
output += 'ā¾ļø INFINITE DELEGATION RISKS\n\n';
|
|
275
|
+
for (const issue of infiniteDelegation) {
|
|
276
|
+
output += formatIssue(issue) + '\n\n';
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
if (privilegeEscalation.length > 0) {
|
|
280
|
+
output += 'ā¬ļø PRIVILEGE ESCALATION RISKS\n\n';
|
|
281
|
+
for (const issue of privilegeEscalation) {
|
|
282
|
+
output += formatIssue(issue) + '\n\n';
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
if (dataLeakage.length > 0) {
|
|
286
|
+
output += 'š§ DATA LEAKAGE RISKS\n\n';
|
|
287
|
+
for (const issue of dataLeakage) {
|
|
288
|
+
output += formatIssue(issue) + '\n\n';
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
if (unauthorizedHandoff.length > 0) {
|
|
292
|
+
output += 'š« UNAUTHORIZED HANDOFF RISKS\n\n';
|
|
293
|
+
for (const issue of unauthorizedHandoff) {
|
|
294
|
+
output += formatIssue(issue) + '\n\n';
|
|
295
|
+
}
|
|
296
|
+
}
|
|
297
|
+
if (missingGuards.length > 0) {
|
|
298
|
+
output += 'š”ļø MISSING GUARDS\n\n';
|
|
299
|
+
for (const issue of missingGuards) {
|
|
300
|
+
output += formatIssue(issue) + '\n\n';
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
}
|
|
304
|
+
// Recommendations
|
|
305
|
+
if (response.recommendations.length > 0) {
|
|
306
|
+
output += 'āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā\n\n';
|
|
307
|
+
output += 'š” RECOMMENDATIONS\n\n';
|
|
308
|
+
for (let i = 0; i < response.recommendations.length; i++) {
|
|
309
|
+
output += `${i + 1}. ${response.recommendations[i]}\n`;
|
|
310
|
+
}
|
|
311
|
+
}
|
|
312
|
+
// Footer
|
|
313
|
+
output += '\nāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā\n';
|
|
314
|
+
output += 'Multi-Agent Security Audit powered by Inkog AI Security Platform\n';
|
|
315
|
+
output += 'Learn more: https://inkog.io/multi-agent-security\n';
|
|
316
|
+
return {
|
|
317
|
+
content: [
|
|
318
|
+
{
|
|
319
|
+
type: 'text',
|
|
320
|
+
text: output,
|
|
321
|
+
},
|
|
322
|
+
],
|
|
323
|
+
};
|
|
324
|
+
}
|
|
325
|
+
catch (error) {
|
|
326
|
+
if (error instanceof InkogAuthError) {
|
|
327
|
+
return {
|
|
328
|
+
content: [
|
|
329
|
+
{
|
|
330
|
+
type: 'text',
|
|
331
|
+
text: 'š API Key Required\n\nGet your free key at https://app.inkog.io',
|
|
332
|
+
},
|
|
333
|
+
],
|
|
334
|
+
isError: true,
|
|
335
|
+
};
|
|
336
|
+
}
|
|
337
|
+
if (error instanceof InkogNetworkError) {
|
|
338
|
+
return {
|
|
339
|
+
content: [
|
|
340
|
+
{
|
|
341
|
+
type: 'text',
|
|
342
|
+
text: `Network error: ${error.message}`,
|
|
343
|
+
},
|
|
344
|
+
],
|
|
345
|
+
isError: true,
|
|
346
|
+
};
|
|
347
|
+
}
|
|
348
|
+
throw error;
|
|
349
|
+
}
|
|
350
|
+
}
|
|
351
|
+
// =============================================================================
|
|
352
|
+
// Tool Definition
|
|
353
|
+
// =============================================================================
|
|
354
|
+
export const auditA2aTool = {
|
|
355
|
+
tool: {
|
|
356
|
+
name: 'inkog_audit_a2a',
|
|
357
|
+
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.',
|
|
358
|
+
inputSchema: {
|
|
359
|
+
type: 'object',
|
|
360
|
+
properties: {
|
|
361
|
+
path: {
|
|
362
|
+
type: 'string',
|
|
363
|
+
description: 'Path to multi-agent system codebase',
|
|
364
|
+
},
|
|
365
|
+
protocol: {
|
|
366
|
+
type: 'string',
|
|
367
|
+
enum: ['a2a', 'crewai', 'langgraph', 'auto-detect'],
|
|
368
|
+
default: 'auto-detect',
|
|
369
|
+
description: 'Multi-agent protocol: a2a (Google), crewai, langgraph, or auto-detect',
|
|
370
|
+
},
|
|
371
|
+
check_delegation_chains: {
|
|
372
|
+
type: 'boolean',
|
|
373
|
+
default: true,
|
|
374
|
+
description: 'Check for infinite delegation loops and unauthorized handoffs',
|
|
375
|
+
},
|
|
376
|
+
},
|
|
377
|
+
required: ['path'],
|
|
378
|
+
},
|
|
379
|
+
},
|
|
380
|
+
handler: auditA2AHandler,
|
|
381
|
+
};
|
|
382
|
+
//# sourceMappingURL=audit-a2a.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"audit-a2a.js","sourceRoot":"","sources":["../../src/tools/audit-a2a.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* inkog_audit_mcp_server Tool
|
|
3
|
+
*
|
|
4
|
+
* P1 - MCP Server Security Auditing (THE ECOSYSTEM PLAY)
|
|
5
|
+
*
|
|
6
|
+
* Security audit any MCP server from the registry or GitHub repository.
|
|
7
|
+
* Checks for:
|
|
8
|
+
* - Excessive permissions (file system, network, exec)
|
|
9
|
+
* - Data exfiltration risks
|
|
10
|
+
* - Input validation gaps
|
|
11
|
+
* - Credential handling issues
|
|
12
|
+
* - Tool permission boundaries
|
|
13
|
+
*/
|
|
14
|
+
import type { ToolDefinition } from './index.js';
|
|
15
|
+
export declare const auditMcpTool: ToolDefinition;
|
|
16
|
+
//# sourceMappingURL=audit-mcp.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"audit-mcp.d.ts","sourceRoot":"","sources":["../../src/tools/audit-mcp.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAMH,OAAO,KAAK,EAAE,cAAc,EAAc,MAAM,YAAY,CAAC;AA6Q7D,eAAO,MAAM,YAAY,EAAE,cAoB1B,CAAC"}
|