@mcp-monorepo/jira 1.2.0 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +93 -11
- package/dist/index.js +21 -5
- package/dist/index.js.map +1 -1
- package/dist/lib/adf-utils.d.ts +19 -0
- package/dist/lib/adf-utils.d.ts.map +1 -0
- package/dist/lib/adf-utils.js +52 -0
- package/dist/lib/adf-utils.js.map +1 -0
- package/dist/lib/jira-env.d.ts +12 -3
- package/dist/lib/jira-env.d.ts.map +1 -1
- package/dist/lib/jira-env.js +19 -7
- package/dist/lib/jira-env.js.map +1 -1
- package/dist/lib/jira.service.d.ts +29 -2
- package/dist/lib/jira.service.d.ts.map +1 -1
- package/dist/lib/jira.service.js +168 -14
- package/dist/lib/jira.service.js.map +1 -1
- package/dist/lib/types.d.ts +91 -3
- package/dist/lib/types.d.ts.map +1 -1
- package/dist/tools/add-comment.d.ts +3 -0
- package/dist/tools/add-comment.d.ts.map +1 -0
- package/dist/tools/add-comment.js +38 -0
- package/dist/tools/add-comment.js.map +1 -0
- package/dist/tools/create-issue.d.ts +3 -0
- package/dist/tools/create-issue.d.ts.map +1 -0
- package/dist/tools/create-issue.js +48 -0
- package/dist/tools/create-issue.js.map +1 -0
- package/dist/tools/execute-jql.d.ts.map +1 -1
- package/dist/tools/execute-jql.js +39 -12
- package/dist/tools/execute-jql.js.map +1 -1
- package/dist/tools/get-create-metadata.d.ts +3 -0
- package/dist/tools/get-create-metadata.d.ts.map +1 -0
- package/dist/tools/get-create-metadata.js +59 -0
- package/dist/tools/get-create-metadata.js.map +1 -0
- package/dist/tools/get-current-profile.js +1 -1
- package/dist/tools/get-current-profile.js.map +1 -1
- package/dist/tools/get-issue.d.ts.map +1 -1
- package/dist/tools/get-issue.js +3 -2
- package/dist/tools/get-issue.js.map +1 -1
- package/dist/tools/update-issue.d.ts +3 -0
- package/dist/tools/update-issue.d.ts.map +1 -0
- package/dist/tools/update-issue.js +43 -0
- package/dist/tools/update-issue.js.map +1 -0
- package/package.json +2 -1
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { registerTool } from '@mcp-monorepo/shared';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { getCreateMetadata } from '../lib/jira.service.js';
|
|
4
|
+
export const registerGetCreateMetadataTool = (server) => registerTool(server, {
|
|
5
|
+
name: 'get-create-metadata',
|
|
6
|
+
title: 'Get Jira Create Issue Metadata',
|
|
7
|
+
description: 'Get metadata about fields required to create issues in a project. Returns issue types, priorities, and field requirements. Use this to find valid issueTypeId and priorityId values for creating issues.',
|
|
8
|
+
inputSchema: {
|
|
9
|
+
projectKey: z.string().optional().describe('Filter by project key (e.g., "PROJ")'),
|
|
10
|
+
issueTypeId: z.string().optional().describe('Filter by specific issue type ID'),
|
|
11
|
+
},
|
|
12
|
+
outputSchema: {
|
|
13
|
+
projects: z.array(z.object({
|
|
14
|
+
key: z.string(),
|
|
15
|
+
name: z.string(),
|
|
16
|
+
issueTypes: z.array(z.object({
|
|
17
|
+
id: z.string(),
|
|
18
|
+
name: z.string(),
|
|
19
|
+
subtask: z.boolean(),
|
|
20
|
+
requiredFields: z.array(z.string()),
|
|
21
|
+
availablePriorities: z.array(z.object({ id: z.string(), name: z.string() })).optional(),
|
|
22
|
+
})),
|
|
23
|
+
})),
|
|
24
|
+
},
|
|
25
|
+
isReadOnly: true,
|
|
26
|
+
async fetcher(params) {
|
|
27
|
+
return getCreateMetadata(params.projectKey, params.issueTypeId);
|
|
28
|
+
},
|
|
29
|
+
formatter(data) {
|
|
30
|
+
// Filter response to only show essential information
|
|
31
|
+
return {
|
|
32
|
+
projects: data.projects.map((project) => ({
|
|
33
|
+
key: project.key,
|
|
34
|
+
name: project.name,
|
|
35
|
+
issueTypes: project.issuetypes.map((issueType) => {
|
|
36
|
+
const fields = issueType.fields;
|
|
37
|
+
// Extract required fields
|
|
38
|
+
const requiredFields = Object.entries(fields)
|
|
39
|
+
.filter(([, meta]) => meta.required)
|
|
40
|
+
.map(([key]) => key);
|
|
41
|
+
// Extract priorities if available
|
|
42
|
+
const priorityField = fields.priority;
|
|
43
|
+
const availablePriorities = priorityField?.allowedValues?.map((p) => ({
|
|
44
|
+
id: p.id ?? '',
|
|
45
|
+
name: p.name ?? '',
|
|
46
|
+
}));
|
|
47
|
+
return {
|
|
48
|
+
id: issueType.id,
|
|
49
|
+
name: issueType.name,
|
|
50
|
+
subtask: issueType.subtask,
|
|
51
|
+
requiredFields,
|
|
52
|
+
...(availablePriorities && availablePriorities.length > 0 && { availablePriorities }),
|
|
53
|
+
};
|
|
54
|
+
}),
|
|
55
|
+
})),
|
|
56
|
+
};
|
|
57
|
+
},
|
|
58
|
+
});
|
|
59
|
+
//# sourceMappingURL=get-create-metadata.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-create-metadata.js","sourceRoot":"","sources":["../../src/tools/get-create-metadata.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,7 +8,7 @@ export const registerGetCurrentProfileTool = (server) => registerTool(server, {
|
|
|
8
8
|
inputSchema: {},
|
|
9
9
|
outputSchema: {
|
|
10
10
|
displayName: z.string(),
|
|
11
|
-
emailAddress: z.string(),
|
|
11
|
+
emailAddress: z.string().nullable(),
|
|
12
12
|
accountId: z.string(),
|
|
13
13
|
},
|
|
14
14
|
isReadOnly: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-current-profile.js","sourceRoot":"","sources":["../../src/tools/get-current-profile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAI1D,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,MAAiB,EAAE,EAAE,CACjE,YAAY,CAAC,MAAM,EAAE;IACnB,IAAI,EAAE,qBAAqB;IAC3B,KAAK,EAAE,0BAA0B;IACjC,WAAW,EAAE,4DAA4D;IACzE,WAAW,EAAE,EAAE;IACf,YAAY,EAAE;QACZ,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;QACvB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;
|
|
1
|
+
{"version":3,"file":"get-current-profile.js","sourceRoot":"","sources":["../../src/tools/get-current-profile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAI1D,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,MAAiB,EAAE,EAAE,CACjE,YAAY,CAAC,MAAM,EAAE;IACnB,IAAI,EAAE,qBAAqB;IAC3B,KAAK,EAAE,0BAA0B;IACjC,WAAW,EAAE,4DAA4D;IACzE,WAAW,EAAE,EAAE;IACf,YAAY,EAAE;QACZ,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;QACvB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QACnC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;KACtB;IACD,UAAU,EAAE,IAAI;IAChB,KAAK,CAAC,OAAO;QACX,OAAO,iBAAiB,EAAE,CAAA;IAC5B,CAAC;IACD,SAAS,CAAC,IAAI;QACZ,OAAO;YACL,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAA;IACH,CAAC;CACF,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-issue.d.ts","sourceRoot":"","sources":["../../src/tools/get-issue.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"get-issue.d.ts","sourceRoot":"","sources":["../../src/tools/get-issue.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AAExE,eAAO,MAAM,oBAAoB,GAAI,QAAQ,SAAS,SA8BlD,CAAA"}
|
package/dist/tools/get-issue.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { registerTool } from '@mcp-monorepo/shared';
|
|
2
2
|
import { z } from 'zod';
|
|
3
|
+
import { adfToMd } from '../lib/adf-utils.js';
|
|
3
4
|
import { getIssue } from '../lib/jira.service.js';
|
|
4
5
|
export const registerGetIssueTool = (server) => registerTool(server, {
|
|
5
6
|
name: 'get-issue',
|
|
@@ -15,7 +16,7 @@ export const registerGetIssueTool = (server) => registerTool(server, {
|
|
|
15
16
|
summary: z.string().optional(),
|
|
16
17
|
status: z.string().optional(),
|
|
17
18
|
assignee: z.string().optional(),
|
|
18
|
-
description: z.string().optional(),
|
|
19
|
+
description: z.string().optional(), // Always markdown (converted from ADF in v3)
|
|
19
20
|
},
|
|
20
21
|
isReadOnly: true,
|
|
21
22
|
async fetcher({ issueIdOrKey, fields, expand }) {
|
|
@@ -27,7 +28,7 @@ export const registerGetIssueTool = (server) => registerTool(server, {
|
|
|
27
28
|
summary: data.fields.summary,
|
|
28
29
|
status: data.fields.status?.name,
|
|
29
30
|
assignee: data.fields.assignee?.displayName,
|
|
30
|
-
description: data.fields.description,
|
|
31
|
+
description: adfToMd(data.fields.description), // Convert ADF to Markdown
|
|
31
32
|
};
|
|
32
33
|
},
|
|
33
34
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-issue.js","sourceRoot":"","sources":["../../src/tools/get-issue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AAIjD,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,MAAiB,EAAE,EAAE,CACxD,YAAY,CAAC,MAAM,EAAE;IACnB,IAAI,EAAE,WAAW;IACjB,KAAK,EAAE,gBAAgB;IACvB,WAAW,EAAE,kDAAkD;IAC/D,WAAW,EAAE;QACX,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;QACjE,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wDAAwD,CAAC;QACzG,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;KAChG;IACD,YAAY,EAAE;QACZ,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;QACf,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC9B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC7B,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC/B,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;
|
|
1
|
+
{"version":3,"file":"get-issue.js","sourceRoot":"","sources":["../../src/tools/get-issue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AAIjD,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,MAAiB,EAAE,EAAE,CACxD,YAAY,CAAC,MAAM,EAAE;IACnB,IAAI,EAAE,WAAW;IACjB,KAAK,EAAE,gBAAgB;IACvB,WAAW,EAAE,kDAAkD;IAC/D,WAAW,EAAE;QACX,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;QACjE,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wDAAwD,CAAC;QACzG,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;KAChG;IACD,YAAY,EAAE;QACZ,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;QACf,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC9B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC7B,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC/B,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,6CAA6C;KAClF;IACD,UAAU,EAAE,IAAI;IAChB,KAAK,CAAC,OAAO,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE;QAC5C,OAAO,QAAQ,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;IAC/C,CAAC;IACD,SAAS,CAAC,IAAI;QACZ,OAAO;YACL,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;YAC5B,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI;YAChC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,WAAW;YAC3C,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,0BAA0B;SAC1E,CAAA;IACH,CAAC;CACF,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-issue.d.ts","sourceRoot":"","sources":["../../src/tools/update-issue.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AAExE,eAAO,MAAM,uBAAuB,GAAI,QAAQ,SAAS,SAuCrD,CAAA"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { registerTool } from '@mcp-monorepo/shared';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { getJiraBaseUrl } from '../lib/jira-env.js';
|
|
4
|
+
import { updateIssue } from '../lib/jira.service.js';
|
|
5
|
+
export const registerUpdateIssueTool = (server) => registerTool(server, {
|
|
6
|
+
name: 'update-issue',
|
|
7
|
+
title: 'Update Jira Issue',
|
|
8
|
+
description: 'Update fields of an existing Jira issue. Only provided fields will be updated, others remain unchanged.',
|
|
9
|
+
inputSchema: {
|
|
10
|
+
issueIdOrKey: z.string().describe('Issue key or ID (e.g., "PROJ-123")'),
|
|
11
|
+
summary: z.string().optional().describe('New issue title/summary'),
|
|
12
|
+
description: z
|
|
13
|
+
.string()
|
|
14
|
+
.optional()
|
|
15
|
+
.describe('New description (supports Markdown formatting in API v3, plain text in v2)'),
|
|
16
|
+
assigneeId: z
|
|
17
|
+
.string()
|
|
18
|
+
.optional()
|
|
19
|
+
.nullable()
|
|
20
|
+
.describe('Assignee account ID (null to unassign, undefined to leave unchanged)'),
|
|
21
|
+
priorityId: z.string().optional().describe('New priority ID'),
|
|
22
|
+
labels: z.array(z.string()).optional().describe('New labels (replaces existing labels)'),
|
|
23
|
+
},
|
|
24
|
+
outputSchema: {
|
|
25
|
+
success: z.boolean(),
|
|
26
|
+
issueKey: z.string(),
|
|
27
|
+
url: z.string(),
|
|
28
|
+
},
|
|
29
|
+
isReadOnly: false,
|
|
30
|
+
async fetcher(params) {
|
|
31
|
+
const { issueIdOrKey, ...updates } = params;
|
|
32
|
+
await updateIssue(issueIdOrKey, updates);
|
|
33
|
+
return { issueIdOrKey };
|
|
34
|
+
},
|
|
35
|
+
formatter(data) {
|
|
36
|
+
return {
|
|
37
|
+
success: true,
|
|
38
|
+
issueKey: data.issueIdOrKey,
|
|
39
|
+
url: `${getJiraBaseUrl()}/browse/${data.issueIdOrKey}`,
|
|
40
|
+
};
|
|
41
|
+
},
|
|
42
|
+
});
|
|
43
|
+
//# sourceMappingURL=update-issue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-issue.js","sourceRoot":"","sources":["../../src/tools/update-issue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AAIpD,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,MAAiB,EAAE,EAAE,CAC3D,YAAY,CAAC,MAAM,EAAE;IACnB,IAAI,EAAE,cAAc;IACpB,KAAK,EAAE,mBAAmB;IAC1B,WAAW,EACT,yGAAyG;IAC3G,WAAW,EAAE;QACX,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;QACvE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;QAClE,WAAW,EAAE,CAAC;aACX,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,4EAA4E,CAAC;QACzF,UAAU,EAAE,CAAC;aACV,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,EAAE;aACV,QAAQ,CAAC,sEAAsE,CAAC;QACnF,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC;QAC7D,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uCAAuC,CAAC;KACzF;IACD,YAAY,EAAE;QACZ,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;QACpB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;QACpB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;KAChB;IACD,UAAU,EAAE,KAAK;IACjB,KAAK,CAAC,OAAO,CAAC,MAAM;QAClB,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,EAAE,GAAG,MAAM,CAAA;QAC3C,MAAM,WAAW,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;QACxC,OAAO,EAAE,YAAY,EAAE,CAAA;IACzB,CAAC;IACD,SAAS,CAAC,IAAI;QACZ,OAAO;YACL,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,IAAI,CAAC,YAAY;YAC3B,GAAG,EAAE,GAAG,cAAc,EAAE,WAAW,IAAI,CAAC,YAAY,EAAE;SACvD,CAAA;IACH,CAAC;CACF,CAAC,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mcp-monorepo/jira",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.4.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "MCP server for Jira tools (JQL, issue management, etc.).",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -26,6 +26,7 @@
|
|
|
26
26
|
"dependencies": {
|
|
27
27
|
"@mcp-monorepo/shared": "1.2.0",
|
|
28
28
|
"@modelcontextprotocol/sdk": "^1.25.1",
|
|
29
|
+
"extended-markdown-adf-parser": "^2.4.0",
|
|
29
30
|
"zod": "^4.2.1"
|
|
30
31
|
},
|
|
31
32
|
"devDependencies": {
|