machine-bridge-mcp 0.3.3 → 0.4.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +61 -0
- package/README.md +158 -171
- package/SECURITY.md +92 -40
- package/docs/ARCHITECTURE.md +126 -59
- package/docs/CLIENTS.md +125 -0
- package/docs/OPERATIONS.md +83 -0
- package/docs/RELEASING.md +62 -0
- package/docs/TESTING.md +51 -0
- package/package.json +18 -8
- package/src/local/cli.mjs +152 -51
- package/src/local/daemon.mjs +620 -306
- package/src/local/patch.mjs +140 -0
- package/src/local/process-sessions.mjs +352 -0
- package/src/local/service.mjs +5 -16
- package/src/local/shell.mjs +22 -5
- package/src/local/state.mjs +1 -1
- package/src/local/stdio.mjs +194 -0
- package/src/local/tools.mjs +96 -0
- package/src/shared/tool-catalog.json +638 -0
- package/src/worker/index.ts +151 -162
- package/tsconfig.json +4 -2
- package/src/local/self-test.mjs +0 -227
|
@@ -0,0 +1,638 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"name": "server_info",
|
|
4
|
+
"title": "Server information",
|
|
5
|
+
"description": "Return bridge/runtime metadata, active policy, protocol versions, and available tools.",
|
|
6
|
+
"availability": "always",
|
|
7
|
+
"annotations": {
|
|
8
|
+
"readOnlyHint": true,
|
|
9
|
+
"destructiveHint": false,
|
|
10
|
+
"idempotentHint": true,
|
|
11
|
+
"openWorldHint": false
|
|
12
|
+
},
|
|
13
|
+
"inputSchema": {
|
|
14
|
+
"type": "object",
|
|
15
|
+
"additionalProperties": false
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"name": "project_overview",
|
|
20
|
+
"title": "Project overview",
|
|
21
|
+
"description": "Summarize the connected workspace, repository root, local policy, and top-level entries.",
|
|
22
|
+
"availability": "always",
|
|
23
|
+
"annotations": {
|
|
24
|
+
"readOnlyHint": true,
|
|
25
|
+
"destructiveHint": false,
|
|
26
|
+
"idempotentHint": true,
|
|
27
|
+
"openWorldHint": false
|
|
28
|
+
},
|
|
29
|
+
"inputSchema": {
|
|
30
|
+
"type": "object",
|
|
31
|
+
"additionalProperties": false
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"name": "list_roots",
|
|
36
|
+
"title": "List workspace roots",
|
|
37
|
+
"description": "List filesystem roots exposed by the local runtime. Paths are workspace-relative unless absolute-path output is explicitly enabled.",
|
|
38
|
+
"availability": "always",
|
|
39
|
+
"annotations": {
|
|
40
|
+
"readOnlyHint": true,
|
|
41
|
+
"destructiveHint": false,
|
|
42
|
+
"idempotentHint": true,
|
|
43
|
+
"openWorldHint": false
|
|
44
|
+
},
|
|
45
|
+
"inputSchema": {
|
|
46
|
+
"type": "object",
|
|
47
|
+
"additionalProperties": false
|
|
48
|
+
}
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
"name": "list_dir",
|
|
52
|
+
"title": "List directory",
|
|
53
|
+
"description": "List direct children of a workspace directory.",
|
|
54
|
+
"availability": "always",
|
|
55
|
+
"annotations": {
|
|
56
|
+
"readOnlyHint": true,
|
|
57
|
+
"destructiveHint": false,
|
|
58
|
+
"idempotentHint": true,
|
|
59
|
+
"openWorldHint": false
|
|
60
|
+
},
|
|
61
|
+
"inputSchema": {
|
|
62
|
+
"type": "object",
|
|
63
|
+
"properties": {
|
|
64
|
+
"path": {
|
|
65
|
+
"type": "string",
|
|
66
|
+
"default": "."
|
|
67
|
+
}
|
|
68
|
+
},
|
|
69
|
+
"additionalProperties": false
|
|
70
|
+
}
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
"name": "list_files",
|
|
74
|
+
"title": "List files",
|
|
75
|
+
"description": "Recursively list files under a workspace path with bounded traversal and output.",
|
|
76
|
+
"availability": "always",
|
|
77
|
+
"annotations": {
|
|
78
|
+
"readOnlyHint": true,
|
|
79
|
+
"destructiveHint": false,
|
|
80
|
+
"idempotentHint": true,
|
|
81
|
+
"openWorldHint": false
|
|
82
|
+
},
|
|
83
|
+
"inputSchema": {
|
|
84
|
+
"type": "object",
|
|
85
|
+
"properties": {
|
|
86
|
+
"path": {
|
|
87
|
+
"type": "string",
|
|
88
|
+
"default": "."
|
|
89
|
+
},
|
|
90
|
+
"max_files": {
|
|
91
|
+
"type": "integer",
|
|
92
|
+
"minimum": 1,
|
|
93
|
+
"maximum": 10000,
|
|
94
|
+
"default": 1000
|
|
95
|
+
}
|
|
96
|
+
},
|
|
97
|
+
"additionalProperties": false
|
|
98
|
+
}
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
"name": "read_file",
|
|
102
|
+
"title": "Read text file",
|
|
103
|
+
"description": "Read a UTF-8 file or an inclusive 1-based line range. Filesystem paths are workspace-scoped unless unrestricted paths are explicitly enabled.",
|
|
104
|
+
"availability": "always",
|
|
105
|
+
"annotations": {
|
|
106
|
+
"readOnlyHint": true,
|
|
107
|
+
"destructiveHint": false,
|
|
108
|
+
"idempotentHint": true,
|
|
109
|
+
"openWorldHint": false
|
|
110
|
+
},
|
|
111
|
+
"inputSchema": {
|
|
112
|
+
"type": "object",
|
|
113
|
+
"properties": {
|
|
114
|
+
"path": {
|
|
115
|
+
"type": "string"
|
|
116
|
+
},
|
|
117
|
+
"start_line": {
|
|
118
|
+
"type": "integer",
|
|
119
|
+
"minimum": 1
|
|
120
|
+
},
|
|
121
|
+
"end_line": {
|
|
122
|
+
"type": "integer",
|
|
123
|
+
"minimum": 1
|
|
124
|
+
},
|
|
125
|
+
"max_bytes": {
|
|
126
|
+
"type": "integer",
|
|
127
|
+
"minimum": 1,
|
|
128
|
+
"maximum": 5242880,
|
|
129
|
+
"default": 1048576
|
|
130
|
+
}
|
|
131
|
+
},
|
|
132
|
+
"required": [
|
|
133
|
+
"path"
|
|
134
|
+
],
|
|
135
|
+
"additionalProperties": false
|
|
136
|
+
}
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
"name": "view_image",
|
|
140
|
+
"title": "View image",
|
|
141
|
+
"description": "Read a bounded PNG, JPEG, GIF, or WebP image from the workspace and return native MCP image content.",
|
|
142
|
+
"availability": "always",
|
|
143
|
+
"annotations": {
|
|
144
|
+
"readOnlyHint": true,
|
|
145
|
+
"destructiveHint": false,
|
|
146
|
+
"idempotentHint": true,
|
|
147
|
+
"openWorldHint": false
|
|
148
|
+
},
|
|
149
|
+
"inputSchema": {
|
|
150
|
+
"type": "object",
|
|
151
|
+
"properties": {
|
|
152
|
+
"path": {
|
|
153
|
+
"type": "string"
|
|
154
|
+
}
|
|
155
|
+
},
|
|
156
|
+
"required": [
|
|
157
|
+
"path"
|
|
158
|
+
],
|
|
159
|
+
"additionalProperties": false
|
|
160
|
+
}
|
|
161
|
+
},
|
|
162
|
+
{
|
|
163
|
+
"name": "write_file",
|
|
164
|
+
"title": "Write text file",
|
|
165
|
+
"description": "Atomically write a UTF-8 file up to 5 MiB. Supports create-only and optimistic SHA-256 checks; symbolic-link destinations are rejected.",
|
|
166
|
+
"availability": "write",
|
|
167
|
+
"annotations": {
|
|
168
|
+
"readOnlyHint": false,
|
|
169
|
+
"destructiveHint": true,
|
|
170
|
+
"idempotentHint": false,
|
|
171
|
+
"openWorldHint": false
|
|
172
|
+
},
|
|
173
|
+
"inputSchema": {
|
|
174
|
+
"type": "object",
|
|
175
|
+
"properties": {
|
|
176
|
+
"path": {
|
|
177
|
+
"type": "string"
|
|
178
|
+
},
|
|
179
|
+
"content": {
|
|
180
|
+
"type": "string"
|
|
181
|
+
},
|
|
182
|
+
"create_only": {
|
|
183
|
+
"type": "boolean",
|
|
184
|
+
"default": false
|
|
185
|
+
},
|
|
186
|
+
"expected_sha256": {
|
|
187
|
+
"type": "string",
|
|
188
|
+
"pattern": "^[a-fA-F0-9]{64}$"
|
|
189
|
+
}
|
|
190
|
+
},
|
|
191
|
+
"required": [
|
|
192
|
+
"path",
|
|
193
|
+
"content"
|
|
194
|
+
],
|
|
195
|
+
"additionalProperties": false
|
|
196
|
+
}
|
|
197
|
+
},
|
|
198
|
+
{
|
|
199
|
+
"name": "edit_file",
|
|
200
|
+
"title": "Edit text file",
|
|
201
|
+
"description": "Atomically replace an exact text fragment in one UTF-8 file. By default the old text must occur exactly once.",
|
|
202
|
+
"availability": "write",
|
|
203
|
+
"annotations": {
|
|
204
|
+
"readOnlyHint": false,
|
|
205
|
+
"destructiveHint": true,
|
|
206
|
+
"idempotentHint": false,
|
|
207
|
+
"openWorldHint": false
|
|
208
|
+
},
|
|
209
|
+
"inputSchema": {
|
|
210
|
+
"type": "object",
|
|
211
|
+
"properties": {
|
|
212
|
+
"path": {
|
|
213
|
+
"type": "string"
|
|
214
|
+
},
|
|
215
|
+
"old_text": {
|
|
216
|
+
"type": "string",
|
|
217
|
+
"minLength": 1
|
|
218
|
+
},
|
|
219
|
+
"new_text": {
|
|
220
|
+
"type": "string"
|
|
221
|
+
},
|
|
222
|
+
"replace_all": {
|
|
223
|
+
"type": "boolean",
|
|
224
|
+
"default": false
|
|
225
|
+
},
|
|
226
|
+
"expected_sha256": {
|
|
227
|
+
"type": "string",
|
|
228
|
+
"pattern": "^[a-fA-F0-9]{64}$"
|
|
229
|
+
}
|
|
230
|
+
},
|
|
231
|
+
"required": [
|
|
232
|
+
"path",
|
|
233
|
+
"old_text",
|
|
234
|
+
"new_text"
|
|
235
|
+
],
|
|
236
|
+
"additionalProperties": false
|
|
237
|
+
}
|
|
238
|
+
},
|
|
239
|
+
{
|
|
240
|
+
"name": "apply_patch",
|
|
241
|
+
"title": "Apply structured patch",
|
|
242
|
+
"description": "Apply a bounded Begin Patch/End Patch envelope containing add, update, move, or delete file operations. All paths are prevalidated and mutations are serialized.",
|
|
243
|
+
"availability": "write",
|
|
244
|
+
"annotations": {
|
|
245
|
+
"readOnlyHint": false,
|
|
246
|
+
"destructiveHint": true,
|
|
247
|
+
"idempotentHint": false,
|
|
248
|
+
"openWorldHint": false
|
|
249
|
+
},
|
|
250
|
+
"inputSchema": {
|
|
251
|
+
"type": "object",
|
|
252
|
+
"properties": {
|
|
253
|
+
"patch": {
|
|
254
|
+
"type": "string",
|
|
255
|
+
"minLength": 1,
|
|
256
|
+
"maxLength": 5242880
|
|
257
|
+
}
|
|
258
|
+
},
|
|
259
|
+
"required": [
|
|
260
|
+
"patch"
|
|
261
|
+
],
|
|
262
|
+
"additionalProperties": false
|
|
263
|
+
}
|
|
264
|
+
},
|
|
265
|
+
{
|
|
266
|
+
"name": "search_text",
|
|
267
|
+
"title": "Search text",
|
|
268
|
+
"description": "Search UTF-8 text files under a workspace path for a literal substring.",
|
|
269
|
+
"availability": "always",
|
|
270
|
+
"annotations": {
|
|
271
|
+
"readOnlyHint": true,
|
|
272
|
+
"destructiveHint": false,
|
|
273
|
+
"idempotentHint": true,
|
|
274
|
+
"openWorldHint": false
|
|
275
|
+
},
|
|
276
|
+
"inputSchema": {
|
|
277
|
+
"type": "object",
|
|
278
|
+
"properties": {
|
|
279
|
+
"query": {
|
|
280
|
+
"type": "string",
|
|
281
|
+
"minLength": 1
|
|
282
|
+
},
|
|
283
|
+
"path": {
|
|
284
|
+
"type": "string",
|
|
285
|
+
"default": "."
|
|
286
|
+
},
|
|
287
|
+
"max_matches": {
|
|
288
|
+
"type": "integer",
|
|
289
|
+
"minimum": 1,
|
|
290
|
+
"maximum": 1000,
|
|
291
|
+
"default": 100
|
|
292
|
+
},
|
|
293
|
+
"max_files": {
|
|
294
|
+
"type": "integer",
|
|
295
|
+
"minimum": 1,
|
|
296
|
+
"maximum": 100000,
|
|
297
|
+
"default": 10000
|
|
298
|
+
}
|
|
299
|
+
},
|
|
300
|
+
"required": [
|
|
301
|
+
"query"
|
|
302
|
+
],
|
|
303
|
+
"additionalProperties": false
|
|
304
|
+
}
|
|
305
|
+
},
|
|
306
|
+
{
|
|
307
|
+
"name": "git_status",
|
|
308
|
+
"title": "Git status",
|
|
309
|
+
"description": "Return bounded Git porcelain status for the repository containing a workspace path.",
|
|
310
|
+
"availability": "always",
|
|
311
|
+
"annotations": {
|
|
312
|
+
"readOnlyHint": true,
|
|
313
|
+
"destructiveHint": false,
|
|
314
|
+
"idempotentHint": true,
|
|
315
|
+
"openWorldHint": false
|
|
316
|
+
},
|
|
317
|
+
"inputSchema": {
|
|
318
|
+
"type": "object",
|
|
319
|
+
"properties": {
|
|
320
|
+
"path": {
|
|
321
|
+
"type": "string",
|
|
322
|
+
"default": "."
|
|
323
|
+
}
|
|
324
|
+
},
|
|
325
|
+
"additionalProperties": false
|
|
326
|
+
}
|
|
327
|
+
},
|
|
328
|
+
{
|
|
329
|
+
"name": "git_diff",
|
|
330
|
+
"title": "Git diff",
|
|
331
|
+
"description": "Return bounded unified Git diff with external diff, text conversion, and filesystem monitor helpers disabled.",
|
|
332
|
+
"availability": "always",
|
|
333
|
+
"annotations": {
|
|
334
|
+
"readOnlyHint": true,
|
|
335
|
+
"destructiveHint": false,
|
|
336
|
+
"idempotentHint": true,
|
|
337
|
+
"openWorldHint": false
|
|
338
|
+
},
|
|
339
|
+
"inputSchema": {
|
|
340
|
+
"type": "object",
|
|
341
|
+
"properties": {
|
|
342
|
+
"path": {
|
|
343
|
+
"type": "string",
|
|
344
|
+
"default": "."
|
|
345
|
+
},
|
|
346
|
+
"staged": {
|
|
347
|
+
"type": "boolean",
|
|
348
|
+
"default": false
|
|
349
|
+
},
|
|
350
|
+
"max_bytes": {
|
|
351
|
+
"type": "integer",
|
|
352
|
+
"minimum": 1,
|
|
353
|
+
"maximum": 5242880,
|
|
354
|
+
"default": 1048576
|
|
355
|
+
}
|
|
356
|
+
},
|
|
357
|
+
"additionalProperties": false
|
|
358
|
+
}
|
|
359
|
+
},
|
|
360
|
+
{
|
|
361
|
+
"name": "git_log",
|
|
362
|
+
"title": "Git log",
|
|
363
|
+
"description": "Return recent commits in a bounded, machine-readable format. Author email addresses are omitted unless explicitly requested.",
|
|
364
|
+
"availability": "always",
|
|
365
|
+
"annotations": {
|
|
366
|
+
"readOnlyHint": true,
|
|
367
|
+
"destructiveHint": false,
|
|
368
|
+
"idempotentHint": true,
|
|
369
|
+
"openWorldHint": false
|
|
370
|
+
},
|
|
371
|
+
"inputSchema": {
|
|
372
|
+
"type": "object",
|
|
373
|
+
"properties": {
|
|
374
|
+
"path": {
|
|
375
|
+
"type": "string",
|
|
376
|
+
"default": "."
|
|
377
|
+
},
|
|
378
|
+
"max_count": {
|
|
379
|
+
"type": "integer",
|
|
380
|
+
"minimum": 1,
|
|
381
|
+
"maximum": 100,
|
|
382
|
+
"default": 20
|
|
383
|
+
},
|
|
384
|
+
"include_author_email": {
|
|
385
|
+
"type": "boolean",
|
|
386
|
+
"default": false
|
|
387
|
+
}
|
|
388
|
+
},
|
|
389
|
+
"additionalProperties": false
|
|
390
|
+
}
|
|
391
|
+
},
|
|
392
|
+
{
|
|
393
|
+
"name": "git_show",
|
|
394
|
+
"title": "Git show",
|
|
395
|
+
"description": "Return bounded metadata and patch output for one revision without running repository-configured external helpers.",
|
|
396
|
+
"availability": "always",
|
|
397
|
+
"annotations": {
|
|
398
|
+
"readOnlyHint": true,
|
|
399
|
+
"destructiveHint": false,
|
|
400
|
+
"idempotentHint": true,
|
|
401
|
+
"openWorldHint": false
|
|
402
|
+
},
|
|
403
|
+
"inputSchema": {
|
|
404
|
+
"type": "object",
|
|
405
|
+
"properties": {
|
|
406
|
+
"path": {
|
|
407
|
+
"type": "string",
|
|
408
|
+
"default": "."
|
|
409
|
+
},
|
|
410
|
+
"revision": {
|
|
411
|
+
"type": "string",
|
|
412
|
+
"default": "HEAD"
|
|
413
|
+
},
|
|
414
|
+
"max_bytes": {
|
|
415
|
+
"type": "integer",
|
|
416
|
+
"minimum": 1,
|
|
417
|
+
"maximum": 5242880,
|
|
418
|
+
"default": 1048576
|
|
419
|
+
}
|
|
420
|
+
},
|
|
421
|
+
"additionalProperties": false
|
|
422
|
+
}
|
|
423
|
+
},
|
|
424
|
+
{
|
|
425
|
+
"name": "run_process",
|
|
426
|
+
"title": "Run process directly",
|
|
427
|
+
"description": "Execute an argv array without a command shell. This avoids shell parsing but does not sandbox the executable or code it launches.",
|
|
428
|
+
"availability": "direct-exec",
|
|
429
|
+
"annotations": {
|
|
430
|
+
"readOnlyHint": false,
|
|
431
|
+
"destructiveHint": true,
|
|
432
|
+
"idempotentHint": false,
|
|
433
|
+
"openWorldHint": true
|
|
434
|
+
},
|
|
435
|
+
"inputSchema": {
|
|
436
|
+
"type": "object",
|
|
437
|
+
"properties": {
|
|
438
|
+
"argv": {
|
|
439
|
+
"type": "array",
|
|
440
|
+
"items": {
|
|
441
|
+
"type": "string"
|
|
442
|
+
},
|
|
443
|
+
"minItems": 1,
|
|
444
|
+
"maxItems": 256
|
|
445
|
+
},
|
|
446
|
+
"cwd": {
|
|
447
|
+
"type": "string",
|
|
448
|
+
"default": "."
|
|
449
|
+
},
|
|
450
|
+
"timeout_seconds": {
|
|
451
|
+
"type": "integer",
|
|
452
|
+
"minimum": 1,
|
|
453
|
+
"maximum": 600,
|
|
454
|
+
"default": 120
|
|
455
|
+
}
|
|
456
|
+
},
|
|
457
|
+
"required": [
|
|
458
|
+
"argv"
|
|
459
|
+
],
|
|
460
|
+
"additionalProperties": false
|
|
461
|
+
}
|
|
462
|
+
},
|
|
463
|
+
{
|
|
464
|
+
"name": "start_process",
|
|
465
|
+
"title": "Start process session",
|
|
466
|
+
"description": "Start a direct argv process without a shell and retain bounded stdout, stderr, and stdin state across MCP calls.",
|
|
467
|
+
"availability": "direct-exec",
|
|
468
|
+
"annotations": {
|
|
469
|
+
"readOnlyHint": false,
|
|
470
|
+
"destructiveHint": true,
|
|
471
|
+
"idempotentHint": false,
|
|
472
|
+
"openWorldHint": true
|
|
473
|
+
},
|
|
474
|
+
"inputSchema": {
|
|
475
|
+
"type": "object",
|
|
476
|
+
"properties": {
|
|
477
|
+
"argv": {
|
|
478
|
+
"type": "array",
|
|
479
|
+
"items": {
|
|
480
|
+
"type": "string"
|
|
481
|
+
},
|
|
482
|
+
"minItems": 1,
|
|
483
|
+
"maxItems": 256
|
|
484
|
+
},
|
|
485
|
+
"cwd": {
|
|
486
|
+
"type": "string",
|
|
487
|
+
"default": "."
|
|
488
|
+
}
|
|
489
|
+
},
|
|
490
|
+
"required": [
|
|
491
|
+
"argv"
|
|
492
|
+
],
|
|
493
|
+
"additionalProperties": false
|
|
494
|
+
}
|
|
495
|
+
},
|
|
496
|
+
{
|
|
497
|
+
"name": "read_process",
|
|
498
|
+
"title": "Read process session",
|
|
499
|
+
"description": "Read bounded stdout and stderr deltas from a server-managed process session, optionally waiting briefly for new output.",
|
|
500
|
+
"availability": "direct-exec",
|
|
501
|
+
"annotations": {
|
|
502
|
+
"readOnlyHint": true,
|
|
503
|
+
"destructiveHint": false,
|
|
504
|
+
"idempotentHint": true,
|
|
505
|
+
"openWorldHint": false
|
|
506
|
+
},
|
|
507
|
+
"inputSchema": {
|
|
508
|
+
"type": "object",
|
|
509
|
+
"properties": {
|
|
510
|
+
"session_id": {
|
|
511
|
+
"type": "string"
|
|
512
|
+
},
|
|
513
|
+
"stdout_offset": {
|
|
514
|
+
"type": "integer",
|
|
515
|
+
"minimum": 0,
|
|
516
|
+
"default": 0
|
|
517
|
+
},
|
|
518
|
+
"stderr_offset": {
|
|
519
|
+
"type": "integer",
|
|
520
|
+
"minimum": 0,
|
|
521
|
+
"default": 0
|
|
522
|
+
},
|
|
523
|
+
"max_bytes": {
|
|
524
|
+
"type": "integer",
|
|
525
|
+
"minimum": 1,
|
|
526
|
+
"maximum": 262144,
|
|
527
|
+
"default": 65536
|
|
528
|
+
},
|
|
529
|
+
"wait_ms": {
|
|
530
|
+
"type": "integer",
|
|
531
|
+
"minimum": 0,
|
|
532
|
+
"maximum": 30000,
|
|
533
|
+
"default": 0
|
|
534
|
+
},
|
|
535
|
+
"wait_for_exit": {
|
|
536
|
+
"type": "boolean",
|
|
537
|
+
"default": false
|
|
538
|
+
}
|
|
539
|
+
},
|
|
540
|
+
"required": [
|
|
541
|
+
"session_id"
|
|
542
|
+
],
|
|
543
|
+
"additionalProperties": false
|
|
544
|
+
}
|
|
545
|
+
},
|
|
546
|
+
{
|
|
547
|
+
"name": "write_process",
|
|
548
|
+
"title": "Write process stdin",
|
|
549
|
+
"description": "Write bounded UTF-8 data to a live process session and optionally close its stdin stream.",
|
|
550
|
+
"availability": "direct-exec",
|
|
551
|
+
"annotations": {
|
|
552
|
+
"readOnlyHint": false,
|
|
553
|
+
"destructiveHint": true,
|
|
554
|
+
"idempotentHint": false,
|
|
555
|
+
"openWorldHint": true
|
|
556
|
+
},
|
|
557
|
+
"inputSchema": {
|
|
558
|
+
"type": "object",
|
|
559
|
+
"properties": {
|
|
560
|
+
"session_id": {
|
|
561
|
+
"type": "string"
|
|
562
|
+
},
|
|
563
|
+
"data": {
|
|
564
|
+
"type": "string",
|
|
565
|
+
"maxLength": 65536
|
|
566
|
+
},
|
|
567
|
+
"close_stdin": {
|
|
568
|
+
"type": "boolean",
|
|
569
|
+
"default": false
|
|
570
|
+
}
|
|
571
|
+
},
|
|
572
|
+
"required": [
|
|
573
|
+
"session_id"
|
|
574
|
+
],
|
|
575
|
+
"additionalProperties": false
|
|
576
|
+
}
|
|
577
|
+
},
|
|
578
|
+
{
|
|
579
|
+
"name": "kill_process",
|
|
580
|
+
"title": "Terminate process session",
|
|
581
|
+
"description": "Terminate a live server-managed process tree with graceful or forced termination.",
|
|
582
|
+
"availability": "direct-exec",
|
|
583
|
+
"annotations": {
|
|
584
|
+
"readOnlyHint": false,
|
|
585
|
+
"destructiveHint": true,
|
|
586
|
+
"idempotentHint": true,
|
|
587
|
+
"openWorldHint": true
|
|
588
|
+
},
|
|
589
|
+
"inputSchema": {
|
|
590
|
+
"type": "object",
|
|
591
|
+
"properties": {
|
|
592
|
+
"session_id": {
|
|
593
|
+
"type": "string"
|
|
594
|
+
},
|
|
595
|
+
"force": {
|
|
596
|
+
"type": "boolean",
|
|
597
|
+
"default": false
|
|
598
|
+
}
|
|
599
|
+
},
|
|
600
|
+
"required": [
|
|
601
|
+
"session_id"
|
|
602
|
+
],
|
|
603
|
+
"additionalProperties": false
|
|
604
|
+
}
|
|
605
|
+
},
|
|
606
|
+
{
|
|
607
|
+
"name": "exec_command",
|
|
608
|
+
"title": "Execute shell command",
|
|
609
|
+
"description": "Execute a shell command with workspace cwd. This is not a sandbox and has the operating-system authority of the local user.",
|
|
610
|
+
"availability": "shell-exec",
|
|
611
|
+
"annotations": {
|
|
612
|
+
"readOnlyHint": false,
|
|
613
|
+
"destructiveHint": true,
|
|
614
|
+
"idempotentHint": false,
|
|
615
|
+
"openWorldHint": true
|
|
616
|
+
},
|
|
617
|
+
"inputSchema": {
|
|
618
|
+
"type": "object",
|
|
619
|
+
"properties": {
|
|
620
|
+
"command": {
|
|
621
|
+
"type": "string",
|
|
622
|
+
"minLength": 1,
|
|
623
|
+
"maxLength": 65536
|
|
624
|
+
},
|
|
625
|
+
"timeout_seconds": {
|
|
626
|
+
"type": "integer",
|
|
627
|
+
"minimum": 1,
|
|
628
|
+
"maximum": 600,
|
|
629
|
+
"default": 120
|
|
630
|
+
}
|
|
631
|
+
},
|
|
632
|
+
"required": [
|
|
633
|
+
"command"
|
|
634
|
+
],
|
|
635
|
+
"additionalProperties": false
|
|
636
|
+
}
|
|
637
|
+
}
|
|
638
|
+
]
|