@debugg-ai/debugg-ai-mcp 2.8.1 → 2.9.1
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.
|
@@ -29,23 +29,8 @@ export const createWorkflowsService = (tx) => {
|
|
|
29
29
|
return match;
|
|
30
30
|
},
|
|
31
31
|
async findEvaluationTemplate() {
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
// to both resolve without config changes. 'evaluation workflow' is specific
|
|
35
|
-
// enough to exclude 'Browser Use Evaluation Brain'.
|
|
36
|
-
const envOverride = process.env.DEBUGGAI_EVAL_TEMPLATE;
|
|
37
|
-
const keywords = envOverride
|
|
38
|
-
? [envOverride]
|
|
39
|
-
: ['app evaluation', 'evaluation workflow'];
|
|
40
|
-
for (const keyword of keywords) {
|
|
41
|
-
try {
|
|
42
|
-
return await service.findTemplateByName(keyword);
|
|
43
|
-
}
|
|
44
|
-
catch {
|
|
45
|
-
// keyword not matched on this backend, try next
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
return null;
|
|
32
|
+
const keyword = process.env.DEBUGGAI_EVAL_TEMPLATE || 'app evaluation';
|
|
33
|
+
return service.findTemplateByName(keyword);
|
|
49
34
|
},
|
|
50
35
|
async executeWorkflow(workflowUuid, contextData, env) {
|
|
51
36
|
const body = { contextData };
|
|
@@ -1,6 +1,18 @@
|
|
|
1
1
|
import { UpdateEnvironmentInputSchema } from '../types/index.js';
|
|
2
2
|
import { updateEnvironmentHandler } from '../handlers/updateEnvironmentHandler.js';
|
|
3
|
-
const DESCRIPTION = `Patch an environment by UUID.
|
|
3
|
+
const DESCRIPTION = `Patch an environment by UUID. Updates fields and/or manages credentials in a single call.
|
|
4
|
+
|
|
5
|
+
ENVIRONMENT FIELDS (all optional — only specified fields change):
|
|
6
|
+
- name, url, description
|
|
7
|
+
|
|
8
|
+
CREDENTIAL MANAGEMENT:
|
|
9
|
+
- addCredentials: [{label, username, password, role?}] — add one or more login credentials to this environment
|
|
10
|
+
- updateCredentials: [{uuid, label?, username?, password?, role?}] — patch existing credentials by UUID
|
|
11
|
+
- removeCredentialIds: ["<uuid>", ...] — delete credentials by UUID
|
|
12
|
+
|
|
13
|
+
Operations run in order: remove → update → add. All credential ops are best-effort — failures go to credentialWarnings without blocking the rest. Passwords are write-only and NEVER returned in responses.
|
|
14
|
+
|
|
15
|
+
Returns {updated, environment, addedCredentials?, updatedCredentials?, removedCredentialIds?, credentialWarnings?}. Returns isError:true with NotFound when the env uuid doesn't exist.`;
|
|
4
16
|
export function buildUpdateEnvironmentTool() {
|
|
5
17
|
return {
|
|
6
18
|
name: 'update_environment',
|
|
@@ -14,6 +26,42 @@ export function buildUpdateEnvironmentTool() {
|
|
|
14
26
|
url: { type: 'string', description: 'Optional: new base URL.' },
|
|
15
27
|
description: { type: 'string', description: 'Optional: new description.' },
|
|
16
28
|
projectUuid: { type: 'string', description: 'Optional: UUID of the target project. Defaults to git-auto-detect.' },
|
|
29
|
+
addCredentials: {
|
|
30
|
+
type: 'array',
|
|
31
|
+
description: 'Add new login credentials to the environment. Each entry requires label, username, password. role is optional.',
|
|
32
|
+
items: {
|
|
33
|
+
type: 'object',
|
|
34
|
+
properties: {
|
|
35
|
+
label: { type: 'string', description: 'Human-readable name (e.g. "admin user", "test account").' },
|
|
36
|
+
username: { type: 'string', description: 'Login email or username.' },
|
|
37
|
+
password: { type: 'string', description: 'Password. Write-only — never returned.' },
|
|
38
|
+
role: { type: 'string', description: 'Optional role tag (e.g. "admin", "guest").' },
|
|
39
|
+
},
|
|
40
|
+
required: ['label', 'username', 'password'],
|
|
41
|
+
additionalProperties: false,
|
|
42
|
+
},
|
|
43
|
+
},
|
|
44
|
+
updateCredentials: {
|
|
45
|
+
type: 'array',
|
|
46
|
+
description: 'Patch existing credentials by UUID. Only specified fields change.',
|
|
47
|
+
items: {
|
|
48
|
+
type: 'object',
|
|
49
|
+
properties: {
|
|
50
|
+
uuid: { type: 'string', description: 'UUID of the credential to update.' },
|
|
51
|
+
label: { type: 'string' },
|
|
52
|
+
username: { type: 'string' },
|
|
53
|
+
password: { type: 'string', description: 'Write-only — never returned.' },
|
|
54
|
+
role: { type: 'string' },
|
|
55
|
+
},
|
|
56
|
+
required: ['uuid'],
|
|
57
|
+
additionalProperties: false,
|
|
58
|
+
},
|
|
59
|
+
},
|
|
60
|
+
removeCredentialIds: {
|
|
61
|
+
type: 'array',
|
|
62
|
+
description: 'UUIDs of credentials to delete.',
|
|
63
|
+
items: { type: 'string' },
|
|
64
|
+
},
|
|
17
65
|
},
|
|
18
66
|
required: ['uuid'],
|
|
19
67
|
additionalProperties: false,
|