@hypnosis/docker-mcp-server 1.0.1 → 1.0.3
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/dist/adapters/adapter-registry.d.ts +5 -5
- package/dist/adapters/adapter-registry.js +5 -5
- package/dist/adapters/database-adapter.d.ts +8 -8
- package/dist/adapters/database-adapter.js +1 -1
- package/dist/adapters/postgresql.d.ts +8 -8
- package/dist/adapters/postgresql.js +26 -26
- package/dist/adapters/postgresql.js.map +1 -1
- package/dist/adapters/redis.d.ts +9 -9
- package/dist/adapters/redis.js +23 -23
- package/dist/adapters/redis.js.map +1 -1
- package/dist/adapters/sqlite.d.ts +6 -6
- package/dist/adapters/sqlite.js +14 -14
- package/dist/adapters/sqlite.js.map +1 -1
- package/dist/adapters/types.d.ts +6 -6
- package/dist/adapters/types.js +1 -1
- package/dist/discovery/project-discovery.d.ts.map +1 -1
- package/dist/discovery/project-discovery.js +17 -3
- package/dist/discovery/project-discovery.js.map +1 -1
- package/dist/index.js +55 -17
- package/dist/index.js.map +1 -1
- package/dist/managers/compose-manager.d.ts.map +1 -1
- package/dist/managers/compose-manager.js +33 -4
- package/dist/managers/compose-manager.js.map +1 -1
- package/dist/managers/container-manager.d.ts +13 -13
- package/dist/managers/container-manager.js +28 -28
- package/dist/managers/container-manager.js.map +1 -1
- package/dist/tools/container-tools.d.ts +4 -4
- package/dist/tools/container-tools.js +8 -8
- package/dist/tools/container-tools.js.map +1 -1
- package/dist/tools/database-tools.d.ts +3 -3
- package/dist/tools/database-tools.js +4 -4
- package/dist/tools/database-tools.js.map +1 -1
- package/dist/tools/env-tools.d.ts +4 -4
- package/dist/tools/env-tools.js +9 -9
- package/dist/tools/env-tools.js.map +1 -1
- package/dist/tools/executor-tool.d.ts +3 -3
- package/dist/tools/executor-tool.js +6 -6
- package/dist/tools/executor-tool.js.map +1 -1
- package/dist/tools/mcp-health-tool.d.ts +4 -4
- package/dist/tools/mcp-health-tool.js +5 -5
- package/dist/tools/mcp-health-tool.js.map +1 -1
- package/dist/utils/compose-exec.d.ts.map +1 -1
- package/dist/utils/compose-exec.js +16 -1
- package/dist/utils/compose-exec.js.map +1 -1
- package/dist/utils/port-utils.d.ts +24 -0
- package/dist/utils/port-utils.d.ts.map +1 -0
- package/dist/utils/port-utils.js +89 -0
- package/dist/utils/port-utils.js.map +1 -0
- package/dist/utils/workspace.d.ts +34 -0
- package/dist/utils/workspace.d.ts.map +1 -0
- package/dist/utils/workspace.js +52 -0
- package/dist/utils/workspace.js.map +1 -0
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Container Manager
|
|
3
|
-
*
|
|
3
|
+
* Docker container management
|
|
4
4
|
*/
|
|
5
5
|
import { logger } from '../utils/logger.js';
|
|
6
6
|
import { getDockerClient } from '../utils/docker-client.js';
|
|
@@ -11,11 +11,11 @@ export class ContainerManager {
|
|
|
11
11
|
this.docker = client.getClient();
|
|
12
12
|
}
|
|
13
13
|
/**
|
|
14
|
-
*
|
|
14
|
+
* List project containers
|
|
15
15
|
*/
|
|
16
16
|
async listContainers(projectName, composeFile, projectDir) {
|
|
17
17
|
logger.debug(`Listing containers for project: ${projectName}`);
|
|
18
|
-
//
|
|
18
|
+
// Option 1: Use Docker Compose labels (direct Docker API call)
|
|
19
19
|
try {
|
|
20
20
|
const containers = await this.docker.listContainers({
|
|
21
21
|
all: true,
|
|
@@ -32,7 +32,7 @@ export class ContainerManager {
|
|
|
32
32
|
catch (error) {
|
|
33
33
|
logger.debug('Failed to list containers via labels:', error);
|
|
34
34
|
}
|
|
35
|
-
// Fallback 1:
|
|
35
|
+
// Fallback 1: Use docker-compose ps CLI (if composeFile exists)
|
|
36
36
|
if (composeFile && projectDir) {
|
|
37
37
|
try {
|
|
38
38
|
const { ComposeExec } = await import('../utils/compose-exec.js');
|
|
@@ -53,7 +53,7 @@ export class ContainerManager {
|
|
|
53
53
|
.filter(c => c && c.Name);
|
|
54
54
|
if (composeContainers.length > 0) {
|
|
55
55
|
logger.debug(`Found ${composeContainers.length} containers via docker-compose ps`);
|
|
56
|
-
//
|
|
56
|
+
// Get full container information via Docker API
|
|
57
57
|
const containerNames = composeContainers.map(c => c.Name);
|
|
58
58
|
const allContainers = await this.docker.listContainers({ all: true });
|
|
59
59
|
const projectContainers = allContainers.filter(c => {
|
|
@@ -73,7 +73,7 @@ export class ContainerManager {
|
|
|
73
73
|
logger.debug('Failed to use docker-compose ps:', error);
|
|
74
74
|
}
|
|
75
75
|
}
|
|
76
|
-
// Fallback 2:
|
|
76
|
+
// Fallback 2: Filter by project name in container name
|
|
77
77
|
logger.debug('Using name-based filter as final fallback');
|
|
78
78
|
const containers = await this.docker.listContainers({
|
|
79
79
|
all: true,
|
|
@@ -84,7 +84,7 @@ export class ContainerManager {
|
|
|
84
84
|
return containers.map((c) => this.mapContainerInfo(c, projectName));
|
|
85
85
|
}
|
|
86
86
|
/**
|
|
87
|
-
*
|
|
87
|
+
* Start container
|
|
88
88
|
*/
|
|
89
89
|
async startContainer(serviceName, projectName, composeFile, projectDir) {
|
|
90
90
|
const container = await this.findContainer(serviceName, projectName, composeFile, projectDir);
|
|
@@ -93,7 +93,7 @@ export class ContainerManager {
|
|
|
93
93
|
logger.info(`Container ${serviceName} started successfully`);
|
|
94
94
|
}
|
|
95
95
|
/**
|
|
96
|
-
*
|
|
96
|
+
* Stop container
|
|
97
97
|
*/
|
|
98
98
|
async stopContainer(serviceName, projectName, timeout = 10, composeFile, projectDir) {
|
|
99
99
|
const container = await this.findContainer(serviceName, projectName, composeFile, projectDir);
|
|
@@ -102,7 +102,7 @@ export class ContainerManager {
|
|
|
102
102
|
logger.info(`Container ${serviceName} stopped successfully`);
|
|
103
103
|
}
|
|
104
104
|
/**
|
|
105
|
-
*
|
|
105
|
+
* Restart container
|
|
106
106
|
*/
|
|
107
107
|
async restartContainer(serviceName, projectName, timeout = 10, composeFile, projectDir) {
|
|
108
108
|
const container = await this.findContainer(serviceName, projectName, composeFile, projectDir);
|
|
@@ -111,13 +111,13 @@ export class ContainerManager {
|
|
|
111
111
|
logger.info(`Container ${serviceName} restarted successfully`);
|
|
112
112
|
}
|
|
113
113
|
/**
|
|
114
|
-
*
|
|
115
|
-
*
|
|
114
|
+
* Get container logs
|
|
115
|
+
* Returns string for normal mode or stream for follow mode
|
|
116
116
|
*/
|
|
117
117
|
async getLogs(serviceName, projectName, options = {}, composeFile, projectDir) {
|
|
118
118
|
const container = await this.findContainer(serviceName, projectName, composeFile, projectDir);
|
|
119
119
|
logger.debug(`Getting logs for: ${serviceName}`, options);
|
|
120
|
-
//
|
|
120
|
+
// If follow mode → return stream
|
|
121
121
|
if (options.follow) {
|
|
122
122
|
logger.debug('Returning stream for follow mode');
|
|
123
123
|
const logs = await container.logs({
|
|
@@ -130,7 +130,7 @@ export class ContainerManager {
|
|
|
130
130
|
});
|
|
131
131
|
return logs;
|
|
132
132
|
}
|
|
133
|
-
//
|
|
133
|
+
// Otherwise → return string
|
|
134
134
|
const logs = await container.logs({
|
|
135
135
|
stdout: true,
|
|
136
136
|
stderr: true,
|
|
@@ -139,17 +139,17 @@ export class ContainerManager {
|
|
|
139
139
|
timestamps: options.timestamps || false,
|
|
140
140
|
since: options.since,
|
|
141
141
|
});
|
|
142
|
-
// logs
|
|
142
|
+
// logs is now Buffer, convert to string
|
|
143
143
|
return Buffer.isBuffer(logs) ? logs.toString('utf-8') : logs.toString('utf-8');
|
|
144
144
|
}
|
|
145
145
|
/**
|
|
146
|
-
*
|
|
146
|
+
* Get container health status
|
|
147
147
|
*/
|
|
148
148
|
async getHealthStatus(serviceName, projectName, composeFile, projectDir) {
|
|
149
149
|
const container = await this.findContainer(serviceName, projectName, composeFile, projectDir);
|
|
150
150
|
try {
|
|
151
151
|
const info = await container.inspect();
|
|
152
|
-
//
|
|
152
|
+
// If container is not running
|
|
153
153
|
if (info.State.Status !== 'running') {
|
|
154
154
|
return {
|
|
155
155
|
status: 'not_running',
|
|
@@ -157,7 +157,7 @@ export class ContainerManager {
|
|
|
157
157
|
failures: 0,
|
|
158
158
|
};
|
|
159
159
|
}
|
|
160
|
-
//
|
|
160
|
+
// If healthcheck is not defined
|
|
161
161
|
if (!info.State.Health) {
|
|
162
162
|
return {
|
|
163
163
|
status: 'none',
|
|
@@ -165,7 +165,7 @@ export class ContainerManager {
|
|
|
165
165
|
failures: 0,
|
|
166
166
|
};
|
|
167
167
|
}
|
|
168
|
-
// Healthcheck
|
|
168
|
+
// Healthcheck is defined
|
|
169
169
|
const health = info.State.Health;
|
|
170
170
|
const status = health.Status;
|
|
171
171
|
return {
|
|
@@ -180,7 +180,7 @@ export class ContainerManager {
|
|
|
180
180
|
}
|
|
181
181
|
}
|
|
182
182
|
/**
|
|
183
|
-
*
|
|
183
|
+
* Execute command in container
|
|
184
184
|
*/
|
|
185
185
|
async exec(serviceName, projectName, command, options = {}, composeFile, projectDir) {
|
|
186
186
|
const container = await this.findContainer(serviceName, projectName, composeFile, projectDir);
|
|
@@ -210,7 +210,7 @@ export class ContainerManager {
|
|
|
210
210
|
});
|
|
211
211
|
}
|
|
212
212
|
/**
|
|
213
|
-
*
|
|
213
|
+
* Find container by service name
|
|
214
214
|
*/
|
|
215
215
|
async findContainer(serviceName, projectName, composeFile, projectDir) {
|
|
216
216
|
const containers = await this.listContainers(projectName, composeFile, projectDir);
|
|
@@ -223,12 +223,12 @@ export class ContainerManager {
|
|
|
223
223
|
return this.docker.getContainer(found.id);
|
|
224
224
|
}
|
|
225
225
|
/**
|
|
226
|
-
*
|
|
226
|
+
* Map Docker ContainerInfo → our format
|
|
227
227
|
*/
|
|
228
228
|
mapContainerInfo(container, projectName, serviceNameOverride) {
|
|
229
|
-
//
|
|
229
|
+
// Container name: /project_service_1 → extract service
|
|
230
230
|
const fullName = container.Names[0]?.replace(/^\//, '') || '';
|
|
231
|
-
//
|
|
231
|
+
// Priority: override → label → extraction from name
|
|
232
232
|
const serviceName = serviceNameOverride
|
|
233
233
|
|| container.Labels?.['com.docker.compose.service']
|
|
234
234
|
|| this.extractServiceName(fullName, projectName);
|
|
@@ -243,7 +243,7 @@ export class ContainerManager {
|
|
|
243
243
|
};
|
|
244
244
|
}
|
|
245
245
|
/**
|
|
246
|
-
*
|
|
246
|
+
* Extract ports from Docker container info
|
|
247
247
|
*/
|
|
248
248
|
extractPorts(ports) {
|
|
249
249
|
if (!ports || ports.length === 0)
|
|
@@ -259,20 +259,20 @@ export class ContainerManager {
|
|
|
259
259
|
}).filter((p) => p.length > 0);
|
|
260
260
|
}
|
|
261
261
|
/**
|
|
262
|
-
*
|
|
262
|
+
* Extract service name from container name
|
|
263
263
|
* project_service_1 → service
|
|
264
264
|
* project-service-1 → service
|
|
265
265
|
*/
|
|
266
266
|
extractServiceName(containerName, projectName) {
|
|
267
|
-
//
|
|
267
|
+
// Remove project name from beginning
|
|
268
268
|
let name = containerName;
|
|
269
269
|
if (name.startsWith(projectName)) {
|
|
270
270
|
name = name.slice(projectName.length);
|
|
271
271
|
}
|
|
272
|
-
//
|
|
272
|
+
// Remove separators and number at the end
|
|
273
273
|
// project_service_1 → _service_1 → service_1 → service
|
|
274
274
|
name = name.replace(/^[_-]/, '').replace(/[_-]\d+$/, '');
|
|
275
|
-
return name || containerName; // Fallback
|
|
275
|
+
return name || containerName; // Fallback to full name
|
|
276
276
|
}
|
|
277
277
|
}
|
|
278
278
|
//# sourceMappingURL=container-manager.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"container-manager.js","sourceRoot":"","sources":["../../src/managers/container-manager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAyB5D,MAAM,OAAO,gBAAgB;IACnB,MAAM,CAAS;IAEvB;QACE,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc,CAAC,WAAmB,EAAE,WAAoB,EAAE,UAAmB;QACjF,MAAM,CAAC,KAAK,CAAC,mCAAmC,WAAW,EAAE,CAAC,CAAC;QAE/D
|
|
1
|
+
{"version":3,"file":"container-manager.js","sourceRoot":"","sources":["../../src/managers/container-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Container Tools
|
|
3
|
-
* MCP Tools
|
|
3
|
+
* MCP Tools for Docker container management
|
|
4
4
|
*/
|
|
5
5
|
import { CallToolRequest, Tool } from '@modelcontextprotocol/sdk/types.js';
|
|
6
6
|
export declare class ContainerTools {
|
|
@@ -9,11 +9,11 @@ export declare class ContainerTools {
|
|
|
9
9
|
private projectDiscovery;
|
|
10
10
|
constructor();
|
|
11
11
|
/**
|
|
12
|
-
*
|
|
12
|
+
* Register all container tools
|
|
13
13
|
*/
|
|
14
14
|
getTools(): Tool[];
|
|
15
15
|
/**
|
|
16
|
-
*
|
|
16
|
+
* Handle tool call
|
|
17
17
|
*/
|
|
18
18
|
handleCall(request: CallToolRequest): Promise<any>;
|
|
19
19
|
private handleList;
|
|
@@ -24,7 +24,7 @@ export declare class ContainerTools {
|
|
|
24
24
|
private handleComposeUp;
|
|
25
25
|
private handleComposeDown;
|
|
26
26
|
/**
|
|
27
|
-
* Helper:
|
|
27
|
+
* Helper: get project config (auto-detect or explicit)
|
|
28
28
|
*/
|
|
29
29
|
private getProject;
|
|
30
30
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Container Tools
|
|
3
|
-
* MCP Tools
|
|
3
|
+
* MCP Tools for Docker container management
|
|
4
4
|
*/
|
|
5
5
|
import { ContainerManager } from '../managers/container-manager.js';
|
|
6
6
|
import { ComposeManager } from '../managers/compose-manager.js';
|
|
@@ -16,7 +16,7 @@ export class ContainerTools {
|
|
|
16
16
|
this.projectDiscovery = new ProjectDiscovery();
|
|
17
17
|
}
|
|
18
18
|
/**
|
|
19
|
-
*
|
|
19
|
+
* Register all container tools
|
|
20
20
|
*/
|
|
21
21
|
getTools() {
|
|
22
22
|
return [
|
|
@@ -185,7 +185,7 @@ export class ContainerTools {
|
|
|
185
185
|
];
|
|
186
186
|
}
|
|
187
187
|
/**
|
|
188
|
-
*
|
|
188
|
+
* Handle tool call
|
|
189
189
|
*/
|
|
190
190
|
async handleCall(request) {
|
|
191
191
|
const { name, arguments: args } = request.params;
|
|
@@ -289,7 +289,7 @@ export class ContainerTools {
|
|
|
289
289
|
timestamps: args?.timestamps || false,
|
|
290
290
|
follow: args?.follow || false,
|
|
291
291
|
}, project.composeFile, project.projectDir);
|
|
292
|
-
//
|
|
292
|
+
// If this is a stream (follow mode), collect data from stream
|
|
293
293
|
if (args?.follow && typeof logs !== 'string') {
|
|
294
294
|
const stream = logs;
|
|
295
295
|
const chunks = [];
|
|
@@ -313,7 +313,7 @@ export class ContainerTools {
|
|
|
313
313
|
});
|
|
314
314
|
});
|
|
315
315
|
}
|
|
316
|
-
//
|
|
316
|
+
// Normal mode (string)
|
|
317
317
|
return {
|
|
318
318
|
content: [
|
|
319
319
|
{
|
|
@@ -355,11 +355,11 @@ export class ContainerTools {
|
|
|
355
355
|
};
|
|
356
356
|
}
|
|
357
357
|
/**
|
|
358
|
-
* Helper:
|
|
358
|
+
* Helper: get project config (auto-detect or explicit)
|
|
359
359
|
*/
|
|
360
360
|
async getProject(explicitName) {
|
|
361
|
-
//
|
|
362
|
-
//
|
|
361
|
+
// Currently always use auto-detect
|
|
362
|
+
// In the future, can add caching by explicit name
|
|
363
363
|
return this.projectDiscovery.findProject();
|
|
364
364
|
}
|
|
365
365
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"container-tools.js","sourceRoot":"","sources":["../../src/tools/container-tools.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"container-tools.js","sourceRoot":"","sources":["../../src/tools/container-tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Database Tools
|
|
3
|
-
* MCP Tools
|
|
3
|
+
* MCP Tools for working with databases
|
|
4
4
|
*/
|
|
5
5
|
import { CallToolRequest, Tool } from '@modelcontextprotocol/sdk/types.js';
|
|
6
6
|
export declare class DatabaseTools {
|
|
7
7
|
private projectDiscovery;
|
|
8
8
|
constructor();
|
|
9
9
|
/**
|
|
10
|
-
*
|
|
10
|
+
* Register all database tools
|
|
11
11
|
*/
|
|
12
12
|
getTools(): Tool[];
|
|
13
13
|
/**
|
|
14
|
-
*
|
|
14
|
+
* Handle tool call
|
|
15
15
|
*/
|
|
16
16
|
handleCall(request: CallToolRequest): Promise<any>;
|
|
17
17
|
private handleQuery;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Database Tools
|
|
3
|
-
* MCP Tools
|
|
3
|
+
* MCP Tools for working with databases
|
|
4
4
|
*/
|
|
5
5
|
import { adapterRegistry } from '../adapters/adapter-registry.js';
|
|
6
6
|
import { ProjectDiscovery } from '../discovery/project-discovery.js';
|
|
@@ -11,7 +11,7 @@ export class DatabaseTools {
|
|
|
11
11
|
this.projectDiscovery = new ProjectDiscovery();
|
|
12
12
|
}
|
|
13
13
|
/**
|
|
14
|
-
*
|
|
14
|
+
* Register all database tools
|
|
15
15
|
*/
|
|
16
16
|
getTools() {
|
|
17
17
|
return [
|
|
@@ -134,7 +134,7 @@ export class DatabaseTools {
|
|
|
134
134
|
];
|
|
135
135
|
}
|
|
136
136
|
/**
|
|
137
|
-
*
|
|
137
|
+
* Handle tool call
|
|
138
138
|
*/
|
|
139
139
|
async handleCall(request) {
|
|
140
140
|
const { name, arguments: args } = request.params;
|
|
@@ -174,7 +174,7 @@ export class DatabaseTools {
|
|
|
174
174
|
if (!serviceConfig) {
|
|
175
175
|
throw new Error(`Service '${args.service}' not found in project`);
|
|
176
176
|
}
|
|
177
|
-
//
|
|
177
|
+
// Get adapter by database type
|
|
178
178
|
const adapter = adapterRegistry.get(serviceConfig.type);
|
|
179
179
|
const result = await adapter.query(args.service, args.query, {
|
|
180
180
|
database: args.database,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database-tools.js","sourceRoot":"","sources":["../../src/tools/database-tools.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"database-tools.js","sourceRoot":"","sources":["../../src/tools/database-tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Environment Tools
|
|
3
|
-
* MCP Tools
|
|
3
|
+
* MCP Tools for working with environment variables and configuration
|
|
4
4
|
*/
|
|
5
5
|
import { CallToolRequest, Tool } from '@modelcontextprotocol/sdk/types.js';
|
|
6
6
|
export declare class EnvTools {
|
|
@@ -10,11 +10,11 @@ export declare class EnvTools {
|
|
|
10
10
|
private composeParser;
|
|
11
11
|
constructor();
|
|
12
12
|
/**
|
|
13
|
-
*
|
|
13
|
+
* Register all environment tools
|
|
14
14
|
*/
|
|
15
15
|
getTools(): Tool[];
|
|
16
16
|
/**
|
|
17
|
-
*
|
|
17
|
+
* Handle tool calls
|
|
18
18
|
*/
|
|
19
19
|
handleCall(request: CallToolRequest): Promise<{
|
|
20
20
|
content: {
|
|
@@ -29,7 +29,7 @@ export declare class EnvTools {
|
|
|
29
29
|
isError: boolean;
|
|
30
30
|
}>;
|
|
31
31
|
/**
|
|
32
|
-
*
|
|
32
|
+
* Get project (helper)
|
|
33
33
|
*/
|
|
34
34
|
private getProject;
|
|
35
35
|
/**
|
package/dist/tools/env-tools.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Environment Tools
|
|
3
|
-
* MCP Tools
|
|
3
|
+
* MCP Tools for working with environment variables and configuration
|
|
4
4
|
*/
|
|
5
5
|
import { EnvManager } from '../managers/env-manager.js';
|
|
6
6
|
import { ProjectDiscovery } from '../discovery/project-discovery.js';
|
|
@@ -21,7 +21,7 @@ export class EnvTools {
|
|
|
21
21
|
this.composeParser = new ComposeParser();
|
|
22
22
|
}
|
|
23
23
|
/**
|
|
24
|
-
*
|
|
24
|
+
* Register all environment tools
|
|
25
25
|
*/
|
|
26
26
|
getTools() {
|
|
27
27
|
return [
|
|
@@ -95,7 +95,7 @@ export class EnvTools {
|
|
|
95
95
|
];
|
|
96
96
|
}
|
|
97
97
|
/**
|
|
98
|
-
*
|
|
98
|
+
* Handle tool calls
|
|
99
99
|
*/
|
|
100
100
|
async handleCall(request) {
|
|
101
101
|
const { name, arguments: args } = request.params;
|
|
@@ -125,7 +125,7 @@ export class EnvTools {
|
|
|
125
125
|
}
|
|
126
126
|
}
|
|
127
127
|
/**
|
|
128
|
-
*
|
|
128
|
+
* Get project (helper)
|
|
129
129
|
*/
|
|
130
130
|
async getProject(projectName) {
|
|
131
131
|
return await this.projectDiscovery.findProject(projectName ? { explicitPath: projectName } : {});
|
|
@@ -135,7 +135,7 @@ export class EnvTools {
|
|
|
135
135
|
*/
|
|
136
136
|
async handleEnvList(args) {
|
|
137
137
|
const project = await this.getProject(args?.project);
|
|
138
|
-
//
|
|
138
|
+
// If service is specified, load env for specific service
|
|
139
139
|
let env;
|
|
140
140
|
if (args?.service) {
|
|
141
141
|
const serviceConfig = project.services[args.service];
|
|
@@ -146,13 +146,13 @@ export class EnvTools {
|
|
|
146
146
|
env = this.envManager.loadEnv(project.projectDir, args.service, serviceConfig);
|
|
147
147
|
}
|
|
148
148
|
else {
|
|
149
|
-
//
|
|
149
|
+
// Load global env (without service)
|
|
150
150
|
env = this.envManager.loadEnv(project.projectDir);
|
|
151
151
|
}
|
|
152
|
-
//
|
|
152
|
+
// Mask secrets (default: true)
|
|
153
153
|
const shouldMask = args?.maskSecrets !== false;
|
|
154
154
|
const result = shouldMask ? this.envManager.maskSecrets(env) : env;
|
|
155
|
-
//
|
|
155
|
+
// Count number of masked secrets
|
|
156
156
|
let maskedCount = 0;
|
|
157
157
|
if (shouldMask) {
|
|
158
158
|
for (const [key, value] of Object.entries(result)) {
|
|
@@ -161,7 +161,7 @@ export class EnvTools {
|
|
|
161
161
|
}
|
|
162
162
|
}
|
|
163
163
|
}
|
|
164
|
-
//
|
|
164
|
+
// Format result
|
|
165
165
|
const output = Object.entries(result)
|
|
166
166
|
.map(([key, value]) => `${key}=${value}`)
|
|
167
167
|
.join('\n');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"env-tools.js","sourceRoot":"","sources":["../../src/tools/env-tools.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,MAAM,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,MAAM,OAAO,QAAQ;IACX,UAAU,CAAa;IACvB,gBAAgB,CAAmB;IACnC,gBAAgB,CAAmB;IACnC,aAAa,CAAgB;IAErC;QACE,IAAI,CAAC,UAAU,GAAG,IAAI,UAAU,EAAE,CAAC;QACnC,IAAI,CAAC,gBAAgB,GAAG,IAAI,gBAAgB,EAAE,CAAC;QAC/C,IAAI,CAAC,gBAAgB,GAAG,IAAI,gBAAgB,EAAE,CAAC;QAC/C,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,EAAE,CAAC;IAC3C,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO;YACL;gBACE,IAAI,EAAE,iBAAiB;gBACvB,WAAW,EAAE,mEAAmE;gBAChF,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,OAAO,EAAE;4BACP,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,8CAA8C;yBAC5D;wBACD,WAAW,EAAE;4BACX,IAAI,EAAE,SAAS;4BACf,WAAW,EAAE,gEAAgE;4BAC7E,OAAO,EAAE,IAAI;yBACd;wBACD,OAAO,EAAE;4BACP,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,oCAAoC;yBAClD;qBACF;iBACF;aACF;YACD;gBACE,IAAI,EAAE,uBAAuB;gBAC7B,WAAW,EAAE,0CAA0C;gBACvD,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,OAAO,EAAE;4BACP,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,8CAA8C;yBAC5D;wBACD,QAAQ,EAAE;4BACR,IAAI,EAAE,OAAO;4BACb,KAAK,EAAE;gCACL,IAAI,EAAE,QAAQ;6BACf;4BACD,WAAW,EAAE,wCAAwC;yBACtD;wBACD,OAAO,EAAE;4BACP,IAAI,EAAE,SAAS;4BACf,WAAW,EAAE,mEAAmE;4BAChF,OAAO,EAAE,KAAK;yBACf;qBACF;iBACF;aACF;YACD;gBACE,IAAI,EAAE,oBAAoB;gBAC1B,WAAW,EAAE,qCAAqC;gBAClD,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,OAAO,EAAE;4BACP,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,8CAA8C;yBAC5D;wBACD,QAAQ,EAAE;4BACR,IAAI,EAAE,OAAO;4BACb,KAAK,EAAE;gCACL,IAAI,EAAE,QAAQ;6BACf;4BACD,WAAW,EAAE,8BAA8B;yBAC5C;qBACF;iBACF;aACF;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,OAAwB;QACvC,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;QAEjD,IAAI,CAAC;YACH,QAAQ,IAAI,EAAE,CAAC;gBACb,KAAK,iBAAiB;oBACpB,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;gBAExC,KAAK,uBAAuB;oBAC1B,OAAO,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;gBAE9C,KAAK,oBAAoB;oBACvB,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;gBAE5C;oBACE,MAAM,IAAI,KAAK,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC;YAC7C,CAAC;QACH,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,MAAM,CAAC,KAAK,CAAC,QAAQ,IAAI,UAAU,EAAE,KAAK,CAAC,CAAC;YAC5C,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,UAAU,KAAK,CAAC,OAAO,EAAE;qBAChC;iBACF;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,UAAU,CAAC,WAAoB;QAC3C,OAAO,MAAM,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAC5C,WAAW,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CACjD,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,aAAa,CAAC,IAAS;QACnC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAErD,
|
|
1
|
+
{"version":3,"file":"env-tools.js","sourceRoot":"","sources":["../../src/tools/env-tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Universal Executor Tool
|
|
3
|
-
*
|
|
3
|
+
* Execute any commands in container via docker exec
|
|
4
4
|
*/
|
|
5
5
|
import { Tool, CallToolRequest } from '@modelcontextprotocol/sdk/types.js';
|
|
6
6
|
export declare class ExecutorTool {
|
|
@@ -10,8 +10,8 @@ export declare class ExecutorTool {
|
|
|
10
10
|
getTool(): Tool;
|
|
11
11
|
handleCall(request: CallToolRequest): Promise<any>;
|
|
12
12
|
/**
|
|
13
|
-
*
|
|
14
|
-
* TODO:
|
|
13
|
+
* Simple parsing of command string → array
|
|
14
|
+
* TODO: improve for quoted strings in the future
|
|
15
15
|
*/
|
|
16
16
|
private parseCommand;
|
|
17
17
|
}
|