@arii/boomtick-mcp 0.4.1 → 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.
Files changed (111) hide show
  1. package/.mcp/schemas/agent.search_ddgs.json +28 -24
  2. package/.mcp/schemas/agent_search_ddgs.json +31 -0
  3. package/.mcp/schemas/boomtick.health.json +14 -10
  4. package/.mcp/schemas/boomtick_health.json +16 -0
  5. package/.mcp/schemas/github.checkout_branch.json +28 -24
  6. package/.mcp/schemas/github.comment_triage_summary.json +21 -17
  7. package/.mcp/schemas/github.create_issue.json +55 -50
  8. package/.mcp/schemas/github.create_pull_request.json +53 -48
  9. package/.mcp/schemas/github.get_merge_conflict_files.json +21 -17
  10. package/.mcp/schemas/github.get_pr.json +30 -12
  11. package/.mcp/schemas/github.get_pr_diff.json +30 -12
  12. package/.mcp/schemas/github.issue_comment.json +35 -17
  13. package/.mcp/schemas/github.issue_update.json +114 -96
  14. package/.mcp/schemas/github.issue_view.json +30 -12
  15. package/.mcp/schemas/github.open_replacement_pr.json +64 -60
  16. package/.mcp/schemas/github.search_open_prs.json +61 -43
  17. package/.mcp/schemas/github_checkout_branch.json +31 -0
  18. package/.mcp/schemas/github_comment_triage_summary.json +24 -0
  19. package/.mcp/schemas/github_create_issue.json +58 -0
  20. package/.mcp/schemas/github_create_pull_request.json +56 -0
  21. package/.mcp/schemas/github_get_merge_conflict_files.json +24 -0
  22. package/.mcp/schemas/github_get_pr.json +32 -0
  23. package/.mcp/schemas/github_get_pr_diff.json +32 -0
  24. package/.mcp/schemas/github_issue_comment.json +38 -0
  25. package/.mcp/schemas/github_issue_update.json +123 -0
  26. package/.mcp/schemas/github_issue_view.json +32 -0
  27. package/.mcp/schemas/github_open_replacement_pr.json +67 -0
  28. package/.mcp/schemas/github_search_open_prs.json +65 -0
  29. package/.mcp/schemas/jules.cancel_session.json +16 -12
  30. package/.mcp/schemas/jules.create_session.json +41 -37
  31. package/.mcp/schemas/jules.get_messages.json +16 -12
  32. package/.mcp/schemas/jules.get_pr.json +16 -12
  33. package/.mcp/schemas/jules.get_session.json +16 -12
  34. package/.mcp/schemas/jules.list_sessions.json +33 -29
  35. package/.mcp/schemas/jules.send_message.json +30 -26
  36. package/.mcp/schemas/jules.trigger_feedback.json +16 -12
  37. package/.mcp/schemas/jules_cancel_session.json +18 -0
  38. package/.mcp/schemas/jules_create_session.json +44 -0
  39. package/.mcp/schemas/jules_get_messages.json +18 -0
  40. package/.mcp/schemas/jules_get_pr.json +18 -0
  41. package/.mcp/schemas/jules_get_session.json +18 -0
  42. package/.mcp/schemas/jules_list_sessions.json +36 -0
  43. package/.mcp/schemas/jules_send_message.json +35 -0
  44. package/.mcp/schemas/jules_trigger_feedback.json +18 -0
  45. package/.mcp/schemas/repo.commit_patch.json +34 -30
  46. package/.mcp/schemas/repo.create_branch.json +21 -17
  47. package/.mcp/schemas/repo.create_repair_branch.json +34 -30
  48. package/.mcp/schemas/repo.get_changed_files.json +19 -15
  49. package/.mcp/schemas/repo.get_command_schema.json +16 -12
  50. package/.mcp/schemas/repo.get_package_scripts.json +21 -17
  51. package/.mcp/schemas/repo.get_route_map.json +21 -17
  52. package/.mcp/schemas/repo.logs.json +28 -24
  53. package/.mcp/schemas/repo.read_agent_context.json +7 -3
  54. package/.mcp/schemas/repo.read_ci_logs.json +21 -17
  55. package/.mcp/schemas/repo.run_lighthouse.json +26 -22
  56. package/.mcp/schemas/repo.run_playwright.json +33 -29
  57. package/.mcp/schemas/repo.run_tests.json +40 -36
  58. package/.mcp/schemas/repo_commit_patch.json +39 -0
  59. package/.mcp/schemas/repo_create_branch.json +24 -0
  60. package/.mcp/schemas/repo_create_repair_branch.json +37 -0
  61. package/.mcp/schemas/repo_get_changed_files.json +22 -0
  62. package/.mcp/schemas/repo_get_command_schema.json +18 -0
  63. package/.mcp/schemas/repo_get_package_scripts.json +23 -0
  64. package/.mcp/schemas/repo_get_route_map.json +23 -0
  65. package/.mcp/schemas/repo_logs.json +31 -0
  66. package/.mcp/schemas/repo_read_agent_context.json +9 -0
  67. package/.mcp/schemas/repo_read_ci_logs.json +24 -0
  68. package/.mcp/schemas/repo_run_lighthouse.json +29 -0
  69. package/.mcp/schemas/repo_run_playwright.json +36 -0
  70. package/.mcp/schemas/repo_run_tests.json +45 -0
  71. package/CHANGELOG.md +9 -0
  72. package/dist/lib/git.js +30 -0
  73. package/dist/lib/param_utils.js +35 -0
  74. package/dist/lib/param_utils.test.js +44 -0
  75. package/dist/mcp/definitions.js +11 -1
  76. package/dist/mcp/schemas.test.js +28 -0
  77. package/dist/mcp/server.js +72 -36
  78. package/dist/tools/contract.js +94 -8
  79. package/dist/tools/github.create_issue.js +3 -2
  80. package/dist/tools/github.create_issue.test.js +10 -0
  81. package/dist/tools/github.create_pull_request.js +4 -4
  82. package/dist/tools/github.get_pr.js +4 -1
  83. package/dist/tools/github.get_pr_diff.js +6 -2
  84. package/dist/tools/github.issue_comment.js +8 -1
  85. package/dist/tools/github.issue_update.js +3 -0
  86. package/dist/tools/github.issue_view.js +4 -1
  87. package/dist/tools/github.search_open_prs.js +4 -0
  88. package/dist/tools/repo.commit_patch.js +30 -10
  89. package/dist/tools/repo.run_playwright.js +10 -5
  90. package/dist/tools/repo.run_tests.js +26 -4
  91. package/package.json +2 -2
  92. package/scripts/sync-mcp-schemas.ts +6 -1
  93. package/src/lib/git.ts +34 -0
  94. package/src/lib/param_utils.test.ts +49 -0
  95. package/src/lib/param_utils.ts +42 -0
  96. package/src/mcp/definitions.ts +12 -1
  97. package/src/mcp/schemas.test.ts +34 -0
  98. package/src/mcp/server.ts +73 -38
  99. package/src/tools/contract.ts +94 -8
  100. package/src/tools/github.create_issue.test.ts +10 -0
  101. package/src/tools/github.create_issue.ts +3 -1
  102. package/src/tools/github.create_pull_request.ts +4 -5
  103. package/src/tools/github.get_pr.ts +4 -1
  104. package/src/tools/github.get_pr_diff.ts +7 -2
  105. package/src/tools/github.issue_comment.ts +8 -1
  106. package/src/tools/github.issue_update.ts +4 -1
  107. package/src/tools/github.issue_view.ts +4 -1
  108. package/src/tools/github.search_open_prs.ts +4 -0
  109. package/src/tools/repo.commit_patch.ts +35 -11
  110. package/src/tools/repo.run_playwright.ts +13 -6
  111. package/src/tools/repo.run_tests.ts +28 -5
@@ -1,27 +1,31 @@
1
1
  {
2
- "properties": {
3
- "query": {
4
- "description": "The search query.",
5
- "title": "Query",
6
- "type": "string"
2
+ "name": "agent.search_ddgs",
3
+ "description": "Search the web using DuckDuckGo (via ddgs python library).",
4
+ "parameters": {
5
+ "properties": {
6
+ "query": {
7
+ "description": "The search query.",
8
+ "title": "Query",
9
+ "type": "string"
10
+ },
11
+ "maxResults": {
12
+ "anyOf": [
13
+ {
14
+ "type": "integer"
15
+ },
16
+ {
17
+ "type": "null"
18
+ }
19
+ ],
20
+ "default": null,
21
+ "description": "Maximum number of results to return.",
22
+ "title": "Maxresults"
23
+ }
7
24
  },
8
- "maxResults": {
9
- "anyOf": [
10
- {
11
- "type": "integer"
12
- },
13
- {
14
- "type": "null"
15
- }
16
- ],
17
- "default": null,
18
- "description": "Maximum number of results to return.",
19
- "title": "Maxresults"
20
- }
21
- },
22
- "required": [
23
- "query"
24
- ],
25
- "title": "SearchDdgsInput",
26
- "type": "object"
25
+ "required": [
26
+ "query"
27
+ ],
28
+ "title": "SearchDdgsInput",
29
+ "type": "object"
30
+ }
27
31
  }
@@ -0,0 +1,31 @@
1
+ {
2
+ "name": "agent_search_ddgs",
3
+ "description": "Search the web using DuckDuckGo (via ddgs python library).",
4
+ "parameters": {
5
+ "properties": {
6
+ "query": {
7
+ "description": "The search query.",
8
+ "title": "Query",
9
+ "type": "string"
10
+ },
11
+ "maxResults": {
12
+ "anyOf": [
13
+ {
14
+ "type": "integer"
15
+ },
16
+ {
17
+ "type": "null"
18
+ }
19
+ ],
20
+ "default": null,
21
+ "description": "Maximum number of results to return.",
22
+ "title": "Maxresults"
23
+ }
24
+ },
25
+ "required": [
26
+ "query"
27
+ ],
28
+ "title": "SearchDdgsInput",
29
+ "type": "object"
30
+ }
31
+ }
@@ -1,12 +1,16 @@
1
1
  {
2
- "properties": {
3
- "checkDeep": {
4
- "default": false,
5
- "description": "Whether to perform a deep health check including external dependencies.",
6
- "title": "Checkdeep",
7
- "type": "boolean"
8
- }
9
- },
10
- "title": "HealthCheckInput",
11
- "type": "object"
2
+ "name": "boomtick.health",
3
+ "description": "Check the health and configuration of the MCP server.",
4
+ "parameters": {
5
+ "properties": {
6
+ "checkDeep": {
7
+ "default": false,
8
+ "description": "Whether to perform a deep health check including external dependencies.",
9
+ "title": "Checkdeep",
10
+ "type": "boolean"
11
+ }
12
+ },
13
+ "title": "HealthCheckInput",
14
+ "type": "object"
15
+ }
12
16
  }
@@ -0,0 +1,16 @@
1
+ {
2
+ "name": "boomtick_health",
3
+ "description": "Check the health and configuration of the MCP server.",
4
+ "parameters": {
5
+ "properties": {
6
+ "checkDeep": {
7
+ "default": false,
8
+ "description": "Whether to perform a deep health check including external dependencies.",
9
+ "title": "Checkdeep",
10
+ "type": "boolean"
11
+ }
12
+ },
13
+ "title": "HealthCheckInput",
14
+ "type": "object"
15
+ }
16
+ }
@@ -1,27 +1,31 @@
1
1
  {
2
- "properties": {
3
- "branch": {
4
- "description": "The name of the branch to checkout.",
5
- "title": "Branch",
6
- "type": "string"
2
+ "name": "github.checkout_branch",
3
+ "description": "Checkout a specific branch in the repository or worktree.",
4
+ "parameters": {
5
+ "properties": {
6
+ "branch": {
7
+ "description": "The name of the branch to checkout.",
8
+ "title": "Branch",
9
+ "type": "string"
10
+ },
11
+ "worktreePath": {
12
+ "anyOf": [
13
+ {
14
+ "type": "string"
15
+ },
16
+ {
17
+ "type": "null"
18
+ }
19
+ ],
20
+ "default": null,
21
+ "description": "Optional path to the worktree to perform the checkout in.",
22
+ "title": "Worktreepath"
23
+ }
7
24
  },
8
- "worktreePath": {
9
- "anyOf": [
10
- {
11
- "type": "string"
12
- },
13
- {
14
- "type": "null"
15
- }
16
- ],
17
- "default": null,
18
- "description": "Optional path to the worktree to perform the checkout in.",
19
- "title": "Worktreepath"
20
- }
21
- },
22
- "required": [
23
- "branch"
24
- ],
25
- "title": "CheckoutBranchInput",
26
- "type": "object"
25
+ "required": [
26
+ "branch"
27
+ ],
28
+ "title": "CheckoutBranchInput",
29
+ "type": "object"
30
+ }
27
31
  }
@@ -1,20 +1,24 @@
1
1
  {
2
- "properties": {
3
- "prNumber": {
4
- "description": "The number of the original PR to comment on.",
5
- "title": "Prnumber",
6
- "type": "integer"
2
+ "name": "github.comment_triage_summary",
3
+ "description": "Comment on the original PR with a diagnosis and replacement link.",
4
+ "parameters": {
5
+ "properties": {
6
+ "prNumber": {
7
+ "description": "The number of the original PR to comment on.",
8
+ "title": "Prnumber",
9
+ "type": "integer"
10
+ },
11
+ "body": {
12
+ "description": "The content of the comment.",
13
+ "title": "Body",
14
+ "type": "string"
15
+ }
7
16
  },
8
- "body": {
9
- "description": "The content of the comment.",
10
- "title": "Body",
11
- "type": "string"
12
- }
13
- },
14
- "required": [
15
- "prNumber",
16
- "body"
17
- ],
18
- "title": "CommentTriageSummaryInput",
19
- "type": "object"
17
+ "required": [
18
+ "prNumber",
19
+ "body"
20
+ ],
21
+ "title": "CommentTriageSummaryInput",
22
+ "type": "object"
23
+ }
20
24
  }
@@ -1,53 +1,58 @@
1
1
  {
2
- "properties": {
3
- "title": {
4
- "minLength": 1,
5
- "title": "Title",
6
- "type": "string"
2
+ "name": "github.create_issue",
3
+ "description": "Create a new GitHub issue.",
4
+ "parameters": {
5
+ "properties": {
6
+ "title": {
7
+ "minLength": 1,
8
+ "title": "Title",
9
+ "type": "string"
10
+ },
11
+ "body": {
12
+ "anyOf": [
13
+ {
14
+ "minLength": 1,
15
+ "type": "string"
16
+ },
17
+ {
18
+ "type": "null"
19
+ }
20
+ ],
21
+ "default": null,
22
+ "title": "Body"
23
+ },
24
+ "file": {
25
+ "anyOf": [
26
+ {
27
+ "minLength": 1,
28
+ "type": "string"
29
+ },
30
+ {
31
+ "type": "null"
32
+ }
33
+ ],
34
+ "default": null,
35
+ "title": "File"
36
+ },
37
+ "repo": {
38
+ "anyOf": [
39
+ {
40
+ "pattern": "^[a-zA-Z0-9_.-]+/[a-zA-Z0-9_.-]+$",
41
+ "type": "string"
42
+ },
43
+ {
44
+ "type": "null"
45
+ }
46
+ ],
47
+ "default": null,
48
+ "description": "The target repository override (e.g. org/repo).",
49
+ "title": "Repo"
50
+ }
7
51
  },
8
- "body": {
9
- "anyOf": [
10
- {
11
- "minLength": 1,
12
- "type": "string"
13
- },
14
- {
15
- "type": "null"
16
- }
17
- ],
18
- "default": null,
19
- "title": "Body"
20
- },
21
- "file": {
22
- "anyOf": [
23
- {
24
- "minLength": 1,
25
- "type": "string"
26
- },
27
- {
28
- "type": "null"
29
- }
30
- ],
31
- "default": null,
32
- "title": "File"
33
- },
34
- "repo": {
35
- "anyOf": [
36
- {
37
- "type": "string"
38
- },
39
- {
40
- "type": "null"
41
- }
42
- ],
43
- "default": null,
44
- "description": "The target repository override (e.g. org/repo).",
45
- "title": "Repo"
46
- }
47
- },
48
- "required": [
49
- "title"
50
- ],
51
- "title": "CreateIssueInput",
52
- "type": "object"
52
+ "required": [
53
+ "title"
54
+ ],
55
+ "title": "CreateIssueInput",
56
+ "type": "object"
57
+ }
53
58
  }
@@ -1,51 +1,56 @@
1
1
  {
2
- "properties": {
3
- "title": {
4
- "description": "PR Title.",
5
- "title": "Title",
6
- "type": "string"
2
+ "name": "github.create_pull_request",
3
+ "description": "Creates a pull request on GitHub using the MCP server's integrated credentials. Bypasses terminal CLI constraints.",
4
+ "parameters": {
5
+ "properties": {
6
+ "title": {
7
+ "description": "PR Title.",
8
+ "title": "Title",
9
+ "type": "string"
10
+ },
11
+ "body": {
12
+ "description": "Description of changes.",
13
+ "title": "Body",
14
+ "type": "string"
15
+ },
16
+ "head": {
17
+ "description": "The branch containing changes to merge.",
18
+ "title": "Head",
19
+ "type": "string"
20
+ },
21
+ "base": {
22
+ "default": "main",
23
+ "description": "The target branch to merge into.",
24
+ "title": "Base",
25
+ "type": "string"
26
+ },
27
+ "draft": {
28
+ "default": false,
29
+ "description": "Whether to create the PR as a draft.",
30
+ "title": "Draft",
31
+ "type": "boolean"
32
+ },
33
+ "repo": {
34
+ "anyOf": [
35
+ {
36
+ "pattern": "^[a-zA-Z0-9_.-]+/[a-zA-Z0-9_.-]+$",
37
+ "type": "string"
38
+ },
39
+ {
40
+ "type": "null"
41
+ }
42
+ ],
43
+ "default": null,
44
+ "description": "The target repository override (e.g. org/repo).",
45
+ "title": "Repo"
46
+ }
7
47
  },
8
- "body": {
9
- "description": "Description of changes.",
10
- "title": "Body",
11
- "type": "string"
12
- },
13
- "head": {
14
- "description": "The branch containing changes to merge.",
15
- "title": "Head",
16
- "type": "string"
17
- },
18
- "base": {
19
- "default": "main",
20
- "description": "The target branch to merge into.",
21
- "title": "Base",
22
- "type": "string"
23
- },
24
- "draft": {
25
- "default": false,
26
- "description": "Whether to create the PR as a draft.",
27
- "title": "Draft",
28
- "type": "boolean"
29
- },
30
- "repo": {
31
- "anyOf": [
32
- {
33
- "type": "string"
34
- },
35
- {
36
- "type": "null"
37
- }
38
- ],
39
- "default": null,
40
- "description": "The target repository override (e.g. org/repo).",
41
- "title": "Repo"
42
- }
43
- },
44
- "required": [
45
- "title",
46
- "body",
47
- "head"
48
- ],
49
- "title": "CreatePullRequestInput",
50
- "type": "object"
48
+ "required": [
49
+ "title",
50
+ "body",
51
+ "head"
52
+ ],
53
+ "title": "CreatePullRequestInput",
54
+ "type": "object"
55
+ }
51
56
  }
@@ -1,20 +1,24 @@
1
1
  {
2
- "properties": {
3
- "prNumber": {
4
- "description": "The number of the pull request to check for conflicts.",
5
- "title": "Prnumber",
6
- "type": "integer"
2
+ "name": "github.get_merge_conflict_files",
3
+ "description": "Detect files that conflict when a PR is merged with the base branch.",
4
+ "parameters": {
5
+ "properties": {
6
+ "prNumber": {
7
+ "description": "The number of the pull request to check for conflicts.",
8
+ "title": "Prnumber",
9
+ "type": "integer"
10
+ },
11
+ "baseBranch": {
12
+ "default": "main",
13
+ "description": "The base branch to check against (default: 'main').",
14
+ "title": "Basebranch",
15
+ "type": "string"
16
+ }
7
17
  },
8
- "baseBranch": {
9
- "default": "main",
10
- "description": "The base branch to check against (default: 'main').",
11
- "title": "Basebranch",
12
- "type": "string"
13
- }
14
- },
15
- "required": [
16
- "prNumber"
17
- ],
18
- "title": "GetMergeConflictFilesInput",
19
- "type": "object"
18
+ "required": [
19
+ "prNumber"
20
+ ],
21
+ "title": "GetMergeConflictFilesInput",
22
+ "type": "object"
23
+ }
20
24
  }
@@ -1,14 +1,32 @@
1
1
  {
2
- "properties": {
3
- "prNumber": {
4
- "description": "The number of the PR to view.",
5
- "title": "Prnumber",
6
- "type": "integer"
7
- }
8
- },
9
- "required": [
10
- "prNumber"
11
- ],
12
- "title": "GetPrInput",
13
- "type": "object"
2
+ "name": "github.get_pr",
3
+ "description": "Get details of a GitHub PR including title, state, and URLs.",
4
+ "parameters": {
5
+ "properties": {
6
+ "prNumber": {
7
+ "description": "The number of the PR to view.",
8
+ "title": "Prnumber",
9
+ "type": "integer"
10
+ },
11
+ "repo": {
12
+ "anyOf": [
13
+ {
14
+ "pattern": "^[a-zA-Z0-9_.-]+/[a-zA-Z0-9_.-]+$",
15
+ "type": "string"
16
+ },
17
+ {
18
+ "type": "null"
19
+ }
20
+ ],
21
+ "default": null,
22
+ "description": "The target repository override (e.g. org/repo).",
23
+ "title": "Repo"
24
+ }
25
+ },
26
+ "required": [
27
+ "prNumber"
28
+ ],
29
+ "title": "GetPrInput",
30
+ "type": "object"
31
+ }
14
32
  }
@@ -1,14 +1,32 @@
1
1
  {
2
- "properties": {
3
- "prNumber": {
4
- "description": "The number of the pull request to get the diff for.",
5
- "title": "Prnumber",
6
- "type": "integer"
7
- }
8
- },
9
- "required": [
10
- "prNumber"
11
- ],
12
- "title": "GetPrDiffInput",
13
- "type": "object"
2
+ "name": "github.get_pr_diff",
3
+ "description": "Get the diff and changed files for a pull request.",
4
+ "parameters": {
5
+ "properties": {
6
+ "prNumber": {
7
+ "description": "The number of the pull request to get the diff for.",
8
+ "title": "Prnumber",
9
+ "type": "integer"
10
+ },
11
+ "repo": {
12
+ "anyOf": [
13
+ {
14
+ "pattern": "^[a-zA-Z0-9_.-]+/[a-zA-Z0-9_.-]+$",
15
+ "type": "string"
16
+ },
17
+ {
18
+ "type": "null"
19
+ }
20
+ ],
21
+ "default": null,
22
+ "description": "The target repository override (e.g. org/repo).",
23
+ "title": "Repo"
24
+ }
25
+ },
26
+ "required": [
27
+ "prNumber"
28
+ ],
29
+ "title": "GetPrDiffInput",
30
+ "type": "object"
31
+ }
14
32
  }
@@ -1,20 +1,38 @@
1
1
  {
2
- "properties": {
3
- "issueNumber": {
4
- "description": "The number of the issue to comment on.",
5
- "title": "Issuenumber",
6
- "type": "integer"
2
+ "name": "github.issue_comment",
3
+ "description": "Add a new comment to a GitHub issue.",
4
+ "parameters": {
5
+ "properties": {
6
+ "issueNumber": {
7
+ "description": "The number of the issue to comment on.",
8
+ "title": "Issuenumber",
9
+ "type": "integer"
10
+ },
11
+ "body": {
12
+ "description": "The content of the comment.",
13
+ "title": "Body",
14
+ "type": "string"
15
+ },
16
+ "repo": {
17
+ "anyOf": [
18
+ {
19
+ "pattern": "^[a-zA-Z0-9_.-]+/[a-zA-Z0-9_.-]+$",
20
+ "type": "string"
21
+ },
22
+ {
23
+ "type": "null"
24
+ }
25
+ ],
26
+ "default": null,
27
+ "description": "The target repository override (e.g. org/repo).",
28
+ "title": "Repo"
29
+ }
7
30
  },
8
- "body": {
9
- "description": "The content of the comment.",
10
- "title": "Body",
11
- "type": "string"
12
- }
13
- },
14
- "required": [
15
- "issueNumber",
16
- "body"
17
- ],
18
- "title": "IssueCommentInput",
19
- "type": "object"
31
+ "required": [
32
+ "issueNumber",
33
+ "body"
34
+ ],
35
+ "title": "IssueCommentInput",
36
+ "type": "object"
37
+ }
20
38
  }