@socketsecurity/mcp 0.0.8 → 0.0.10
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/README.md +15 -9
- package/index.d.ts +3 -0
- package/index.d.ts.map +1 -0
- package/{build/index.js → index.js} +80 -103
- package/mock-client/debug-client.d.ts +3 -0
- package/mock-client/debug-client.d.ts.map +1 -0
- package/{build/mock-client → mock-client}/debug-client.js +6 -10
- package/mock-client/http-client.d.ts +3 -0
- package/mock-client/http-client.d.ts.map +1 -0
- package/{build/mock-client → mock-client}/http-client.js +11 -23
- package/mock-client/stdio-client.d.ts +3 -0
- package/mock-client/stdio-client.d.ts.map +1 -0
- package/{build/mock-client → mock-client}/stdio-client.js +7 -8
- package/package.json +38 -15
- package/build/index.js.map +0 -1
- package/build/mock-client/debug-client.js.map +0 -1
- package/build/mock-client/http-client.js.map +0 -1
- package/build/mock-client/stdio-client.js.map +0 -1
package/README.md
CHANGED
|
@@ -81,7 +81,7 @@ Alternatively, you can manually add it to your VS Code MCP configuration in `.vs
|
|
|
81
81
|
{
|
|
82
82
|
"servers": {
|
|
83
83
|
"socket-mcp": {
|
|
84
|
-
"type": "http",
|
|
84
|
+
"type": "http",
|
|
85
85
|
"url": "https://mcp.socket.dev/"
|
|
86
86
|
}
|
|
87
87
|
}
|
|
@@ -148,7 +148,7 @@ For local deployment, you have two options:
|
|
|
148
148
|
|
|
149
149
|
Click a button below to install the self-hosted stdio server in your favorite AI assistant.
|
|
150
150
|
|
|
151
|
-
[](https://vscode.dev/redirect/mcp/install?name=socket-mcp&config={"command":"npx","args":["@socketsecurity/mcp@latest"],"type":"stdio"})
|
|
151
|
+
[](https://vscode.dev/redirect/mcp/install?name=socket-mcp&config={"command":"npx","args":["@socketsecurity/mcp@latest"],"type":"stdio"})
|
|
152
152
|
[](https://cursor.com/install-mcp?name=socket-mcp-stdio&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyJAc29ja2V0c2VjdXJpdHkvbWNwQGxhdGVzdCJdLCJlbnYiOnsiU09DS0VUX0FQSV9LRVkiOiJ5b3VyLWFwaS1rZXktaGVyZSJ9fQ==)
|
|
153
153
|
|
|
154
154
|
Claude Code (stdio mode) can be set up with the following command:
|
|
@@ -220,7 +220,7 @@ The `depscore` tool allows AI assistants to query the Socket API for dependency
|
|
|
220
220
|
"version": "4.18.2"
|
|
221
221
|
},
|
|
222
222
|
{
|
|
223
|
-
"ecosystem": "pypi",
|
|
223
|
+
"ecosystem": "pypi",
|
|
224
224
|
"depname": "fastapi",
|
|
225
225
|
"version": "0.100.0"
|
|
226
226
|
}
|
|
@@ -241,7 +241,7 @@ pkg:pypi/fastapi@0.100.0: supply_chain: 1.0, quality: 0.95, maintenance: 0.98, v
|
|
|
241
241
|
- "Analyze the security of my package.json dependencies"
|
|
242
242
|
- "What are the vulnerability scores for react, lodash, and axios?"
|
|
243
243
|
|
|
244
|
-
2. **Get comprehensive security insights** including supply chain, quality, maintenance, vulnerability, and license scores.
|
|
244
|
+
2. **Get comprehensive security insights** including supply chain, quality, maintenance, vulnerability, and license scores.
|
|
245
245
|
|
|
246
246
|
### Adjust tool usage with custom rules
|
|
247
247
|
|
|
@@ -317,7 +317,14 @@ npm install
|
|
|
317
317
|
|
|
318
318
|
#### Build
|
|
319
319
|
|
|
320
|
-
|
|
320
|
+
This project is a directly runnable Node.js project using [Type stripping](https://nodejs.org/docs/latest/api/typescript.html).
|
|
321
|
+
If you are on Node.js 22, run with `node --experimental-strip-types index.ts`.
|
|
322
|
+
On any later versions of Node.js, you can simply run `node index.ts`.
|
|
323
|
+
In either version you can also run the npm run scripts which include the correct flags.
|
|
324
|
+
|
|
325
|
+
The js files will automatically be build when running `npm publish`, and cleaned up afterwards with `npm run clean`.
|
|
326
|
+
|
|
327
|
+
If you want to preview the build you can run:
|
|
321
328
|
|
|
322
329
|
```bash
|
|
323
330
|
npm run build
|
|
@@ -329,13 +336,13 @@ To run the Socket MCP server from source:
|
|
|
329
336
|
|
|
330
337
|
```bash
|
|
331
338
|
export SOCKET_API_KEY=your_api_key_here
|
|
332
|
-
node
|
|
339
|
+
node --experimental-strip-types index.ts
|
|
333
340
|
```
|
|
334
341
|
|
|
335
342
|
Or in HTTP mode:
|
|
336
343
|
|
|
337
344
|
```bash
|
|
338
|
-
MCP_HTTP_MODE=true SOCKET_API_KEY=your_api_key_here node
|
|
345
|
+
MCP_HTTP_MODE=true SOCKET_API_KEY=your_api_key_here node --experimental-strip-types index.ts --http
|
|
339
346
|
```
|
|
340
347
|
|
|
341
348
|
## 🔧 Troubleshooting
|
|
@@ -358,7 +365,7 @@ MCP_HTTP_MODE=true SOCKET_API_KEY=your_api_key_here node build/index.js --http
|
|
|
358
365
|
- Try regenerating your API key from the Socket dashboard
|
|
359
366
|
|
|
360
367
|
**Q: AI assistant can't find the depscore tool**
|
|
361
|
-
- Restart your MCP client after configuration changes
|
|
368
|
+
- Restart your MCP client after configuration changes
|
|
362
369
|
- Verify the server configuration is saved correctly
|
|
363
370
|
- Check that the MCP server is running (for local deployments)
|
|
364
371
|
|
|
@@ -367,4 +374,3 @@ MCP_HTTP_MODE=true SOCKET_API_KEY=your_api_key_here node build/index.js --http
|
|
|
367
374
|
- 📖 [Socket Documentation](https://docs.socket.dev)
|
|
368
375
|
- 🐛 [Report Issues](https://github.com/SocketDev/socket-mcp/issues)
|
|
369
376
|
- 💬 [Community Support](https://github.com/SocketDev/socket-mcp/discussions)
|
|
370
|
-
|
package/index.d.ts
ADDED
package/index.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":""}
|
|
@@ -1,44 +1,39 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
import { McpServer } from
|
|
3
|
-
import { StdioServerTransport } from
|
|
4
|
-
import { StreamableHTTPServerTransport } from
|
|
5
|
-
import { z } from
|
|
6
|
-
import
|
|
1
|
+
#!/usr/bin/env node --experimental-strip-types
|
|
2
|
+
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
3
|
+
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
|
|
4
|
+
import { StreamableHTTPServerTransport } from '@modelcontextprotocol/sdk/server/streamableHttp.js';
|
|
5
|
+
import { z } from 'zod';
|
|
6
|
+
import pino from 'pino';
|
|
7
7
|
import readline from 'readline';
|
|
8
|
-
import {
|
|
9
|
-
import { dirname, join } from 'path';
|
|
8
|
+
import { join } from 'path';
|
|
10
9
|
import { readFileSync } from 'fs';
|
|
10
|
+
import { tmpdir } from 'os';
|
|
11
11
|
import { createServer } from 'http';
|
|
12
12
|
import { randomUUID } from 'crypto';
|
|
13
|
-
import { isInitializeRequest } from
|
|
14
|
-
const
|
|
15
|
-
const
|
|
16
|
-
|
|
17
|
-
const packageJson = JSON.parse(readFileSync(join(__dirname, '../package.json'), 'utf8'));
|
|
18
|
-
const VERSION = packageJson.version || "0.0.1";
|
|
19
|
-
// Configure pino logger
|
|
13
|
+
import { isInitializeRequest } from '@modelcontextprotocol/sdk/types.js';
|
|
14
|
+
const __dirname = import.meta.dirname;
|
|
15
|
+
const packageJson = JSON.parse(readFileSync(join(__dirname, './package.json'), 'utf8'));
|
|
16
|
+
const VERSION = packageJson.version || '0.0.1';
|
|
20
17
|
const logger = pino({
|
|
21
18
|
level: 'info',
|
|
22
19
|
transport: {
|
|
23
20
|
targets: [
|
|
24
21
|
{
|
|
25
22
|
target: 'pino/file',
|
|
26
|
-
options: { destination: '
|
|
23
|
+
options: { destination: join(tmpdir(), 'socket-mcp-error.log') },
|
|
27
24
|
level: 'error'
|
|
28
25
|
},
|
|
29
26
|
{
|
|
30
27
|
target: 'pino/file',
|
|
31
|
-
options: { destination: '
|
|
28
|
+
options: { destination: join(tmpdir(), 'socket-mcp.log') },
|
|
32
29
|
level: 'info'
|
|
33
30
|
}
|
|
34
31
|
]
|
|
35
32
|
}
|
|
36
33
|
});
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
: "https://api.socket.dev/v0/purl?alerts=false&compact=false&fixable=false&licenseattrib=false&licensedetails=false";
|
|
41
|
-
// Function to get API key interactively (only for HTTP mode)
|
|
34
|
+
const SOCKET_API_URL = process.env['SOCKET_DEBUG'] === 'true'
|
|
35
|
+
? 'http://localhost:8866/v0/purl?alerts=false&compact=false&fixable=false&licenseattrib=false&licensedetails=false'
|
|
36
|
+
: 'https://api.socket.dev/v0/purl?alerts=false&compact=false&fixable=false&licenseattrib=false&licensedetails=false';
|
|
42
37
|
async function getApiKeyInteractively() {
|
|
43
38
|
const rl = readline.createInterface({
|
|
44
39
|
input: process.stdin,
|
|
@@ -51,45 +46,41 @@ async function getApiKeyInteractively() {
|
|
|
51
46
|
});
|
|
52
47
|
});
|
|
53
48
|
if (!apiKey) {
|
|
54
|
-
logger.error(
|
|
49
|
+
logger.error('No API key provided');
|
|
55
50
|
process.exit(1);
|
|
56
51
|
}
|
|
57
52
|
return apiKey;
|
|
58
53
|
}
|
|
59
|
-
|
|
60
|
-
let SOCKET_API_KEY = process.env.SOCKET_API_KEY || "";
|
|
61
|
-
// Transport management
|
|
54
|
+
let SOCKET_API_KEY = process.env['SOCKET_API_KEY'] || '';
|
|
62
55
|
const transports = {};
|
|
63
|
-
// Create server instance
|
|
64
56
|
const server = new McpServer({
|
|
65
|
-
name:
|
|
57
|
+
name: 'socket',
|
|
66
58
|
version: VERSION,
|
|
67
|
-
description:
|
|
59
|
+
description: 'Socket MCP server',
|
|
68
60
|
capabilities: {
|
|
69
61
|
resources: {},
|
|
70
62
|
tools: {},
|
|
71
63
|
streaming: {}
|
|
72
64
|
},
|
|
73
65
|
});
|
|
74
|
-
server.tool(
|
|
66
|
+
server.tool('depscore', "Get the dependency score of packages with the `depscore` tool from Socket. Use 'unknown' for version if not known. Use this tool to scan dependencies for their quality and security on existing code or when code is generated. Stop generating code and ask the user how to proceed when any of the scores are low. When checking dependencies, make sure to also check the imports in the code, not just the manifest files (pyproject.toml, package.json, etc).", {
|
|
75
67
|
packages: z.array(z.object({
|
|
76
|
-
ecosystem: z.string().describe(
|
|
77
|
-
depname: z.string().describe(
|
|
78
|
-
version: z.string().describe("The version of the dependency, use 'unknown' if not known").default(
|
|
79
|
-
})).describe(
|
|
68
|
+
ecosystem: z.string().describe('The package ecosystem (e.g., npm, pypi)').default('npm'),
|
|
69
|
+
depname: z.string().describe('The name of the dependency'),
|
|
70
|
+
version: z.string().describe("The version of the dependency, use 'unknown' if not known").default('unknown'),
|
|
71
|
+
})).describe('Array of packages to check'),
|
|
80
72
|
}, async ({ packages }) => {
|
|
81
73
|
logger.info(`Received request for ${packages.length} packages`);
|
|
82
74
|
const SOCKET_HEADERS = {
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
75
|
+
'user-agent': `socket-mcp/${VERSION}`,
|
|
76
|
+
accept: 'application/x-ndjson',
|
|
77
|
+
'content-type': 'application/json',
|
|
78
|
+
authorization: `Bearer ${SOCKET_API_KEY}`
|
|
87
79
|
};
|
|
88
|
-
// Build components array for the API request
|
|
89
80
|
const components = packages.map(pkg => {
|
|
90
|
-
const cleanedVersion = pkg.version.replace(/[\^~]/g, '');
|
|
81
|
+
const cleanedVersion = pkg.version.replace(/[\^~]/g, '');
|
|
91
82
|
let purl;
|
|
92
|
-
if (cleanedVersion ===
|
|
83
|
+
if (cleanedVersion === '1.0.0' || cleanedVersion === 'unknown' || !cleanedVersion) {
|
|
93
84
|
purl = `pkg:${pkg.ecosystem}/${pkg.depname}`;
|
|
94
85
|
}
|
|
95
86
|
else {
|
|
@@ -99,7 +90,6 @@ server.tool("depscore", "Get the dependency score of packages with the `depscore
|
|
|
99
90
|
return { purl };
|
|
100
91
|
});
|
|
101
92
|
try {
|
|
102
|
-
// Make a POST request to the Socket API with all packages
|
|
103
93
|
const response = await fetch(SOCKET_API_URL, {
|
|
104
94
|
method: 'POST',
|
|
105
95
|
headers: SOCKET_HEADERS,
|
|
@@ -110,39 +100,41 @@ server.tool("depscore", "Get the dependency score of packages with the `depscore
|
|
|
110
100
|
const errorMsg = `Error processing packages: [${response.status}] ${responseText}`;
|
|
111
101
|
logger.error(errorMsg);
|
|
112
102
|
return {
|
|
113
|
-
content: [{ type:
|
|
103
|
+
content: [{ type: 'text', text: errorMsg }],
|
|
114
104
|
isError: true
|
|
115
105
|
};
|
|
116
106
|
}
|
|
117
107
|
else if (!responseText.trim()) {
|
|
118
|
-
const errorMsg =
|
|
108
|
+
const errorMsg = 'No packages were found.';
|
|
119
109
|
logger.error(errorMsg);
|
|
120
110
|
return {
|
|
121
|
-
content: [{ type:
|
|
111
|
+
content: [{ type: 'text', text: errorMsg }],
|
|
122
112
|
isError: true
|
|
123
113
|
};
|
|
124
114
|
}
|
|
125
115
|
try {
|
|
126
|
-
|
|
127
|
-
let results = [];
|
|
116
|
+
const results = [];
|
|
128
117
|
if ((response.headers.get('content-type') || '').includes('x-ndjson')) {
|
|
129
118
|
const jsonLines = responseText.split('\n')
|
|
130
119
|
.filter(line => line.trim())
|
|
131
120
|
.map(line => JSON.parse(line));
|
|
132
121
|
if (!jsonLines.length) {
|
|
133
|
-
const errorMsg =
|
|
122
|
+
const errorMsg = 'No valid JSON objects found in NDJSON response';
|
|
134
123
|
return {
|
|
135
|
-
content: [{ type:
|
|
124
|
+
content: [{ type: 'text', text: errorMsg }],
|
|
136
125
|
isError: true
|
|
137
126
|
};
|
|
138
127
|
}
|
|
139
|
-
// Process each result
|
|
140
128
|
for (const jsonData of jsonLines) {
|
|
141
|
-
|
|
129
|
+
const purl = `pkg:${jsonData.type || 'unknown'}/${jsonData.name || 'unknown'}@${jsonData.version || 'unknown'}`;
|
|
142
130
|
if (jsonData.score && jsonData.score.overall !== undefined) {
|
|
143
131
|
const scoreEntries = Object.entries(jsonData.score)
|
|
144
|
-
.filter(([key]) => key !==
|
|
145
|
-
.map(([key, value]) =>
|
|
132
|
+
.filter(([key]) => key !== 'overall' && key !== 'uuid')
|
|
133
|
+
.map(([key, value]) => {
|
|
134
|
+
const numValue = Number(value);
|
|
135
|
+
const displayValue = numValue <= 1 ? Math.round(numValue * 100) : numValue;
|
|
136
|
+
return `${key}: ${displayValue}`;
|
|
137
|
+
})
|
|
146
138
|
.join(', ');
|
|
147
139
|
results.push(`${purl}: ${scoreEntries}`);
|
|
148
140
|
}
|
|
@@ -153,11 +145,15 @@ server.tool("depscore", "Get the dependency score of packages with the `depscore
|
|
|
153
145
|
}
|
|
154
146
|
else {
|
|
155
147
|
const jsonData = JSON.parse(responseText);
|
|
156
|
-
|
|
148
|
+
const purl = `pkg:${jsonData.type || 'unknown'}/${jsonData.name || 'unknown'}@${jsonData.version || 'unknown'}`;
|
|
157
149
|
if (jsonData.score && jsonData.score.overall !== undefined) {
|
|
158
150
|
const scoreEntries = Object.entries(jsonData.score)
|
|
159
|
-
.filter(([key]) => key !==
|
|
160
|
-
.map(([key, value]) =>
|
|
151
|
+
.filter(([key]) => key !== 'overall' && key !== 'uuid')
|
|
152
|
+
.map(([key, value]) => {
|
|
153
|
+
const numValue = Number(value);
|
|
154
|
+
const displayValue = numValue <= 1 ? Math.round(numValue * 100) : numValue;
|
|
155
|
+
return `${key}: ${displayValue}`;
|
|
156
|
+
})
|
|
161
157
|
.join(', ');
|
|
162
158
|
results.push(`${purl}: ${scoreEntries}`);
|
|
163
159
|
}
|
|
@@ -165,10 +161,10 @@ server.tool("depscore", "Get the dependency score of packages with the `depscore
|
|
|
165
161
|
return {
|
|
166
162
|
content: [
|
|
167
163
|
{
|
|
168
|
-
type:
|
|
164
|
+
type: 'text',
|
|
169
165
|
text: results.length > 0
|
|
170
166
|
? `Dependency scores:\n${results.join('\n')}`
|
|
171
|
-
:
|
|
167
|
+
: 'No scores found for the provided packages'
|
|
172
168
|
}
|
|
173
169
|
]
|
|
174
170
|
};
|
|
@@ -178,7 +174,7 @@ server.tool("depscore", "Get the dependency score of packages with the `depscore
|
|
|
178
174
|
const errorMsg = `JSON parsing error: ${error.message} -- Response: ${responseText}`;
|
|
179
175
|
logger.error(errorMsg);
|
|
180
176
|
return {
|
|
181
|
-
content: [{ type:
|
|
177
|
+
content: [{ type: 'text', text: 'Error parsing response from Socket API' }],
|
|
182
178
|
isError: true
|
|
183
179
|
};
|
|
184
180
|
}
|
|
@@ -188,33 +184,27 @@ server.tool("depscore", "Get the dependency score of packages with the `depscore
|
|
|
188
184
|
const errorMsg = `Error processing packages: ${error.message}`;
|
|
189
185
|
logger.error(errorMsg);
|
|
190
186
|
return {
|
|
191
|
-
content: [{ type:
|
|
187
|
+
content: [{ type: 'text', text: 'Error connecting to Socket API' }],
|
|
192
188
|
isError: true
|
|
193
189
|
};
|
|
194
190
|
}
|
|
195
191
|
});
|
|
196
|
-
|
|
197
|
-
const
|
|
198
|
-
const port = parseInt(process.env.MCP_PORT || '3000', 10);
|
|
199
|
-
// Validate API key - in stdio mode, we can't prompt interactively
|
|
192
|
+
const useHttp = process.env['MCP_HTTP_MODE'] === 'true' || process.argv.includes('--http');
|
|
193
|
+
const port = parseInt(process.env['MCP_PORT'] || '3000', 10);
|
|
200
194
|
if (!SOCKET_API_KEY) {
|
|
201
195
|
if (useHttp) {
|
|
202
|
-
|
|
203
|
-
logger.error("SOCKET_API_KEY environment variable is not set");
|
|
196
|
+
logger.error('SOCKET_API_KEY environment variable is not set');
|
|
204
197
|
SOCKET_API_KEY = await getApiKeyInteractively();
|
|
205
198
|
}
|
|
206
199
|
else {
|
|
207
|
-
|
|
208
|
-
logger.error(
|
|
209
|
-
logger.error("Please set the SOCKET_API_KEY environment variable and try again");
|
|
200
|
+
logger.error('SOCKET_API_KEY environment variable is required in stdio mode');
|
|
201
|
+
logger.error('Please set the SOCKET_API_KEY environment variable and try again');
|
|
210
202
|
process.exit(1);
|
|
211
203
|
}
|
|
212
204
|
}
|
|
213
205
|
if (useHttp) {
|
|
214
|
-
// HTTP mode with Server-Sent Events
|
|
215
206
|
logger.info(`Starting HTTP server on port ${port}`);
|
|
216
207
|
const httpServer = createServer(async (req, res) => {
|
|
217
|
-
// Validate Origin header as required by MCP spec
|
|
218
208
|
const origin = req.headers.origin;
|
|
219
209
|
const allowedOrigins = [
|
|
220
210
|
'http://localhost:3000',
|
|
@@ -233,7 +223,6 @@ if (useHttp) {
|
|
|
233
223
|
}));
|
|
234
224
|
return;
|
|
235
225
|
}
|
|
236
|
-
// Set CORS headers for valid origins
|
|
237
226
|
if (origin && isValidOrigin) {
|
|
238
227
|
res.setHeader('Access-Control-Allow-Origin', origin);
|
|
239
228
|
}
|
|
@@ -248,8 +237,20 @@ if (useHttp) {
|
|
|
248
237
|
res.end();
|
|
249
238
|
return;
|
|
250
239
|
}
|
|
251
|
-
|
|
252
|
-
|
|
240
|
+
let url;
|
|
241
|
+
try {
|
|
242
|
+
url = new URL(req.url, `http://localhost:${port}`);
|
|
243
|
+
}
|
|
244
|
+
catch (error) {
|
|
245
|
+
logger.warn(`Invalid URL in request: ${req.url} - ${error}`);
|
|
246
|
+
res.writeHead(400, { 'Content-Type': 'application/json' });
|
|
247
|
+
res.end(JSON.stringify({
|
|
248
|
+
jsonrpc: '2.0',
|
|
249
|
+
error: { code: -32000, message: 'Bad Request: Invalid URL' },
|
|
250
|
+
id: null
|
|
251
|
+
}));
|
|
252
|
+
return;
|
|
253
|
+
}
|
|
253
254
|
if (url.pathname === '/health') {
|
|
254
255
|
res.writeHead(200, { 'Content-Type': 'application/json' });
|
|
255
256
|
res.end(JSON.stringify({
|
|
@@ -262,7 +263,6 @@ if (useHttp) {
|
|
|
262
263
|
}
|
|
263
264
|
if (url.pathname === '/') {
|
|
264
265
|
if (req.method === 'POST') {
|
|
265
|
-
// Validate Accept header as required by MCP spec
|
|
266
266
|
const acceptHeader = req.headers.accept;
|
|
267
267
|
if (!acceptHeader || (!acceptHeader.includes('application/json') && !acceptHeader.includes('text/event-stream'))) {
|
|
268
268
|
logger.warn(`Invalid Accept header: ${acceptHeader}`);
|
|
@@ -274,14 +274,12 @@ if (useHttp) {
|
|
|
274
274
|
}));
|
|
275
275
|
return;
|
|
276
276
|
}
|
|
277
|
-
// Handle JSON-RPC messages
|
|
278
277
|
let body = '';
|
|
279
|
-
req.on('data', chunk => body += chunk);
|
|
278
|
+
req.on('data', chunk => (body += chunk));
|
|
280
279
|
req.on('end', async () => {
|
|
281
280
|
try {
|
|
282
281
|
const jsonData = JSON.parse(body);
|
|
283
282
|
const sessionId = req.headers['mcp-session-id'];
|
|
284
|
-
// Validate session ID format if provided (must contain only visible ASCII characters)
|
|
285
283
|
if (sessionId && !/^[\x21-\x7E]+$/.test(sessionId)) {
|
|
286
284
|
logger.warn(`Invalid session ID format: ${sessionId}`);
|
|
287
285
|
res.writeHead(400, { 'Content-Type': 'application/json' });
|
|
@@ -294,11 +292,9 @@ if (useHttp) {
|
|
|
294
292
|
}
|
|
295
293
|
let transport;
|
|
296
294
|
if (sessionId && transports[sessionId]) {
|
|
297
|
-
// Reuse existing transport
|
|
298
295
|
transport = transports[sessionId];
|
|
299
296
|
}
|
|
300
297
|
else if (!sessionId) {
|
|
301
|
-
// Create new session (either for initialize request or fallback)
|
|
302
298
|
const newSessionId = randomUUID();
|
|
303
299
|
const isInit = isInitializeRequest(jsonData);
|
|
304
300
|
if (isInit) {
|
|
@@ -312,7 +308,6 @@ if (useHttp) {
|
|
|
312
308
|
onsessioninitialized: (id) => {
|
|
313
309
|
transports[id] = transport;
|
|
314
310
|
logger.info(`Session initialized: ${id}`);
|
|
315
|
-
// Set session ID in response headers as required by MCP spec
|
|
316
311
|
res.setHeader('mcp-session-id', id);
|
|
317
312
|
}
|
|
318
313
|
});
|
|
@@ -328,20 +323,18 @@ if (useHttp) {
|
|
|
328
323
|
return;
|
|
329
324
|
}
|
|
330
325
|
else {
|
|
331
|
-
// Invalid request - session ID provided but not found
|
|
332
326
|
logger.error(`Invalid session ID: ${sessionId}. Active sessions count: ${Object.keys(transports).length}`);
|
|
333
327
|
res.writeHead(400);
|
|
334
328
|
res.end(JSON.stringify({
|
|
335
329
|
jsonrpc: '2.0',
|
|
336
330
|
error: {
|
|
337
331
|
code: -32000,
|
|
338
|
-
message:
|
|
332
|
+
message: 'Bad Request: Invalid session ID. Please initialize a new session first.'
|
|
339
333
|
},
|
|
340
334
|
id: jsonData.id || null
|
|
341
335
|
}));
|
|
342
336
|
return;
|
|
343
337
|
}
|
|
344
|
-
// Handle request with existing transport
|
|
345
338
|
await transport.handleRequest(req, res, jsonData);
|
|
346
339
|
}
|
|
347
340
|
catch (error) {
|
|
@@ -358,7 +351,6 @@ if (useHttp) {
|
|
|
358
351
|
});
|
|
359
352
|
}
|
|
360
353
|
else if (req.method === 'GET') {
|
|
361
|
-
// Validate Accept header for SSE as required by MCP spec
|
|
362
354
|
const acceptHeader = req.headers.accept;
|
|
363
355
|
if (!acceptHeader || !acceptHeader.includes('text/event-stream')) {
|
|
364
356
|
logger.warn(`GET request without text/event-stream Accept header: ${acceptHeader}`);
|
|
@@ -370,9 +362,7 @@ if (useHttp) {
|
|
|
370
362
|
}));
|
|
371
363
|
return;
|
|
372
364
|
}
|
|
373
|
-
// Handle SSE streams
|
|
374
365
|
const sessionId = req.headers['mcp-session-id'];
|
|
375
|
-
// Validate session ID format
|
|
376
366
|
if (sessionId && !/^[\x21-\x7E]+$/.test(sessionId)) {
|
|
377
367
|
logger.warn(`Invalid session ID format in GET request: ${sessionId}`);
|
|
378
368
|
res.writeHead(400, { 'Content-Type': 'application/json' });
|
|
@@ -393,19 +383,14 @@ if (useHttp) {
|
|
|
393
383
|
}));
|
|
394
384
|
return;
|
|
395
385
|
}
|
|
396
|
-
// Check for Last-Event-ID header for resumability (optional MCP feature)
|
|
397
386
|
const lastEventId = req.headers['last-event-id'];
|
|
398
387
|
if (lastEventId) {
|
|
399
388
|
logger.info(`SSE resumability requested with Last-Event-ID: ${lastEventId}`);
|
|
400
|
-
// Note: Actual resumability implementation would require message storage
|
|
401
|
-
// For now, we log the request but don't implement full resumability
|
|
402
389
|
}
|
|
403
390
|
logger.info(`Opening SSE stream for session: ${sessionId}`);
|
|
404
|
-
// Prevent connection timeout and keep it alive
|
|
405
391
|
req.socket?.setTimeout(0);
|
|
406
392
|
req.socket?.setKeepAlive(true, 30000);
|
|
407
393
|
let streamClosed = false;
|
|
408
|
-
// Handle client disconnection gracefully
|
|
409
394
|
req.on('close', () => {
|
|
410
395
|
streamClosed = true;
|
|
411
396
|
logger.info(`Client disconnected SSE stream for session: ${sessionId}`);
|
|
@@ -414,15 +399,11 @@ if (useHttp) {
|
|
|
414
399
|
streamClosed = true;
|
|
415
400
|
logger.info(`Client aborted SSE stream for session: ${sessionId}`);
|
|
416
401
|
});
|
|
417
|
-
// Let the MCP transport handle the SSE stream completely
|
|
418
402
|
const transport = transports[sessionId];
|
|
419
403
|
try {
|
|
420
404
|
await transport.handleRequest(req, res);
|
|
421
|
-
// If the transport completes without the client disconnecting,
|
|
422
|
-
// it might have closed the stream prematurely. Keep it open with heartbeat.
|
|
423
405
|
if (!streamClosed && !res.destroyed) {
|
|
424
406
|
logger.info(`Transport completed, maintaining SSE stream for session: ${sessionId}`);
|
|
425
|
-
// Send periodic heartbeat to keep connection alive
|
|
426
407
|
const heartbeat = setInterval(() => {
|
|
427
408
|
if (streamClosed || res.destroyed) {
|
|
428
409
|
clearInterval(heartbeat);
|
|
@@ -432,21 +413,19 @@ if (useHttp) {
|
|
|
432
413
|
res.write(': heartbeat\n\n');
|
|
433
414
|
}
|
|
434
415
|
catch (error) {
|
|
435
|
-
logger.error(`Heartbeat error for session ${sessionId}
|
|
416
|
+
logger.error(error, `Heartbeat error for session ${sessionId}:`);
|
|
436
417
|
clearInterval(heartbeat);
|
|
437
418
|
}
|
|
438
419
|
}, 30000);
|
|
439
|
-
// Clean up heartbeat when connection closes
|
|
440
420
|
req.on('close', () => clearInterval(heartbeat));
|
|
441
421
|
res.on('close', () => clearInterval(heartbeat));
|
|
442
422
|
}
|
|
443
423
|
}
|
|
444
424
|
catch (error) {
|
|
445
|
-
logger.error(`SSE transport error for session ${sessionId}
|
|
425
|
+
logger.error(error, `SSE transport error for session ${sessionId}:`);
|
|
446
426
|
}
|
|
447
427
|
}
|
|
448
428
|
else if (req.method === 'DELETE') {
|
|
449
|
-
// Handle session termination
|
|
450
429
|
const sessionId = req.headers['mcp-session-id'];
|
|
451
430
|
if (!sessionId || !transports[sessionId]) {
|
|
452
431
|
res.writeHead(400);
|
|
@@ -472,8 +451,7 @@ if (useHttp) {
|
|
|
472
451
|
});
|
|
473
452
|
}
|
|
474
453
|
else {
|
|
475
|
-
|
|
476
|
-
logger.info("Starting in stdio mode");
|
|
454
|
+
logger.info('Starting in stdio mode');
|
|
477
455
|
const transport = new StdioServerTransport();
|
|
478
456
|
server.connect(transport)
|
|
479
457
|
.then(() => {
|
|
@@ -484,4 +462,3 @@ else {
|
|
|
484
462
|
process.exit(1);
|
|
485
463
|
});
|
|
486
464
|
}
|
|
487
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"debug-client.d.ts","sourceRoot":"","sources":["debug-client.ts"],"names":[],"mappings":""}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
1
|
+
#!/usr/bin/env node --experimental-strip-types
|
|
2
2
|
import { spawn } from 'child_process';
|
|
3
3
|
import readline from 'readline';
|
|
4
|
-
|
|
4
|
+
import { join } from 'path';
|
|
5
5
|
class SimpleJSONRPCClient {
|
|
6
6
|
process;
|
|
7
7
|
rl;
|
|
@@ -60,17 +60,18 @@ class SimpleJSONRPCClient {
|
|
|
60
60
|
}
|
|
61
61
|
}
|
|
62
62
|
async function main() {
|
|
63
|
-
const apiKey = process.env
|
|
63
|
+
const apiKey = process.env['SOCKET_API_KEY'];
|
|
64
64
|
if (!apiKey) {
|
|
65
65
|
console.error('Error: SOCKET_API_KEY environment variable is required');
|
|
66
66
|
process.exit(1);
|
|
67
67
|
}
|
|
68
68
|
console.log('Starting MCP server debug client...');
|
|
69
|
-
const
|
|
69
|
+
const serverPath = join(import.meta.dirname, '..', 'index.ts');
|
|
70
|
+
console.log(`Using server script: ${serverPath}`);
|
|
71
|
+
const client = new SimpleJSONRPCClient('node', ['--experimental-strip-types', serverPath], {
|
|
70
72
|
SOCKET_API_KEY: apiKey
|
|
71
73
|
});
|
|
72
74
|
try {
|
|
73
|
-
// Initialize the connection
|
|
74
75
|
console.log('\n1. Initializing connection...');
|
|
75
76
|
const initResult = await client.sendRequest('initialize', {
|
|
76
77
|
protocolVersion: '0.1.0',
|
|
@@ -81,11 +82,9 @@ async function main() {
|
|
|
81
82
|
}
|
|
82
83
|
});
|
|
83
84
|
console.log('Initialize response:', JSON.stringify(initResult, null, 2));
|
|
84
|
-
// List available tools
|
|
85
85
|
console.log('\n2. Listing available tools...');
|
|
86
86
|
const toolsResult = await client.sendRequest('tools/list', {});
|
|
87
87
|
console.log('Available tools:', JSON.stringify(toolsResult, null, 2));
|
|
88
|
-
// Call the depscore tool
|
|
89
88
|
console.log('\n3. Calling depscore tool...');
|
|
90
89
|
const depscoreResult = await client.sendRequest('tools/call', {
|
|
91
90
|
name: 'depscore',
|
|
@@ -100,7 +99,6 @@ async function main() {
|
|
|
100
99
|
}
|
|
101
100
|
});
|
|
102
101
|
console.log('Depscore result:', JSON.stringify(depscoreResult, null, 2));
|
|
103
|
-
// Test with minimal input
|
|
104
102
|
console.log('\n4. Testing with minimal input (default to npm)...');
|
|
105
103
|
const minimalResult = await client.sendRequest('tools/call', {
|
|
106
104
|
name: 'depscore',
|
|
@@ -112,7 +110,6 @@ async function main() {
|
|
|
112
110
|
}
|
|
113
111
|
});
|
|
114
112
|
console.log('Minimal input result:', JSON.stringify(minimalResult, null, 2));
|
|
115
|
-
// Test error handling
|
|
116
113
|
console.log('\n5. Testing error handling (empty packages)...');
|
|
117
114
|
try {
|
|
118
115
|
await client.sendRequest('tools/call', {
|
|
@@ -135,4 +132,3 @@ async function main() {
|
|
|
135
132
|
}
|
|
136
133
|
}
|
|
137
134
|
main().catch(console.error);
|
|
138
|
-
//# sourceMappingURL=debug-client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-client.d.ts","sourceRoot":"","sources":["http-client.ts"],"names":[],"mappings":""}
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
import
|
|
3
|
-
// Helper function to parse SSE or JSON response
|
|
1
|
+
#!/usr/bin/env node --experimental-strip-types
|
|
2
|
+
import { join } from 'path';
|
|
4
3
|
async function parseResponse(response) {
|
|
5
4
|
const contentType = response.headers.get('content-type');
|
|
6
5
|
const text = await response.text();
|
|
7
6
|
if (contentType?.includes('text/event-stream')) {
|
|
8
|
-
// Parse SSE format: "event: message\ndata: {json}\n"
|
|
9
7
|
const dataMatch = text.match(/data: (.+)/);
|
|
10
8
|
if (dataMatch) {
|
|
11
9
|
return JSON.parse(dataMatch[1]);
|
|
@@ -16,15 +14,13 @@ async function parseResponse(response) {
|
|
|
16
14
|
return JSON.parse(text);
|
|
17
15
|
}
|
|
18
16
|
}
|
|
19
|
-
// Simple HTTP client for testing MCP server in HTTP mode
|
|
20
17
|
async function testHTTPMode() {
|
|
21
|
-
const baseUrl = (process.env
|
|
18
|
+
const baseUrl = (process.env['MCP_URL'] || 'http://localhost:3000').replace(/\/$/, '');
|
|
22
19
|
const sessionId = `test-session-${Date.now()}`;
|
|
23
20
|
console.log('Testing Socket MCP in HTTP mode...');
|
|
24
21
|
console.log(`Server URL: ${baseUrl}`);
|
|
25
22
|
console.log(`Session ID: ${sessionId}`);
|
|
26
23
|
try {
|
|
27
|
-
// 1. Initialize connection
|
|
28
24
|
console.log('\n1. Initializing connection...');
|
|
29
25
|
const initRequest = {
|
|
30
26
|
jsonrpc: '2.0',
|
|
@@ -43,18 +39,16 @@ async function testHTTPMode() {
|
|
|
43
39
|
method: 'POST',
|
|
44
40
|
headers: {
|
|
45
41
|
'Content-Type': 'application/json',
|
|
46
|
-
|
|
42
|
+
Accept: 'application/json, text/event-stream',
|
|
47
43
|
'User-Agent': 'socket-mcp-debug-client/1.0.0'
|
|
48
44
|
},
|
|
49
45
|
body: JSON.stringify(initRequest)
|
|
50
46
|
});
|
|
51
47
|
const initResult = await parseResponse(initResponse);
|
|
52
48
|
console.log('Initialize response:', JSON.stringify(initResult, null, 2));
|
|
53
|
-
// Extract session ID from response headers
|
|
54
49
|
const serverSessionId = initResponse.headers.get('mcp-session-id');
|
|
55
50
|
const actualSessionId = serverSessionId || sessionId;
|
|
56
51
|
console.log('Session ID:', actualSessionId);
|
|
57
|
-
// 2. List tools
|
|
58
52
|
console.log('\n2. Listing available tools...');
|
|
59
53
|
const toolsRequest = {
|
|
60
54
|
jsonrpc: '2.0',
|
|
@@ -66,14 +60,13 @@ async function testHTTPMode() {
|
|
|
66
60
|
method: 'POST',
|
|
67
61
|
headers: {
|
|
68
62
|
'Content-Type': 'application/json',
|
|
69
|
-
|
|
63
|
+
Accept: 'application/json, text/event-stream',
|
|
70
64
|
'mcp-session-id': actualSessionId
|
|
71
65
|
},
|
|
72
66
|
body: JSON.stringify(toolsRequest)
|
|
73
67
|
});
|
|
74
68
|
const toolsResult = await parseResponse(toolsResponse);
|
|
75
69
|
console.log('Available tools:', JSON.stringify(toolsResult, null, 2));
|
|
76
|
-
// 3. Call depscore
|
|
77
70
|
console.log('\n3. Calling depscore tool...');
|
|
78
71
|
const depscoreRequest = {
|
|
79
72
|
jsonrpc: '2.0',
|
|
@@ -94,27 +87,24 @@ async function testHTTPMode() {
|
|
|
94
87
|
method: 'POST',
|
|
95
88
|
headers: {
|
|
96
89
|
'Content-Type': 'application/json',
|
|
97
|
-
|
|
90
|
+
Accept: 'application/json, text/event-stream',
|
|
98
91
|
'mcp-session-id': actualSessionId
|
|
99
92
|
},
|
|
100
93
|
body: JSON.stringify(depscoreRequest)
|
|
101
94
|
});
|
|
102
95
|
const depscoreResult = await parseResponse(depscoreResponse);
|
|
103
96
|
console.log('Depscore result:', JSON.stringify(depscoreResult, null, 2));
|
|
104
|
-
// 4. Test SSE stream (optional)
|
|
105
97
|
console.log('\n4. Testing SSE stream connection...');
|
|
106
98
|
const sseResponse = await fetch(`${baseUrl}/`, {
|
|
107
99
|
method: 'GET',
|
|
108
100
|
headers: {
|
|
109
101
|
'mcp-session-id': actualSessionId,
|
|
110
|
-
|
|
102
|
+
Accept: 'text/event-stream'
|
|
111
103
|
}
|
|
112
104
|
});
|
|
113
105
|
if (sseResponse.ok) {
|
|
114
106
|
console.log('SSE stream connected successfully');
|
|
115
|
-
// Note: In a real implementation, you'd parse the SSE stream
|
|
116
107
|
}
|
|
117
|
-
// 5. Clean up session
|
|
118
108
|
console.log('\n5. Cleaning up session...');
|
|
119
109
|
const cleanupResponse = await fetch(`${baseUrl}/`, {
|
|
120
110
|
method: 'DELETE',
|
|
@@ -128,26 +118,24 @@ async function testHTTPMode() {
|
|
|
128
118
|
console.error('Error:', error);
|
|
129
119
|
}
|
|
130
120
|
}
|
|
131
|
-
// Usage instructions
|
|
132
121
|
if (process.argv.includes('--help')) {
|
|
122
|
+
const serverScript = join(import.meta.dirname, '..', 'index.ts');
|
|
133
123
|
console.log(`
|
|
134
124
|
Socket MCP HTTP Client Debugger
|
|
135
125
|
|
|
136
126
|
Usage:
|
|
137
127
|
# Start the MCP server in HTTP mode first:
|
|
138
|
-
MCP_HTTP_MODE=true SOCKET_API_KEY=your-api-key
|
|
128
|
+
MCP_HTTP_MODE=true SOCKET_API_KEY=your-api-key node --experimental-strip-types ${serverScript}
|
|
139
129
|
|
|
140
130
|
# Then run this client:
|
|
141
|
-
|
|
142
|
-
node ./build/http-client.js
|
|
131
|
+
node --experimental-strip-types ./mock-client/http-client.ts
|
|
143
132
|
|
|
144
133
|
Environment variables:
|
|
145
134
|
MCP_URL - Server URL (default: http://localhost:3000)
|
|
146
135
|
|
|
147
136
|
Example:
|
|
148
|
-
MCP_URL=http://localhost:8080 node ./
|
|
137
|
+
MCP_URL=http://localhost:8080 node --experimental-strip-types ./mock-client/http-client.ts
|
|
149
138
|
`);
|
|
150
139
|
process.exit(0);
|
|
151
140
|
}
|
|
152
141
|
testHTTPMode().catch(console.error);
|
|
153
|
-
//# sourceMappingURL=http-client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stdio-client.d.ts","sourceRoot":"","sources":["stdio-client.ts"],"names":[],"mappings":""}
|
|
@@ -1,13 +1,16 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
1
|
+
#!/usr/bin/env node --experimental-strip-types
|
|
2
2
|
import { Client } from '@modelcontextprotocol/sdk/client/index.js';
|
|
3
3
|
import { StdioClientTransport } from '@modelcontextprotocol/sdk/client/stdio.js';
|
|
4
|
+
import { join } from 'path';
|
|
4
5
|
async function main() {
|
|
6
|
+
const serverPath = join(import.meta.dirname, '..', 'index.ts');
|
|
7
|
+
console.log(`Using server script: ${serverPath}`);
|
|
5
8
|
const transport = new StdioClientTransport({
|
|
6
|
-
command: '
|
|
7
|
-
args: [],
|
|
9
|
+
command: 'node',
|
|
10
|
+
args: ['--experimental-strip-types', serverPath],
|
|
8
11
|
env: {
|
|
9
12
|
...process.env,
|
|
10
|
-
SOCKET_API_KEY: process.env
|
|
13
|
+
SOCKET_API_KEY: process.env['SOCKET_API_KEY'] || ''
|
|
11
14
|
}
|
|
12
15
|
});
|
|
13
16
|
const client = new Client({
|
|
@@ -19,10 +22,8 @@ async function main() {
|
|
|
19
22
|
try {
|
|
20
23
|
await client.connect(transport);
|
|
21
24
|
console.log('Connected to MCP server');
|
|
22
|
-
// List available tools
|
|
23
25
|
const tools = await client.listTools();
|
|
24
26
|
console.log('Available tools:', tools.tools.map(t => t.name));
|
|
25
|
-
// Test the depscore tool
|
|
26
27
|
const testPackages = [
|
|
27
28
|
{ depname: 'express', ecosystem: 'npm', version: '4.18.2' },
|
|
28
29
|
{ depname: 'lodash', ecosystem: 'npm', version: '4.17.21' },
|
|
@@ -48,6 +49,4 @@ async function main() {
|
|
|
48
49
|
process.exit(1);
|
|
49
50
|
}
|
|
50
51
|
}
|
|
51
|
-
// Run the client
|
|
52
52
|
main().catch(console.error);
|
|
53
|
-
//# sourceMappingURL=stdio-client.js.map
|
package/package.json
CHANGED
|
@@ -1,23 +1,44 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@socketsecurity/mcp",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.10",
|
|
4
4
|
"type": "module",
|
|
5
|
-
"main": "./
|
|
5
|
+
"main": "./index.js",
|
|
6
6
|
"bin": {
|
|
7
|
-
"socket-mcp": "./
|
|
7
|
+
"socket-mcp": "./index.js"
|
|
8
|
+
},
|
|
9
|
+
"engines": {
|
|
10
|
+
"node": ">=22.0.0",
|
|
11
|
+
"npm": ">= 10"
|
|
8
12
|
},
|
|
9
13
|
"scripts": {
|
|
10
|
-
"
|
|
11
|
-
"
|
|
12
|
-
"
|
|
13
|
-
"
|
|
14
|
-
"
|
|
15
|
-
"
|
|
14
|
+
"prepublishOnly": "npm run build",
|
|
15
|
+
"postpublish": "npm run clean",
|
|
16
|
+
"test": "run-s test:*",
|
|
17
|
+
"test:lint": "eslint .",
|
|
18
|
+
"test:tsc": "tsc",
|
|
19
|
+
"test:node-test": "c8 node --experimental-strip-types --test --test-reporter spec",
|
|
20
|
+
"build": "npm run clean && run-s build:*",
|
|
21
|
+
"build:types": "tsc -p tsconfig.declaration.json",
|
|
22
|
+
"build:permissions": "chmod +x ./index.js && (chmod +x ./mock-client/*.js 2>/dev/null || true)",
|
|
23
|
+
"build-dtx": "run-s build build-dtx:*",
|
|
24
|
+
"build-dtx:versions_match": "node --experimental-strip-types scripts/check-versions.ts",
|
|
25
|
+
"build-dtx:validate": "npx dxt validate ./",
|
|
26
|
+
"build-dtx:dtx-pack": "npx dxt pack ./",
|
|
27
|
+
"clean": "./scripts/clean.sh",
|
|
28
|
+
"debug-stdio": "node --experimental-strip-types ./mock-client/debug-client.ts",
|
|
29
|
+
"debug-sdk": "node --experimental-strip-types ./mock-client/stdio-client.ts",
|
|
30
|
+
"debug-http": "node --experimental-strip-types ./mock-client/http-client.ts",
|
|
31
|
+
"server-stdio": "SOCKET_API_KEY=${SOCKET_API_KEY} --experimental-strip-types ./index.ts",
|
|
32
|
+
"server-http": "MCP_HTTP_MODE=true SOCKET_API_KEY=${SOCKET_API_KEY} ./build/index.js"
|
|
16
33
|
},
|
|
34
|
+
"keywords": [],
|
|
17
35
|
"files": [
|
|
18
|
-
"
|
|
36
|
+
"index.js",
|
|
37
|
+
"index.d.ts",
|
|
38
|
+
"index.d.ts.map",
|
|
39
|
+
"mock-client/**/*.js",
|
|
40
|
+
"mock-client/**/*.d.ts*"
|
|
19
41
|
],
|
|
20
|
-
"keywords": [],
|
|
21
42
|
"author": "Alexandros Kapravelos",
|
|
22
43
|
"description": "Socket MCP server for scanning dependencies",
|
|
23
44
|
"repository": {
|
|
@@ -26,17 +47,19 @@
|
|
|
26
47
|
},
|
|
27
48
|
"dependencies": {
|
|
28
49
|
"@modelcontextprotocol/sdk": "^1.11.3",
|
|
29
|
-
"@types/node-fetch": "^2.6.12",
|
|
30
|
-
"node-fetch": "^3.3.2",
|
|
31
50
|
"pino": "^9.7.0",
|
|
32
51
|
"pino-pretty": "^13.0.0",
|
|
33
52
|
"semver": "^7.7.2",
|
|
34
53
|
"zod": "^3.24.4"
|
|
35
54
|
},
|
|
36
55
|
"devDependencies": {
|
|
37
|
-
"
|
|
56
|
+
"neostandard": "^0.12.0",
|
|
57
|
+
"@anthropic-ai/dxt": "^0.2.0",
|
|
58
|
+
"@types/node": "^24.0.7",
|
|
38
59
|
"@types/semver": "^7.7.0",
|
|
39
60
|
"@types/triple-beam": "^1.3.5",
|
|
40
|
-
"
|
|
61
|
+
"c8": "^10.0.0",
|
|
62
|
+
"npm-run-all2": "^8.0.1",
|
|
63
|
+
"typescript": "~5.9.2"
|
|
41
64
|
}
|
|
42
65
|
}
|
package/build/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"debug-client.js","sourceRoot":"","sources":["../../mock-client/debug-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"http-client.js","sourceRoot":"","sources":["../../mock-client/http-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"stdio-client.js","sourceRoot":"","sources":["../../mock-client/stdio-client.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAEjF,KAAK,UAAU,IAAI;IACjB,MAAM,SAAS,GAAG,IAAI,oBAAoB,CAAC;QACzC,OAAO,EAAE,kBAAkB;QAC3B,IAAI,EAAE,EAAE;QACR,GAAG,EAAE;YACH,GAAG,OAAO,CAAC,GAAG;YACd,cAAc,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,EAAE;SACjD;KACF,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC;QACxB,IAAI,EAAE,iBAAiB;QACvB,OAAO,EAAE,OAAO;KACjB,EAAE;QACD,YAAY,EAAE,EAAE;KACjB,CAAC,CAAC;IAEH,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;QAEvC,uBAAuB;QACvB,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,SAAS,EAAE,CAAC;QACvC,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAE9D,yBAAyB;QACzB,MAAM,YAAY,GAAG;YACnB,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE;YAC3D,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE;YAC3D,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE;YACzD,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE;YAC7D,EAAE,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE;SACrE,CAAC;QAEF,OAAO,CAAC,GAAG,CAAC,mCAAmC,EAAE,YAAY,CAAC,CAAC;QAE/D,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC;YACnC,IAAI,EAAE,UAAU;YAChB,SAAS,EAAE;gBACT,QAAQ,EAAE,YAAY;aACvB;SACF,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAE7C,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACrB,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;IAC9C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC/B,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,iBAAiB;AACjB,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC"}
|