@arii/boomtick-mcp 0.6.2 → 0.7.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.
Files changed (109) hide show
  1. package/.mcp/schemas/boomtick.health.json +22 -3
  2. package/.mcp/schemas/boomtick_health.json +22 -3
  3. package/.mcp/schemas/github.checkout_branch.json +16 -3
  4. package/.mcp/schemas/github.comment_triage_summary.json +16 -3
  5. package/.mcp/schemas/github.create_pull_request.json +16 -3
  6. package/.mcp/schemas/github.get_merge_conflict_files.json +55 -5
  7. package/.mcp/schemas/github.get_pr.json +12 -3
  8. package/.mcp/schemas/github.get_pr_commits.json +12 -3
  9. package/.mcp/schemas/github.get_pr_reviews.json +24 -3
  10. package/.mcp/schemas/github.issue_comment.json +19 -3
  11. package/.mcp/schemas/github.issue_view.json +17 -3
  12. package/.mcp/schemas/github.open_replacement_pr.json +16 -3
  13. package/.mcp/schemas/github_checkout_branch.json +16 -3
  14. package/.mcp/schemas/github_comment_triage_summary.json +16 -3
  15. package/.mcp/schemas/github_create_pull_request.json +16 -3
  16. package/.mcp/schemas/github_get_merge_conflict_files.json +55 -5
  17. package/.mcp/schemas/github_get_pr.json +12 -3
  18. package/.mcp/schemas/github_get_pr_commits.json +12 -3
  19. package/.mcp/schemas/github_get_pr_reviews.json +24 -3
  20. package/.mcp/schemas/github_issue_comment.json +19 -3
  21. package/.mcp/schemas/github_issue_view.json +17 -3
  22. package/.mcp/schemas/github_open_replacement_pr.json +16 -3
  23. package/.mcp/schemas/jules.cancel_session.json +38 -3
  24. package/.mcp/schemas/jules.create_session.json +52 -3
  25. package/.mcp/schemas/jules.get_messages.json +19 -3
  26. package/.mcp/schemas/jules.get_pr.json +23 -3
  27. package/.mcp/schemas/jules.get_session.json +38 -3
  28. package/.mcp/schemas/jules.list_sessions.json +53 -3
  29. package/.mcp/schemas/jules.send_message.json +31 -3
  30. package/.mcp/schemas/jules.trigger_feedback.json +28 -3
  31. package/.mcp/schemas/jules_cancel_session.json +38 -3
  32. package/.mcp/schemas/jules_create_session.json +52 -3
  33. package/.mcp/schemas/jules_get_messages.json +19 -3
  34. package/.mcp/schemas/jules_get_pr.json +23 -3
  35. package/.mcp/schemas/jules_get_session.json +38 -3
  36. package/.mcp/schemas/jules_list_sessions.json +53 -3
  37. package/.mcp/schemas/jules_send_message.json +31 -3
  38. package/.mcp/schemas/jules_trigger_feedback.json +28 -3
  39. package/.mcp/schemas/repo.check_jules_status.json +93 -3
  40. package/.mcp/schemas/repo.commit_patch.json +23 -3
  41. package/.mcp/schemas/repo.create_branch.json +91 -3
  42. package/.mcp/schemas/repo.create_repair_branch.json +94 -3
  43. package/.mcp/schemas/repo.get_changed_files.json +50 -3
  44. package/.mcp/schemas/repo.get_command_schema.json +29 -3
  45. package/.mcp/schemas/repo.get_package_scripts.json +11 -3
  46. package/.mcp/schemas/repo.get_workflow_runs.json +12 -3
  47. package/.mcp/schemas/repo.logs.json +14 -3
  48. package/.mcp/schemas/repo.multi_exec.json +89 -0
  49. package/.mcp/schemas/repo.read_agent_context.json +117 -5
  50. package/.mcp/schemas/repo.read_ci_logs.json +46 -3
  51. package/.mcp/schemas/repo_check_jules_status.json +93 -3
  52. package/.mcp/schemas/repo_commit_patch.json +23 -3
  53. package/.mcp/schemas/repo_create_branch.json +91 -3
  54. package/.mcp/schemas/repo_create_repair_branch.json +94 -3
  55. package/.mcp/schemas/repo_get_changed_files.json +50 -3
  56. package/.mcp/schemas/repo_get_command_schema.json +29 -3
  57. package/.mcp/schemas/repo_get_package_scripts.json +11 -3
  58. package/.mcp/schemas/repo_get_workflow_runs.json +12 -3
  59. package/.mcp/schemas/repo_logs.json +14 -3
  60. package/.mcp/schemas/repo_multi_exec.json +89 -0
  61. package/.mcp/schemas/repo_read_agent_context.json +117 -5
  62. package/.mcp/schemas/repo_read_ci_logs.json +46 -3
  63. package/CHANGELOG.md +22 -0
  64. package/README.md +7 -5
  65. package/dist/config/dynamic.js +3 -2
  66. package/dist/config/repo.js +5 -5
  67. package/dist/config.test.js +10 -3
  68. package/dist/lib/git.js +78 -6
  69. package/dist/lib/git.test.js +34 -1
  70. package/dist/mcp/definitions.js +49 -36
  71. package/dist/mcp/http.js +15 -0
  72. package/dist/mcp/http.test.js +8 -0
  73. package/dist/mcp/server.js +34 -0
  74. package/dist/mcp/server.test.js +31 -0
  75. package/dist/tools/contract.js +1264 -92
  76. package/dist/tools/github.get_merge_conflict_files.js +10 -2
  77. package/dist/tools/jules/create-session.js +12 -2
  78. package/dist/tools/jules/create-session.test.js +7 -0
  79. package/dist/tools/repo.create_branch.js +18 -4
  80. package/dist/tools/repo.create_branch.test.js +41 -5
  81. package/dist/tools/repo.create_repair_branch.js +26 -9
  82. package/dist/tools/repo.get_changed_files.js +10 -2
  83. package/dist/tools/repo.multi_exec.js +21 -0
  84. package/dist/tools/repo.multi_exec.test.js +13 -0
  85. package/dist/tools/repo.read_agent_context.js +65 -3
  86. package/dist/tools/repo.read_agent_context.test.js +30 -1
  87. package/package.json +1 -1
  88. package/src/config/dynamic.ts +3 -2
  89. package/src/config/repo.ts +6 -6
  90. package/src/config.test.ts +11 -3
  91. package/src/lib/git.test.ts +45 -1
  92. package/src/lib/git.ts +94 -6
  93. package/src/mcp/definitions.ts +77 -36
  94. package/src/mcp/http.test.ts +10 -0
  95. package/src/mcp/http.ts +20 -0
  96. package/src/mcp/server.test.ts +38 -0
  97. package/src/mcp/server.ts +36 -0
  98. package/src/tools/contract.ts +1355 -67
  99. package/src/tools/github.get_merge_conflict_files.ts +11 -2
  100. package/src/tools/jules/create-session.test.ts +9 -0
  101. package/src/tools/jules/create-session.ts +13 -2
  102. package/src/tools/repo.create_branch.test.ts +73 -5
  103. package/src/tools/repo.create_branch.ts +30 -4
  104. package/src/tools/repo.create_repair_branch.ts +31 -9
  105. package/src/tools/repo.get_changed_files.ts +10 -2
  106. package/src/tools/repo.multi_exec.test.ts +15 -0
  107. package/src/tools/repo.multi_exec.ts +23 -0
  108. package/src/tools/repo.read_agent_context.test.ts +35 -1
  109. package/src/tools/repo.read_agent_context.ts +68 -3
@@ -33,8 +33,36 @@
33
33
  "type": "object"
34
34
  },
35
35
  "outputSchema": {
36
- "type": "object",
37
- "properties": {},
38
- "additionalProperties": true
36
+ "properties": {
37
+ "id": {
38
+ "anyOf": [
39
+ {
40
+ "type": "string"
41
+ },
42
+ {
43
+ "items": {
44
+ "type": "string"
45
+ },
46
+ "type": "array"
47
+ }
48
+ ],
49
+ "title": "Id"
50
+ },
51
+ "status": {
52
+ "default": "success",
53
+ "title": "Status",
54
+ "type": "string"
55
+ },
56
+ "message": {
57
+ "title": "Message",
58
+ "type": "string"
59
+ }
60
+ },
61
+ "required": [
62
+ "id",
63
+ "message"
64
+ ],
65
+ "title": "JulesSendMessageResponse",
66
+ "type": "object"
39
67
  }
40
68
  }
@@ -16,8 +16,33 @@
16
16
  "type": "object"
17
17
  },
18
18
  "outputSchema": {
19
- "type": "object",
20
- "properties": {},
21
- "additionalProperties": true
19
+ "properties": {
20
+ "status": {
21
+ "anyOf": [
22
+ {
23
+ "type": "string"
24
+ },
25
+ {
26
+ "type": "null"
27
+ }
28
+ ],
29
+ "default": null,
30
+ "title": "Status"
31
+ },
32
+ "message": {
33
+ "anyOf": [
34
+ {
35
+ "type": "string"
36
+ },
37
+ {
38
+ "type": "null"
39
+ }
40
+ ],
41
+ "default": null,
42
+ "title": "Message"
43
+ }
44
+ },
45
+ "title": "JulesTriggerFeedbackResponse",
46
+ "type": "object"
22
47
  }
23
48
  }
@@ -31,8 +31,98 @@
31
31
  }
32
32
  },
33
33
  "outputSchema": {
34
- "type": "object",
35
- "properties": {},
36
- "additionalProperties": true
34
+ "properties": {
35
+ "sessionId": {
36
+ "title": "Sessionid",
37
+ "type": "string"
38
+ },
39
+ "status": {
40
+ "title": "Status",
41
+ "type": "string"
42
+ },
43
+ "rawState": {
44
+ "anyOf": [
45
+ {
46
+ "type": "string"
47
+ },
48
+ {
49
+ "type": "null"
50
+ }
51
+ ],
52
+ "default": null,
53
+ "title": "Rawstate"
54
+ },
55
+ "completed": {
56
+ "default": false,
57
+ "title": "Completed",
58
+ "type": "boolean"
59
+ },
60
+ "remediationBranch": {
61
+ "anyOf": [
62
+ {
63
+ "type": "string"
64
+ },
65
+ {
66
+ "type": "null"
67
+ }
68
+ ],
69
+ "default": null,
70
+ "title": "Remediationbranch"
71
+ },
72
+ "pullRequestUrl": {
73
+ "anyOf": [
74
+ {
75
+ "type": "string"
76
+ },
77
+ {
78
+ "type": "null"
79
+ }
80
+ ],
81
+ "default": null,
82
+ "title": "Pullrequesturl"
83
+ },
84
+ "idempotencyHash": {
85
+ "anyOf": [
86
+ {
87
+ "type": "string"
88
+ },
89
+ {
90
+ "type": "null"
91
+ }
92
+ ],
93
+ "default": null,
94
+ "title": "Idempotencyhash"
95
+ },
96
+ "isDuplicate": {
97
+ "anyOf": [
98
+ {
99
+ "type": "boolean"
100
+ },
101
+ {
102
+ "type": "null"
103
+ }
104
+ ],
105
+ "default": null,
106
+ "title": "Isduplicate"
107
+ },
108
+ "message": {
109
+ "anyOf": [
110
+ {
111
+ "type": "string"
112
+ },
113
+ {
114
+ "type": "null"
115
+ }
116
+ ],
117
+ "default": null,
118
+ "title": "Message"
119
+ }
120
+ },
121
+ "required": [
122
+ "sessionId",
123
+ "status"
124
+ ],
125
+ "title": "CheckJulesStatusResponse",
126
+ "type": "object"
37
127
  }
38
128
  }
@@ -37,8 +37,28 @@
37
37
  "type": "object"
38
38
  },
39
39
  "outputSchema": {
40
- "type": "object",
41
- "properties": {},
42
- "additionalProperties": true
40
+ "properties": {
41
+ "success": {
42
+ "default": true,
43
+ "title": "Success",
44
+ "type": "boolean"
45
+ },
46
+ "commitSha": {
47
+ "title": "Commitsha",
48
+ "type": "string"
49
+ },
50
+ "changedFiles": {
51
+ "items": {
52
+ "type": "string"
53
+ },
54
+ "title": "Changedfiles",
55
+ "type": "array"
56
+ }
57
+ },
58
+ "required": [
59
+ "commitSha"
60
+ ],
61
+ "title": "CommitPatchResponse",
62
+ "type": "object"
43
63
  }
44
64
  }
@@ -13,6 +13,45 @@
13
13
  "description": "Branch to branch off from",
14
14
  "title": "Basebranch",
15
15
  "type": "string"
16
+ },
17
+ "repo": {
18
+ "anyOf": [
19
+ {
20
+ "type": "string"
21
+ },
22
+ {
23
+ "type": "null"
24
+ }
25
+ ],
26
+ "default": null,
27
+ "description": "Target repository override (e.g. org/repo or repo).",
28
+ "title": "Repo"
29
+ },
30
+ "path": {
31
+ "anyOf": [
32
+ {
33
+ "type": "string"
34
+ },
35
+ {
36
+ "type": "null"
37
+ }
38
+ ],
39
+ "default": null,
40
+ "description": "Local filesystem path to target repository root.",
41
+ "title": "Path"
42
+ },
43
+ "repoPath": {
44
+ "anyOf": [
45
+ {
46
+ "type": "string"
47
+ },
48
+ {
49
+ "type": "null"
50
+ }
51
+ ],
52
+ "default": null,
53
+ "description": "Alias for path to target repository root.",
54
+ "title": "Repopath"
16
55
  }
17
56
  },
18
57
  "required": [
@@ -22,8 +61,57 @@
22
61
  "type": "object"
23
62
  },
24
63
  "outputSchema": {
25
- "type": "object",
26
- "properties": {},
27
- "additionalProperties": true
64
+ "properties": {
65
+ "success": {
66
+ "default": true,
67
+ "title": "Success",
68
+ "type": "boolean"
69
+ },
70
+ "branchName": {
71
+ "title": "Branchname",
72
+ "type": "string"
73
+ },
74
+ "baseBranch": {
75
+ "anyOf": [
76
+ {
77
+ "type": "string"
78
+ },
79
+ {
80
+ "type": "null"
81
+ }
82
+ ],
83
+ "default": null,
84
+ "title": "Basebranch"
85
+ },
86
+ "repo": {
87
+ "anyOf": [
88
+ {
89
+ "type": "string"
90
+ },
91
+ {
92
+ "type": "null"
93
+ }
94
+ ],
95
+ "default": null,
96
+ "title": "Repo"
97
+ },
98
+ "path": {
99
+ "anyOf": [
100
+ {
101
+ "type": "string"
102
+ },
103
+ {
104
+ "type": "null"
105
+ }
106
+ ],
107
+ "default": null,
108
+ "title": "Path"
109
+ }
110
+ },
111
+ "required": [
112
+ "branchName"
113
+ ],
114
+ "title": "CreateBranchResponse",
115
+ "type": "object"
28
116
  }
29
117
  }
@@ -25,6 +25,45 @@
25
25
  "description": "Safety gate: Must be true to perform branch creation and worktree setup.",
26
26
  "title": "Writemode",
27
27
  "type": "boolean"
28
+ },
29
+ "repo": {
30
+ "anyOf": [
31
+ {
32
+ "type": "string"
33
+ },
34
+ {
35
+ "type": "null"
36
+ }
37
+ ],
38
+ "default": null,
39
+ "description": "Target repository override (e.g. org/repo or repo).",
40
+ "title": "Repo"
41
+ },
42
+ "path": {
43
+ "anyOf": [
44
+ {
45
+ "type": "string"
46
+ },
47
+ {
48
+ "type": "null"
49
+ }
50
+ ],
51
+ "default": null,
52
+ "description": "Local filesystem path to target repository root.",
53
+ "title": "Path"
54
+ },
55
+ "repoPath": {
56
+ "anyOf": [
57
+ {
58
+ "type": "string"
59
+ },
60
+ {
61
+ "type": "null"
62
+ }
63
+ ],
64
+ "default": null,
65
+ "description": "Alias for path to target repository root.",
66
+ "title": "Repopath"
28
67
  }
29
68
  },
30
69
  "required": [
@@ -35,8 +74,60 @@
35
74
  "type": "object"
36
75
  },
37
76
  "outputSchema": {
38
- "type": "object",
39
- "properties": {},
40
- "additionalProperties": true
77
+ "properties": {
78
+ "prNumber": {
79
+ "title": "Prnumber",
80
+ "type": "integer"
81
+ },
82
+ "originalBranch": {
83
+ "title": "Originalbranch",
84
+ "type": "string"
85
+ },
86
+ "repairBranch": {
87
+ "title": "Repairbranch",
88
+ "type": "string"
89
+ },
90
+ "baseBranch": {
91
+ "title": "Basebranch",
92
+ "type": "string"
93
+ },
94
+ "worktreePath": {
95
+ "title": "Worktreepath",
96
+ "type": "string"
97
+ },
98
+ "repo": {
99
+ "anyOf": [
100
+ {
101
+ "type": "string"
102
+ },
103
+ {
104
+ "type": "null"
105
+ }
106
+ ],
107
+ "default": null,
108
+ "title": "Repo"
109
+ },
110
+ "path": {
111
+ "anyOf": [
112
+ {
113
+ "type": "string"
114
+ },
115
+ {
116
+ "type": "null"
117
+ }
118
+ ],
119
+ "default": null,
120
+ "title": "Path"
121
+ }
122
+ },
123
+ "required": [
124
+ "prNumber",
125
+ "originalBranch",
126
+ "repairBranch",
127
+ "baseBranch",
128
+ "worktreePath"
129
+ ],
130
+ "title": "CreateRepairBranchResponse",
131
+ "type": "object"
41
132
  }
42
133
  }
@@ -14,14 +14,61 @@
14
14
  "description": "The head ref to compare to (default: 'HEAD').",
15
15
  "title": "Head",
16
16
  "type": "string"
17
+ },
18
+ "repo": {
19
+ "anyOf": [
20
+ {
21
+ "type": "string"
22
+ },
23
+ {
24
+ "type": "null"
25
+ }
26
+ ],
27
+ "default": null,
28
+ "description": "Target GitHub repository override.",
29
+ "title": "Repo"
30
+ },
31
+ "path": {
32
+ "anyOf": [
33
+ {
34
+ "type": "string"
35
+ },
36
+ {
37
+ "type": "null"
38
+ }
39
+ ],
40
+ "default": null,
41
+ "description": "Local filesystem path to target repository root.",
42
+ "title": "Path"
43
+ },
44
+ "repoPath": {
45
+ "anyOf": [
46
+ {
47
+ "type": "string"
48
+ },
49
+ {
50
+ "type": "null"
51
+ }
52
+ ],
53
+ "default": null,
54
+ "description": "Alias for path to target repository root.",
55
+ "title": "Repopath"
17
56
  }
18
57
  },
19
58
  "title": "GetChangedFilesInput",
20
59
  "type": "object"
21
60
  },
22
61
  "outputSchema": {
23
- "type": "object",
24
- "properties": {},
25
- "additionalProperties": true
62
+ "properties": {
63
+ "files": {
64
+ "items": {
65
+ "type": "string"
66
+ },
67
+ "title": "Files",
68
+ "type": "array"
69
+ }
70
+ },
71
+ "title": "GetChangedFilesResponse",
72
+ "type": "object"
26
73
  }
27
74
  }
@@ -16,8 +16,34 @@
16
16
  "type": "object"
17
17
  },
18
18
  "outputSchema": {
19
- "type": "object",
20
- "properties": {},
21
- "additionalProperties": true
19
+ "properties": {
20
+ "status": {
21
+ "anyOf": [
22
+ {
23
+ "type": "string"
24
+ },
25
+ {
26
+ "type": "null"
27
+ }
28
+ ],
29
+ "default": null,
30
+ "title": "Status"
31
+ },
32
+ "schema": {
33
+ "anyOf": [
34
+ {
35
+ "additionalProperties": true,
36
+ "type": "object"
37
+ },
38
+ {
39
+ "type": "null"
40
+ }
41
+ ],
42
+ "default": null,
43
+ "title": "Schema"
44
+ }
45
+ },
46
+ "title": "GetCommandSchemaResponse",
47
+ "type": "object"
22
48
  }
23
49
  }
@@ -21,8 +21,16 @@
21
21
  "type": "object"
22
22
  },
23
23
  "outputSchema": {
24
- "type": "object",
25
- "properties": {},
26
- "additionalProperties": true
24
+ "properties": {
25
+ "scripts": {
26
+ "additionalProperties": {
27
+ "type": "string"
28
+ },
29
+ "title": "Scripts",
30
+ "type": "object"
31
+ }
32
+ },
33
+ "title": "GetPackageScriptsResponse",
34
+ "type": "object"
27
35
  }
28
36
  }
@@ -48,8 +48,17 @@
48
48
  "type": "object"
49
49
  },
50
50
  "outputSchema": {
51
- "type": "object",
52
- "properties": {},
53
- "additionalProperties": true
51
+ "properties": {
52
+ "workflowRuns": {
53
+ "items": {
54
+ "additionalProperties": true,
55
+ "type": "object"
56
+ },
57
+ "title": "Workflowruns",
58
+ "type": "array"
59
+ }
60
+ },
61
+ "title": "GetWorkflowRunsResponse",
62
+ "type": "object"
54
63
  }
55
64
  }
@@ -43,8 +43,19 @@
43
43
  "type": "object"
44
44
  },
45
45
  "outputSchema": {
46
- "type": "object",
47
- "properties": {},
48
- "additionalProperties": true
46
+ "properties": {
47
+ "logs": {
48
+ "anyOf": [
49
+ {},
50
+ {
51
+ "type": "null"
52
+ }
53
+ ],
54
+ "default": null,
55
+ "title": "Logs"
56
+ }
57
+ },
58
+ "title": "RepoLogsResponse",
59
+ "type": "object"
49
60
  }
50
61
  }
@@ -0,0 +1,89 @@
1
+ {
2
+ "name": "repo.multi_exec",
3
+ "description": "Execute a shell command sequentially across ecosystem repositories (or a filtered subset).",
4
+ "parameters": {
5
+ "properties": {
6
+ "command": {
7
+ "description": "Shell command to execute sequentially across repositories",
8
+ "title": "Command",
9
+ "type": "string"
10
+ },
11
+ "repos": {
12
+ "anyOf": [
13
+ {
14
+ "items": {
15
+ "type": "string"
16
+ },
17
+ "type": "array"
18
+ },
19
+ {
20
+ "type": "null"
21
+ }
22
+ ],
23
+ "default": null,
24
+ "description": "Optional list of repository names to target",
25
+ "title": "Repos"
26
+ },
27
+ "continueOnError": {
28
+ "anyOf": [
29
+ {
30
+ "type": "boolean"
31
+ },
32
+ {
33
+ "type": "null"
34
+ }
35
+ ],
36
+ "default": true,
37
+ "description": "Whether to continue execution if a repo command fails",
38
+ "title": "Continueonerror"
39
+ }
40
+ },
41
+ "required": [
42
+ "command"
43
+ ],
44
+ "title": "MultiExecInput",
45
+ "type": "object"
46
+ },
47
+ "outputSchema": {
48
+ "properties": {
49
+ "status": {
50
+ "default": "success",
51
+ "description": "Execution status",
52
+ "title": "Status",
53
+ "type": "string"
54
+ },
55
+ "total": {
56
+ "anyOf": [
57
+ {
58
+ "type": "integer"
59
+ },
60
+ {
61
+ "type": "null"
62
+ }
63
+ ],
64
+ "default": null,
65
+ "description": "Total repositories executed against",
66
+ "title": "Total"
67
+ },
68
+ "results": {
69
+ "anyOf": [
70
+ {
71
+ "items": {
72
+ "additionalProperties": true,
73
+ "type": "object"
74
+ },
75
+ "type": "array"
76
+ },
77
+ {
78
+ "type": "null"
79
+ }
80
+ ],
81
+ "default": null,
82
+ "description": "Execution results per repository",
83
+ "title": "Results"
84
+ }
85
+ },
86
+ "title": "MultiExecResponse",
87
+ "type": "object"
88
+ }
89
+ }