mcp-pentester-cli 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.
Files changed (40) hide show
  1. package/LICENSE +75 -0
  2. package/README.md +327 -0
  3. package/dist/index.d.ts +3 -0
  4. package/dist/index.d.ts.map +1 -0
  5. package/dist/index.js +183 -0
  6. package/dist/index.js.map +1 -0
  7. package/dist/mcp-client.d.ts +23 -0
  8. package/dist/mcp-client.d.ts.map +1 -0
  9. package/dist/mcp-client.js +163 -0
  10. package/dist/mcp-client.js.map +1 -0
  11. package/dist/transport/base.d.ts +18 -0
  12. package/dist/transport/base.d.ts.map +1 -0
  13. package/dist/transport/base.js +64 -0
  14. package/dist/transport/base.js.map +1 -0
  15. package/dist/transport/http.d.ts +14 -0
  16. package/dist/transport/http.d.ts.map +1 -0
  17. package/dist/transport/http.js +137 -0
  18. package/dist/transport/http.js.map +1 -0
  19. package/dist/transport/stdio.d.ts +15 -0
  20. package/dist/transport/stdio.d.ts.map +1 -0
  21. package/dist/transport/stdio.js +89 -0
  22. package/dist/transport/stdio.js.map +1 -0
  23. package/dist/transport/websocket.d.ts +15 -0
  24. package/dist/transport/websocket.d.ts.map +1 -0
  25. package/dist/transport/websocket.js +109 -0
  26. package/dist/transport/websocket.js.map +1 -0
  27. package/dist/types.d.ts +103 -0
  28. package/dist/types.d.ts.map +1 -0
  29. package/dist/types.js +3 -0
  30. package/dist/types.js.map +1 -0
  31. package/dist/ui/tui.d.ts +43 -0
  32. package/dist/ui/tui.d.ts.map +1 -0
  33. package/dist/ui/tui.js +872 -0
  34. package/dist/ui/tui.js.map +1 -0
  35. package/examples/http-burp-config.json +9 -0
  36. package/examples/https-burp-config.json +13 -0
  37. package/examples/stdio-config.json +10 -0
  38. package/examples/tor-config.json +9 -0
  39. package/examples/websocket-config.json +9 -0
  40. package/package.json +44 -0
@@ -0,0 +1,109 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.WebSocketTransport = void 0;
7
+ const ws_1 = __importDefault(require("ws"));
8
+ const http_proxy_agent_1 = require("http-proxy-agent");
9
+ const https_proxy_agent_1 = require("https-proxy-agent");
10
+ const socks_proxy_agent_1 = require("socks-proxy-agent");
11
+ const base_1 = require("./base");
12
+ class WebSocketTransport extends base_1.Transport {
13
+ constructor(url, proxyConfig) {
14
+ super();
15
+ this.url = url;
16
+ this.proxyConfig = proxyConfig;
17
+ this.setupAgent();
18
+ }
19
+ setupAgent() {
20
+ if (!this.proxyConfig) {
21
+ return;
22
+ }
23
+ const proxyAuth = this.proxyConfig.auth
24
+ ? `${this.proxyConfig.auth.username}:${this.proxyConfig.auth.password}@`
25
+ : '';
26
+ const proxyProtocol = this.proxyConfig.protocol || 'http';
27
+ if (proxyProtocol === 'socks' || proxyProtocol === 'socks5') {
28
+ const proxyUrl = `socks5://${proxyAuth}${this.proxyConfig.host}:${this.proxyConfig.port}`;
29
+ this.agent = new socks_proxy_agent_1.SocksProxyAgent(proxyUrl);
30
+ }
31
+ else {
32
+ const proxyUrl = `${proxyProtocol}://${proxyAuth}${this.proxyConfig.host}:${this.proxyConfig.port}`;
33
+ const isSecure = this.url.startsWith('wss://');
34
+ if (isSecure) {
35
+ this.agent = new https_proxy_agent_1.HttpsProxyAgent(proxyUrl);
36
+ }
37
+ else {
38
+ this.agent = new http_proxy_agent_1.HttpProxyAgent(proxyUrl);
39
+ }
40
+ }
41
+ }
42
+ async connect() {
43
+ return new Promise((resolve, reject) => {
44
+ const options = {};
45
+ if (this.agent) {
46
+ options.agent = this.agent;
47
+ }
48
+ this.ws = new ws_1.default(this.url, options);
49
+ this.ws.on('open', () => {
50
+ this.emit('connected');
51
+ resolve();
52
+ });
53
+ this.ws.on('message', (data) => {
54
+ this.handleMessage(data.toString());
55
+ });
56
+ this.ws.on('error', (error) => {
57
+ this.emit('error', error);
58
+ reject(error);
59
+ });
60
+ this.ws.on('close', () => {
61
+ this.emit('disconnected');
62
+ });
63
+ });
64
+ }
65
+ async disconnect() {
66
+ if (this.ws) {
67
+ this.ws.close();
68
+ this.ws = undefined;
69
+ }
70
+ }
71
+ async send(data) {
72
+ if (!this.ws || this.ws.readyState !== ws_1.default.OPEN) {
73
+ throw new Error('WebSocket not connected');
74
+ }
75
+ const message = JSON.stringify(data);
76
+ this.emit('send', data);
77
+ return new Promise((resolve, reject) => {
78
+ this.ws.send(message, (error) => {
79
+ if (error) {
80
+ reject(error);
81
+ }
82
+ else {
83
+ resolve();
84
+ }
85
+ });
86
+ });
87
+ }
88
+ handleMessage(data) {
89
+ try {
90
+ const message = JSON.parse(data);
91
+ this.emit('receive', message);
92
+ if ('result' in message || 'error' in message) {
93
+ this.handleResponse(message);
94
+ }
95
+ else if ('method' in message && !('id' in message)) {
96
+ this.handleNotification(message);
97
+ }
98
+ else if ('method' in message && 'id' in message) {
99
+ // This is a request from the server
100
+ this.emit('request', message);
101
+ }
102
+ }
103
+ catch (error) {
104
+ this.emit('error', new Error(`Failed to parse WebSocket message: ${data}`));
105
+ }
106
+ }
107
+ }
108
+ exports.WebSocketTransport = WebSocketTransport;
109
+ //# sourceMappingURL=websocket.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"websocket.js","sourceRoot":"","sources":["../../src/transport/websocket.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,103 @@
1
+ export interface JsonRpcRequest {
2
+ jsonrpc: '2.0';
3
+ method: string;
4
+ params?: any;
5
+ id?: string | number;
6
+ }
7
+ export interface JsonRpcResponse {
8
+ jsonrpc: '2.0';
9
+ result?: any;
10
+ error?: JsonRpcError;
11
+ id: string | number | null;
12
+ }
13
+ export interface JsonRpcError {
14
+ code: number;
15
+ message: string;
16
+ data?: any;
17
+ }
18
+ export interface JsonRpcNotification {
19
+ jsonrpc: '2.0';
20
+ method: string;
21
+ params?: any;
22
+ }
23
+ export interface MCPTool {
24
+ name: string;
25
+ description?: string;
26
+ inputSchema: {
27
+ type: string;
28
+ properties?: Record<string, any>;
29
+ required?: string[];
30
+ };
31
+ }
32
+ export interface MCPResource {
33
+ uri: string;
34
+ name: string;
35
+ description?: string;
36
+ mimeType?: string;
37
+ }
38
+ export interface MCPPrompt {
39
+ name: string;
40
+ description?: string;
41
+ arguments?: Array<{
42
+ name: string;
43
+ description?: string;
44
+ required?: boolean;
45
+ }>;
46
+ }
47
+ export interface MCPServerCapabilities {
48
+ tools?: {
49
+ listChanged?: boolean;
50
+ };
51
+ resources?: {
52
+ subscribe?: boolean;
53
+ listChanged?: boolean;
54
+ };
55
+ prompts?: {
56
+ listChanged?: boolean;
57
+ };
58
+ logging?: {};
59
+ }
60
+ export interface MCPImplementation {
61
+ name: string;
62
+ version: string;
63
+ }
64
+ export interface MCPInitializeResult {
65
+ protocolVersion: string;
66
+ capabilities: MCPServerCapabilities;
67
+ serverInfo: MCPImplementation;
68
+ }
69
+ export type TransportType = 'stdio' | 'http' | 'https' | 'ws' | 'wss';
70
+ export interface TransportConfig {
71
+ type: TransportType;
72
+ url?: string;
73
+ command?: string;
74
+ args?: string[];
75
+ env?: Record<string, string>;
76
+ proxy?: ProxyConfig;
77
+ }
78
+ export interface ProxyConfig {
79
+ host: string;
80
+ port: number;
81
+ protocol?: 'http' | 'https' | 'socks' | 'socks5';
82
+ auth?: {
83
+ username: string;
84
+ password: string;
85
+ };
86
+ }
87
+ export interface TrafficLog {
88
+ timestamp: Date;
89
+ direction: 'sent' | 'received';
90
+ transport: TransportType;
91
+ data: JsonRpcRequest | JsonRpcResponse | JsonRpcNotification;
92
+ raw?: string;
93
+ }
94
+ export interface MCPClientState {
95
+ connected: boolean;
96
+ serverInfo?: MCPImplementation;
97
+ capabilities?: MCPServerCapabilities;
98
+ tools: MCPTool[];
99
+ resources: MCPResource[];
100
+ prompts: MCPPrompt[];
101
+ trafficLog: TrafficLog[];
102
+ }
103
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js ADDED
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,43 @@
1
+ import { MCPClient } from '../mcp-client';
2
+ export declare class TUI {
3
+ private screen;
4
+ private layout;
5
+ private currentView;
6
+ private client?;
7
+ private trafficLines;
8
+ private trafficPairs;
9
+ private activePanel;
10
+ private pendingRequests;
11
+ private currentPopupContent;
12
+ private showRawInPopup;
13
+ constructor();
14
+ private showSplashScreen;
15
+ private createLayout;
16
+ private setupKeyBindings;
17
+ setClient(client: MCPClient): void;
18
+ private updatePanelHighlight;
19
+ private showTools;
20
+ private showResources;
21
+ private showPrompts;
22
+ private showTrafficLog;
23
+ private updateCurrentView;
24
+ private displayTools;
25
+ private displayResources;
26
+ private displayPrompts;
27
+ private displayTraffic;
28
+ private escapeBlessedTags;
29
+ private formatResultPreview;
30
+ private addTrafficPair;
31
+ private addTrafficLine;
32
+ render(): void;
33
+ prompt(label: string): Promise<string>;
34
+ private handleMainSelection;
35
+ private executeTool;
36
+ private readResource;
37
+ private usePrompt;
38
+ private showTrafficDetail;
39
+ private formatXML;
40
+ private formatForDisplay;
41
+ private showMessage;
42
+ }
43
+ //# sourceMappingURL=tui.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tui.d.ts","sourceRoot":"","sources":["../../src/ui/tui.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAG1C,qBAAa,GAAG;IACd,OAAO,CAAC,MAAM,CAAyB;IACvC,OAAO,CAAC,MAAM,CAMZ;IAEF,OAAO,CAAC,WAAW,CAA0D;IAC7E,OAAO,CAAC,MAAM,CAAC,CAAY;IAC3B,OAAO,CAAC,YAAY,CAAgB;IACpC,OAAO,CAAC,YAAY,CAAoE;IACxF,OAAO,CAAC,WAAW,CAA6C;IAChE,OAAO,CAAC,eAAe,CAAmC;IAC1D,OAAO,CAAC,mBAAmB,CAAgF;IAC3G,OAAO,CAAC,cAAc,CAAS;;IAY/B,OAAO,CAAC,gBAAgB;IA6CxB,OAAO,CAAC,YAAY;IAkIpB,OAAO,CAAC,gBAAgB;IA6ExB,SAAS,CAAC,MAAM,EAAE,SAAS;IA+F3B,OAAO,CAAC,oBAAoB;IAoB5B,OAAO,CAAC,SAAS;IAKjB,OAAO,CAAC,aAAa;IAKrB,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,iBAAiB;IAqBzB,OAAO,CAAC,YAAY;IAmBpB,OAAO,CAAC,gBAAgB;IAmBxB,OAAO,CAAC,cAAc;IAmBtB,OAAO,CAAC,cAAc;IAmEtB,OAAO,CAAC,iBAAiB;IAKzB,OAAO,CAAC,mBAAmB;IAgB3B,OAAO,CAAC,cAAc;IAetB,OAAO,CAAC,cAAc;IAQtB,MAAM;IAWA,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YA2B9B,mBAAmB;YAsCnB,WAAW;YA8BX,YAAY;YA2BZ,SAAS;YAqBT,iBAAiB;IAyE/B,OAAO,CAAC,SAAS;IAiCjB,OAAO,CAAC,gBAAgB;IA4CxB,OAAO,CAAC,WAAW;CAuEpB"}