@dobbyai/mcp-external 1.0.4 → 1.2.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.
Files changed (315) hide show
  1. package/README.md +44 -14
  2. package/dist/__tests__/agent-mail-tools.test.d.ts +8 -0
  3. package/dist/__tests__/agent-mail-tools.test.d.ts.map +1 -0
  4. package/dist/__tests__/agent-mail-tools.test.js +255 -0
  5. package/dist/__tests__/agent-mail-tools.test.js.map +1 -0
  6. package/dist/__tests__/annotations.test.d.ts +8 -0
  7. package/dist/__tests__/annotations.test.d.ts.map +1 -0
  8. package/dist/__tests__/annotations.test.js +108 -0
  9. package/dist/__tests__/annotations.test.js.map +1 -0
  10. package/dist/__tests__/auth.test.d.ts +7 -0
  11. package/dist/__tests__/auth.test.d.ts.map +1 -0
  12. package/dist/__tests__/auth.test.js +161 -0
  13. package/dist/__tests__/auth.test.js.map +1 -0
  14. package/dist/__tests__/doctor.test.d.ts +16 -0
  15. package/dist/__tests__/doctor.test.d.ts.map +1 -0
  16. package/dist/__tests__/doctor.test.js +258 -0
  17. package/dist/__tests__/doctor.test.js.map +1 -0
  18. package/dist/__tests__/external-agents-tools.test.d.ts +11 -0
  19. package/dist/__tests__/external-agents-tools.test.d.ts.map +1 -0
  20. package/dist/__tests__/external-agents-tools.test.js +619 -0
  21. package/dist/__tests__/external-agents-tools.test.js.map +1 -0
  22. package/dist/__tests__/gateway-bearer.test.d.ts +12 -0
  23. package/dist/__tests__/gateway-bearer.test.d.ts.map +1 -0
  24. package/dist/__tests__/gateway-bearer.test.js +112 -0
  25. package/dist/__tests__/gateway-bearer.test.js.map +1 -0
  26. package/dist/__tests__/gateway-key-resolver.test.d.ts +10 -0
  27. package/dist/__tests__/gateway-key-resolver.test.d.ts.map +1 -0
  28. package/dist/__tests__/gateway-key-resolver.test.js +125 -0
  29. package/dist/__tests__/gateway-key-resolver.test.js.map +1 -0
  30. package/dist/__tests__/http-concurrency.test.d.ts +20 -0
  31. package/dist/__tests__/http-concurrency.test.d.ts.map +1 -0
  32. package/dist/__tests__/http-concurrency.test.js +254 -0
  33. package/dist/__tests__/http-concurrency.test.js.map +1 -0
  34. package/dist/__tests__/integration/protocol.test.d.ts +8 -0
  35. package/dist/__tests__/integration/protocol.test.d.ts.map +1 -0
  36. package/dist/__tests__/integration/protocol.test.js +110 -0
  37. package/dist/__tests__/integration/protocol.test.js.map +1 -0
  38. package/dist/__tests__/mcp-integrations.test.d.ts +8 -0
  39. package/dist/__tests__/mcp-integrations.test.d.ts.map +1 -0
  40. package/dist/__tests__/mcp-integrations.test.js +365 -0
  41. package/dist/__tests__/mcp-integrations.test.js.map +1 -0
  42. package/dist/__tests__/memory-graph-tools.test.d.ts +8 -0
  43. package/dist/__tests__/memory-graph-tools.test.d.ts.map +1 -0
  44. package/dist/__tests__/memory-graph-tools.test.js +254 -0
  45. package/dist/__tests__/memory-graph-tools.test.js.map +1 -0
  46. package/dist/__tests__/registry-dispatch.test.d.ts +11 -0
  47. package/dist/__tests__/registry-dispatch.test.d.ts.map +1 -0
  48. package/dist/__tests__/registry-dispatch.test.js +30 -0
  49. package/dist/__tests__/registry-dispatch.test.js.map +1 -0
  50. package/dist/__tests__/registry-listing-parity.test.d.ts +2 -0
  51. package/dist/__tests__/registry-listing-parity.test.d.ts.map +1 -0
  52. package/dist/__tests__/registry-listing-parity.test.js +89 -0
  53. package/dist/__tests__/registry-listing-parity.test.js.map +1 -0
  54. package/dist/__tests__/role-cap.test.d.ts +2 -0
  55. package/dist/__tests__/role-cap.test.d.ts.map +1 -0
  56. package/dist/__tests__/role-cap.test.js +113 -0
  57. package/dist/__tests__/role-cap.test.js.map +1 -0
  58. package/dist/__tests__/schedule-tools.test.d.ts +8 -0
  59. package/dist/__tests__/schedule-tools.test.d.ts.map +1 -0
  60. package/dist/__tests__/schedule-tools.test.js +285 -0
  61. package/dist/__tests__/schedule-tools.test.js.map +1 -0
  62. package/dist/__tests__/server-gateway-key.test.d.ts +18 -0
  63. package/dist/__tests__/server-gateway-key.test.d.ts.map +1 -0
  64. package/dist/__tests__/server-gateway-key.test.js +148 -0
  65. package/dist/__tests__/server-gateway-key.test.js.map +1 -0
  66. package/dist/__tests__/server-user-scoped.test.d.ts +34 -0
  67. package/dist/__tests__/server-user-scoped.test.d.ts.map +1 -0
  68. package/dist/__tests__/server-user-scoped.test.js +577 -0
  69. package/dist/__tests__/server-user-scoped.test.js.map +1 -0
  70. package/dist/__tests__/task-id-pattern.test.d.ts +12 -0
  71. package/dist/__tests__/task-id-pattern.test.d.ts.map +1 -0
  72. package/dist/__tests__/task-id-pattern.test.js +43 -0
  73. package/dist/__tests__/task-id-pattern.test.js.map +1 -0
  74. package/dist/__tests__/tiers.test.d.ts +7 -0
  75. package/dist/__tests__/tiers.test.d.ts.map +1 -0
  76. package/dist/__tests__/tiers.test.js +199 -0
  77. package/dist/__tests__/tiers.test.js.map +1 -0
  78. package/dist/__tests__/tools/hosted-agents.test.d.ts +9 -0
  79. package/dist/__tests__/tools/hosted-agents.test.d.ts.map +1 -0
  80. package/dist/__tests__/tools/hosted-agents.test.js +301 -0
  81. package/dist/__tests__/tools/hosted-agents.test.js.map +1 -0
  82. package/dist/__tests__/tools/llm-providers.test.d.ts +10 -0
  83. package/dist/__tests__/tools/llm-providers.test.d.ts.map +1 -0
  84. package/dist/__tests__/tools/llm-providers.test.js +105 -0
  85. package/dist/__tests__/tools/llm-providers.test.js.map +1 -0
  86. package/dist/__tests__/tools/services.test.js +139 -98
  87. package/dist/__tests__/tools/services.test.js.map +1 -1
  88. package/dist/__tests__/tools.test.d.ts +7 -0
  89. package/dist/__tests__/tools.test.d.ts.map +1 -0
  90. package/dist/__tests__/tools.test.js +152 -0
  91. package/dist/__tests__/tools.test.js.map +1 -0
  92. package/dist/__tests__/transport.test.d.ts +7 -0
  93. package/dist/__tests__/transport.test.d.ts.map +1 -0
  94. package/dist/__tests__/transport.test.js +397 -0
  95. package/dist/__tests__/transport.test.js.map +1 -0
  96. package/dist/__tests__/validate-credentials.test.d.ts +9 -0
  97. package/dist/__tests__/validate-credentials.test.d.ts.map +1 -0
  98. package/dist/__tests__/validate-credentials.test.js +172 -0
  99. package/dist/__tests__/validate-credentials.test.js.map +1 -0
  100. package/dist/__tests__/web-eval-tools.test.d.ts +8 -0
  101. package/dist/__tests__/web-eval-tools.test.d.ts.map +1 -0
  102. package/dist/__tests__/web-eval-tools.test.js +241 -0
  103. package/dist/__tests__/web-eval-tools.test.js.map +1 -0
  104. package/dist/__tests__/whoami.test.d.ts +11 -0
  105. package/dist/__tests__/whoami.test.d.ts.map +1 -0
  106. package/dist/__tests__/whoami.test.js +194 -0
  107. package/dist/__tests__/whoami.test.js.map +1 -0
  108. package/dist/__tests__/workflow-tools.test.d.ts +8 -0
  109. package/dist/__tests__/workflow-tools.test.d.ts.map +1 -0
  110. package/dist/__tests__/workflow-tools.test.js +261 -0
  111. package/dist/__tests__/workflow-tools.test.js.map +1 -0
  112. package/dist/__tests__/workloads.test.d.ts +9 -0
  113. package/dist/__tests__/workloads.test.d.ts.map +1 -0
  114. package/dist/__tests__/workloads.test.js +169 -0
  115. package/dist/__tests__/workloads.test.js.map +1 -0
  116. package/dist/auth/oauth-provider.d.ts +34 -0
  117. package/dist/auth/oauth-provider.d.ts.map +1 -0
  118. package/dist/auth/oauth-provider.js +75 -0
  119. package/dist/auth/oauth-provider.js.map +1 -0
  120. package/dist/auth/token-verifier.d.ts +45 -0
  121. package/dist/auth/token-verifier.d.ts.map +1 -0
  122. package/dist/auth/token-verifier.js +160 -0
  123. package/dist/auth/token-verifier.js.map +1 -0
  124. package/dist/connectors/claude-desktop.d.ts.map +1 -1
  125. package/dist/connectors/claude-desktop.js +3 -2
  126. package/dist/connectors/claude-desktop.js.map +1 -1
  127. package/dist/connectors/cursor.d.ts.map +1 -1
  128. package/dist/connectors/cursor.js +3 -2
  129. package/dist/connectors/cursor.js.map +1 -1
  130. package/dist/connectors/setup.d.ts.map +1 -1
  131. package/dist/connectors/setup.js +2 -1
  132. package/dist/connectors/setup.js.map +1 -1
  133. package/dist/connectors/vscode.d.ts.map +1 -1
  134. package/dist/connectors/vscode.js +3 -2
  135. package/dist/connectors/vscode.js.map +1 -1
  136. package/dist/connectors/windsurf.d.ts.map +1 -1
  137. package/dist/connectors/windsurf.js +3 -2
  138. package/dist/connectors/windsurf.js.map +1 -1
  139. package/dist/doctor.d.ts +34 -0
  140. package/dist/doctor.d.ts.map +1 -0
  141. package/dist/doctor.js +134 -0
  142. package/dist/doctor.js.map +1 -0
  143. package/dist/http-server.d.ts +56 -0
  144. package/dist/http-server.d.ts.map +1 -0
  145. package/dist/http-server.js +455 -0
  146. package/dist/http-server.js.map +1 -0
  147. package/dist/index.d.ts +5 -1
  148. package/dist/index.d.ts.map +1 -1
  149. package/dist/index.js +96 -171
  150. package/dist/index.js.map +1 -1
  151. package/dist/lib/consts.d.ts +21 -0
  152. package/dist/lib/consts.d.ts.map +1 -0
  153. package/dist/lib/consts.js +30 -0
  154. package/dist/lib/consts.js.map +1 -0
  155. package/dist/lib/dobby-client.d.ts +60 -3
  156. package/dist/lib/dobby-client.d.ts.map +1 -1
  157. package/dist/lib/dobby-client.js +145 -44
  158. package/dist/lib/dobby-client.js.map +1 -1
  159. package/dist/lib/gateway-key-resolver.d.ts +38 -0
  160. package/dist/lib/gateway-key-resolver.d.ts.map +1 -0
  161. package/dist/lib/gateway-key-resolver.js +59 -0
  162. package/dist/lib/gateway-key-resolver.js.map +1 -0
  163. package/dist/lib/log.d.ts +25 -0
  164. package/dist/lib/log.d.ts.map +1 -0
  165. package/dist/lib/log.js +36 -0
  166. package/dist/lib/log.js.map +1 -0
  167. package/dist/server.d.ts +175 -0
  168. package/dist/server.d.ts.map +1 -0
  169. package/dist/server.js +1017 -0
  170. package/dist/server.js.map +1 -0
  171. package/dist/tools/agent-mail.d.ts +112 -0
  172. package/dist/tools/agent-mail.d.ts.map +1 -0
  173. package/dist/tools/agent-mail.js +118 -0
  174. package/dist/tools/agent-mail.js.map +1 -0
  175. package/dist/tools/agent-versions.d.ts +93 -0
  176. package/dist/tools/agent-versions.d.ts.map +1 -0
  177. package/dist/tools/agent-versions.js +99 -0
  178. package/dist/tools/agent-versions.js.map +1 -0
  179. package/dist/tools/approvals.d.ts +24 -34
  180. package/dist/tools/approvals.d.ts.map +1 -1
  181. package/dist/tools/approvals.js +24 -81
  182. package/dist/tools/approvals.js.map +1 -1
  183. package/dist/tools/claude-code-sync.d.ts +40 -0
  184. package/dist/tools/claude-code-sync.d.ts.map +1 -0
  185. package/dist/tools/claude-code-sync.js +52 -0
  186. package/dist/tools/claude-code-sync.js.map +1 -0
  187. package/dist/tools/control-plane.d.ts +118 -0
  188. package/dist/tools/control-plane.d.ts.map +1 -0
  189. package/dist/tools/control-plane.js +135 -0
  190. package/dist/tools/control-plane.js.map +1 -0
  191. package/dist/tools/crew-builder.d.ts +24 -66
  192. package/dist/tools/crew-builder.d.ts.map +1 -1
  193. package/dist/tools/crew-builder.js +24 -185
  194. package/dist/tools/crew-builder.js.map +1 -1
  195. package/dist/tools/crewai.d.ts +24 -63
  196. package/dist/tools/crewai.d.ts.map +1 -1
  197. package/dist/tools/crewai.js +24 -145
  198. package/dist/tools/crewai.js.map +1 -1
  199. package/dist/tools/exa.d.ts +126 -0
  200. package/dist/tools/exa.d.ts.map +1 -0
  201. package/dist/tools/exa.js +125 -0
  202. package/dist/tools/exa.js.map +1 -0
  203. package/dist/tools/external-agents.d.ts +440 -0
  204. package/dist/tools/external-agents.d.ts.map +1 -0
  205. package/dist/tools/external-agents.js +386 -0
  206. package/dist/tools/external-agents.js.map +1 -0
  207. package/dist/tools/github-mcp.d.ts +228 -0
  208. package/dist/tools/github-mcp.d.ts.map +1 -0
  209. package/dist/tools/github-mcp.js +235 -0
  210. package/dist/tools/github-mcp.js.map +1 -0
  211. package/dist/tools/governance.d.ts +273 -0
  212. package/dist/tools/governance.d.ts.map +1 -0
  213. package/dist/tools/governance.js +286 -0
  214. package/dist/tools/governance.js.map +1 -0
  215. package/dist/tools/hosted-agents.d.ts +216 -0
  216. package/dist/tools/hosted-agents.d.ts.map +1 -0
  217. package/dist/tools/hosted-agents.js +214 -0
  218. package/dist/tools/hosted-agents.js.map +1 -0
  219. package/dist/tools/index.d.ts +6335 -191
  220. package/dist/tools/index.d.ts.map +1 -1
  221. package/dist/tools/index.js +441 -172
  222. package/dist/tools/index.js.map +1 -1
  223. package/dist/tools/jira.d.ts +60 -176
  224. package/dist/tools/jira.d.ts.map +1 -1
  225. package/dist/tools/jira.js +60 -365
  226. package/dist/tools/jira.js.map +1 -1
  227. package/dist/tools/llm-providers.d.ts +50 -0
  228. package/dist/tools/llm-providers.d.ts.map +1 -0
  229. package/dist/tools/llm-providers.js +41 -0
  230. package/dist/tools/llm-providers.js.map +1 -0
  231. package/dist/tools/mcp-metrics.d.ts +47 -0
  232. package/dist/tools/mcp-metrics.d.ts.map +1 -0
  233. package/dist/tools/mcp-metrics.js +53 -0
  234. package/dist/tools/mcp-metrics.js.map +1 -0
  235. package/dist/tools/mcp-tools.d.ts +12 -29
  236. package/dist/tools/mcp-tools.d.ts.map +1 -1
  237. package/dist/tools/mcp-tools.js +12 -131
  238. package/dist/tools/mcp-tools.js.map +1 -1
  239. package/dist/tools/mem0.d.ts +127 -0
  240. package/dist/tools/mem0.d.ts.map +1 -0
  241. package/dist/tools/mem0.js +155 -0
  242. package/dist/tools/mem0.js.map +1 -0
  243. package/dist/tools/memory-graph.d.ts +151 -0
  244. package/dist/tools/memory-graph.d.ts.map +1 -0
  245. package/dist/tools/memory-graph.js +159 -0
  246. package/dist/tools/memory-graph.js.map +1 -0
  247. package/dist/tools/memory-stores.d.ts +141 -0
  248. package/dist/tools/memory-stores.d.ts.map +1 -0
  249. package/dist/tools/memory-stores.js +147 -0
  250. package/dist/tools/memory-stores.js.map +1 -0
  251. package/dist/tools/messages.d.ts +12 -20
  252. package/dist/tools/messages.d.ts.map +1 -1
  253. package/dist/tools/messages.js +12 -49
  254. package/dist/tools/messages.js.map +1 -1
  255. package/dist/tools/moltbook.d.ts +328 -0
  256. package/dist/tools/moltbook.d.ts.map +1 -0
  257. package/dist/tools/moltbook.js +334 -0
  258. package/dist/tools/moltbook.js.map +1 -0
  259. package/dist/tools/monitoring-attribution.d.ts +71 -0
  260. package/dist/tools/monitoring-attribution.d.ts.map +1 -0
  261. package/dist/tools/monitoring-attribution.js +74 -0
  262. package/dist/tools/monitoring-attribution.js.map +1 -0
  263. package/dist/tools/ops.d.ts +139 -0
  264. package/dist/tools/ops.d.ts.map +1 -0
  265. package/dist/tools/ops.js +151 -0
  266. package/dist/tools/ops.js.map +1 -0
  267. package/dist/tools/orchestrations.d.ts +109 -0
  268. package/dist/tools/orchestrations.d.ts.map +1 -0
  269. package/dist/tools/orchestrations.js +115 -0
  270. package/dist/tools/orchestrations.js.map +1 -0
  271. package/dist/tools/outcomes.d.ts +138 -0
  272. package/dist/tools/outcomes.d.ts.map +1 -0
  273. package/dist/tools/outcomes.js +136 -0
  274. package/dist/tools/outcomes.js.map +1 -0
  275. package/dist/tools/schedules.d.ts +149 -0
  276. package/dist/tools/schedules.d.ts.map +1 -0
  277. package/dist/tools/schedules.js +155 -0
  278. package/dist/tools/schedules.js.map +1 -0
  279. package/dist/tools/services.d.ts +6 -16
  280. package/dist/tools/services.d.ts.map +1 -1
  281. package/dist/tools/services.js +6 -135
  282. package/dist/tools/services.js.map +1 -1
  283. package/dist/tools/sessions.d.ts +124 -0
  284. package/dist/tools/sessions.d.ts.map +1 -0
  285. package/dist/tools/sessions.js +130 -0
  286. package/dist/tools/sessions.js.map +1 -0
  287. package/dist/tools/setup-status.d.ts +29 -0
  288. package/dist/tools/setup-status.d.ts.map +1 -0
  289. package/dist/tools/setup-status.js +35 -0
  290. package/dist/tools/setup-status.js.map +1 -0
  291. package/dist/tools/tasks.d.ts +44 -56
  292. package/dist/tools/tasks.d.ts.map +1 -1
  293. package/dist/tools/tasks.js +48 -212
  294. package/dist/tools/tasks.js.map +1 -1
  295. package/dist/tools/tiers.d.ts +55 -0
  296. package/dist/tools/tiers.d.ts.map +1 -0
  297. package/dist/tools/tiers.js +239 -0
  298. package/dist/tools/tiers.js.map +1 -0
  299. package/dist/tools/unified-agents.d.ts +43 -0
  300. package/dist/tools/unified-agents.d.ts.map +1 -0
  301. package/dist/tools/unified-agents.js +46 -0
  302. package/dist/tools/unified-agents.js.map +1 -0
  303. package/dist/tools/web-eval.d.ts +129 -0
  304. package/dist/tools/web-eval.d.ts.map +1 -0
  305. package/dist/tools/web-eval.js +136 -0
  306. package/dist/tools/web-eval.js.map +1 -0
  307. package/dist/tools/workflow.d.ts +105 -0
  308. package/dist/tools/workflow.d.ts.map +1 -0
  309. package/dist/tools/workflow.js +111 -0
  310. package/dist/tools/workflow.js.map +1 -0
  311. package/dist/tools/workloads.d.ts +81 -0
  312. package/dist/tools/workloads.d.ts.map +1 -0
  313. package/dist/tools/workloads.js +81 -0
  314. package/dist/tools/workloads.js.map +1 -0
  315. package/package.json +13 -7
@@ -10,6 +10,12 @@ export const approvalTools = {
10
10
  // Get pending approvals
11
11
  get_pending_approvals: {
12
12
  name: 'get_pending_approvals',
13
+ annotations: {
14
+ title: 'Get Pending Approvals',
15
+ readOnlyHint: true,
16
+ destructiveHint: false,
17
+ openWorldHint: false,
18
+ },
13
19
  description: 'Get all pending approval requests that need your attention',
14
20
  inputSchema: {
15
21
  type: 'object',
@@ -19,6 +25,12 @@ export const approvalTools = {
19
25
  // Approve a task/request (triggers automatic PR merge)
20
26
  approve_task: {
21
27
  name: 'approve_task',
28
+ annotations: {
29
+ title: 'Approve Task',
30
+ readOnlyHint: false,
31
+ destructiveHint: true,
32
+ openWorldHint: false,
33
+ },
22
34
  description: 'Approve a pending approval request. The agent will automatically merge the PR and complete the task.',
23
35
  inputSchema: {
24
36
  type: 'object',
@@ -38,6 +50,12 @@ export const approvalTools = {
38
50
  // Reject a task/request (triggers automatic retry with feedback)
39
51
  reject_task: {
40
52
  name: 'reject_task',
53
+ annotations: {
54
+ title: 'Reject Task',
55
+ readOnlyHint: false,
56
+ destructiveHint: true,
57
+ openWorldHint: false,
58
+ },
41
59
  description: 'Reject a pending approval request. The agent will automatically retry and address your feedback.',
42
60
  inputSchema: {
43
61
  type: 'object',
@@ -57,6 +75,12 @@ export const approvalTools = {
57
75
  // Request changes
58
76
  request_changes: {
59
77
  name: 'request_changes',
78
+ annotations: {
79
+ title: 'Request Changes',
80
+ readOnlyHint: false,
81
+ destructiveHint: true,
82
+ openWorldHint: false,
83
+ },
60
84
  description: 'Request changes to a pending approval (PR needs modifications)',
61
85
  inputSchema: {
62
86
  type: 'object',
@@ -77,88 +101,7 @@ export const approvalTools = {
77
101
  // ============================================
78
102
  // Tool Handlers
79
103
  // ============================================
80
- export async function handleGetPendingApprovals(client) {
81
- const approvals = await client.getPendingApprovals();
82
- if (approvals.length === 0) {
83
- return {
84
- content: [
85
- {
86
- type: 'text',
87
- text: '✨ No pending approvals! All caught up.',
88
- },
89
- ],
90
- };
91
- }
92
- const approvalList = approvals
93
- .map((approval, i) => {
94
- const typeEmoji = {
95
- pr_create: '📝',
96
- pr_merge: '🔀',
97
- deploy: '🚀',
98
- destructive: '⚠️',
99
- }[approval.approval_type] || '❓';
100
- const timeSince = getTimeSince(new Date(approval.created_at));
101
- return `${i + 1}. ${typeEmoji} **${approval.approval_type.replace('_', ' ').toUpperCase()}**
102
- ID: \`${approval.id}\`
103
- Task: \`${approval.task_id}\`
104
- ${approval.description}
105
- ⏰ Waiting: ${timeSince}`;
106
- })
107
- .join('\n\n');
108
- return {
109
- content: [
110
- {
111
- type: 'text',
112
- text: `# 🔔 Pending Approvals (${approvals.length})\n\n${approvalList}\n\n---\nUse \`approve_task\` or \`reject_task\` to respond.`,
113
- },
114
- ],
115
- };
116
- }
117
- export async function handleApproveTask(client, args) {
118
- const result = await client.approveTask(args.approval_id, args.note);
119
- return {
120
- content: [
121
- {
122
- type: 'text',
123
- text: `✅ **Approved!** ${args.approval_id}${args.note ? `\n\nNote: "${args.note}"` : ''}\n\n🔀 The agent is now merging the PR automatically. Use \`get_task_timeline\` to track progress.`,
124
- },
125
- ],
126
- };
127
- }
128
- export async function handleRejectTask(client, args) {
129
- const result = await client.rejectTask(args.approval_id, args.reason);
130
- return {
131
- content: [
132
- {
133
- type: 'text',
134
- text: `❌ **Rejected!** ${args.approval_id}${args.reason ? `\n\n💬 Feedback: "${args.reason}"` : ''}\n\n🔁 The agent is now retrying and will address your feedback. Use \`get_task_timeline\` to track progress.`,
135
- },
136
- ],
137
- };
138
- }
139
- export async function handleRequestChanges(client, args) {
140
- // For now, this is implemented as a rejection with feedback
141
- await client.rejectTask(args.approval_id, `Changes requested: ${args.changes}`);
142
- return {
143
- content: [
144
- {
145
- type: 'text',
146
- text: `📝 Changes requested for: ${args.approval_id}\n\n"${args.changes}"\n\nThe agent will make the requested modifications.`,
147
- },
148
- ],
149
- };
150
- }
151
104
  // ============================================
152
105
  // Helpers
153
106
  // ============================================
154
- function getTimeSince(date) {
155
- const seconds = Math.floor((Date.now() - date.getTime()) / 1000);
156
- if (seconds < 60)
157
- return `${seconds} seconds ago`;
158
- if (seconds < 3600)
159
- return `${Math.floor(seconds / 60)} minutes ago`;
160
- if (seconds < 86400)
161
- return `${Math.floor(seconds / 3600)} hours ago`;
162
- return `${Math.floor(seconds / 86400)} days ago`;
163
- }
164
107
  //# sourceMappingURL=approvals.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"approvals.js","sourceRoot":"","sources":["../../src/tools/approvals.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,+CAA+C;AAC/C,mBAAmB;AACnB,+CAA+C;AAE/C,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,wBAAwB;IACxB,qBAAqB,EAAE;QACrB,IAAI,EAAE,uBAAuB;QAC7B,WAAW,EAAE,4DAA4D;QACzE,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE,EAAE;SACf;KACF;IAED,uDAAuD;IACvD,YAAY,EAAE;QACZ,IAAI,EAAE,cAAc;QACpB,WAAW,EAAE,sGAAsG;QACnH,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE;gBACV,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,4BAA4B;iBAC1C;gBACD,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,4CAA4C;iBAC1D;aACF;YACD,QAAQ,EAAE,CAAC,aAAa,CAAC;SAC1B;KACF;IAED,iEAAiE;IACjE,WAAW,EAAE;QACX,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE,kGAAkG;QAC/G,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE;gBACV,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,2BAA2B;iBACzC;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,kFAAkF;iBAChG;aACF;YACD,QAAQ,EAAE,CAAC,aAAa,CAAC;SAC1B;KACF;IAED,kBAAkB;IAClB,eAAe,EAAE;QACf,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,gEAAgE;QAC7E,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE;gBACV,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,iBAAiB;iBAC/B;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,mCAAmC;iBACjD;aACF;YACD,QAAQ,EAAE,CAAC,aAAa,EAAE,SAAS,CAAC;SACrC;KACF;CACF,CAAC;AAEF,+CAA+C;AAC/C,gBAAgB;AAChB,+CAA+C;AAE/C,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAAC,MAAmB;IACjE,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,mBAAmB,EAAE,CAAC;IAErD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,wCAAwC;iBAC/C;aACF;SACF,CAAC;IACJ,CAAC;IAED,MAAM,YAAY,GAAG,SAAS;SAC3B,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE;QACnB,MAAM,SAAS,GAAG;YAChB,SAAS,EAAE,IAAI;YACf,QAAQ,EAAE,IAAI;YACd,MAAM,EAAE,IAAI;YACZ,WAAW,EAAE,IAAI;SAClB,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,GAAG,CAAC;QAEjC,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;QAE9D,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,SAAS,MAAM,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE;WACpF,QAAQ,CAAC,EAAE;aACT,QAAQ,CAAC,OAAO;KACxB,QAAQ,CAAC,WAAW;gBACT,SAAS,EAAE,CAAC;IACxB,CAAC,CAAC;SACD,IAAI,CAAC,MAAM,CAAC,CAAC;IAEhB,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,2BAA2B,SAAS,CAAC,MAAM,QAAQ,YAAY,8DAA8D;aACpI;SACF;KACF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,MAAmB,EACnB,IAGC;IAED,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IAErE,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,mBAAmB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,oGAAoG;aAC5L;SACF;KACF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,MAAmB,EACnB,IAGC;IAED,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAEtE,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,mBAAmB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,qBAAqB,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,+GAA+G;aAClN;SACF;KACF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,MAAmB,EACnB,IAGC;IAED,4DAA4D;IAC5D,MAAM,MAAM,CAAC,UAAU,CACrB,IAAI,CAAC,WAAW,EAChB,sBAAsB,IAAI,CAAC,OAAO,EAAE,CACrC,CAAC;IAEF,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,6BAA6B,IAAI,CAAC,WAAW,QAAQ,IAAI,CAAC,OAAO,uDAAuD;aAC/H;SACF;KACF,CAAC;AACJ,CAAC;AAED,+CAA+C;AAC/C,UAAU;AACV,+CAA+C;AAE/C,SAAS,YAAY,CAAC,IAAU;IAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;IAEjE,IAAI,OAAO,GAAG,EAAE;QAAE,OAAO,GAAG,OAAO,cAAc,CAAC;IAClD,IAAI,OAAO,GAAG,IAAI;QAAE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,cAAc,CAAC;IACrE,IAAI,OAAO,GAAG,KAAK;QAAE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC;IACtE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,WAAW,CAAC;AACnD,CAAC"}
1
+ {"version":3,"file":"approvals.js","sourceRoot":"","sources":["../../src/tools/approvals.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,+CAA+C;AAC/C,mBAAmB;AACnB,+CAA+C;AAE/C,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,wBAAwB;IACxB,qBAAqB,EAAE;QACrB,IAAI,EAAE,uBAAuB;QAC7B,WAAW,EAAE;YACX,KAAK,EAAE,uBAAuB;YAC9B,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;YACtB,aAAa,EAAE,KAAK;SACrB;QACD,WAAW,EAAE,4DAA4D;QACzE,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE,EAAE;SACf;KACF;IAED,uDAAuD;IACvD,YAAY,EAAE;QACZ,IAAI,EAAE,cAAc;QACpB,WAAW,EAAE;YACX,KAAK,EAAE,cAAc;YACrB,YAAY,EAAE,KAAK;YACnB,eAAe,EAAE,IAAI;YACrB,aAAa,EAAE,KAAK;SACrB;QACD,WAAW,EAAE,sGAAsG;QACnH,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE;gBACV,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,4BAA4B;iBAC1C;gBACD,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,4CAA4C;iBAC1D;aACF;YACD,QAAQ,EAAE,CAAC,aAAa,CAAC;SAC1B;KACF;IAED,iEAAiE;IACjE,WAAW,EAAE;QACX,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE;YACX,KAAK,EAAE,aAAa;YACpB,YAAY,EAAE,KAAK;YACnB,eAAe,EAAE,IAAI;YACrB,aAAa,EAAE,KAAK;SACrB;QACD,WAAW,EAAE,kGAAkG;QAC/G,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE;gBACV,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,2BAA2B;iBACzC;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,kFAAkF;iBAChG;aACF;YACD,QAAQ,EAAE,CAAC,aAAa,CAAC;SAC1B;KACF;IAED,kBAAkB;IAClB,eAAe,EAAE;QACf,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE;YACX,KAAK,EAAE,iBAAiB;YACxB,YAAY,EAAE,KAAK;YACnB,eAAe,EAAE,IAAI;YACrB,aAAa,EAAE,KAAK;SACrB;QACD,WAAW,EAAE,gEAAgE;QAC7E,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE;gBACV,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,iBAAiB;iBAC/B;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,mCAAmC;iBACjD;aACF;YACD,QAAQ,EAAE,CAAC,aAAa,EAAE,SAAS,CAAC;SACrC;KACF;CACF,CAAC;AAEF,+CAA+C;AAC/C,gBAAgB;AAChB,+CAA+C;AAC/C,+CAA+C;AAC/C,UAAU;AACV,+CAA+C"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Claude Code Sync Tool
3
+ *
4
+ * Syncs local Claude Code scheduled tasks with the Dobby platform.
5
+ * Reads SKILL.md files from ~/.claude/scheduled-tasks/ and registers them
6
+ * as external agents with framework='claude_code'.
7
+ *
8
+ * Bi-directional: pushes local state to Dobby, pulls Dobby-side changes back.
9
+ */
10
+ export declare const claudeCodeSyncTools: {
11
+ sync_claude_code_agents: {
12
+ name: string;
13
+ annotations: {
14
+ title: string;
15
+ readOnlyHint: boolean;
16
+ destructiveHint: boolean;
17
+ openWorldHint: boolean;
18
+ };
19
+ description: string;
20
+ inputSchema: {
21
+ type: "object";
22
+ properties: {
23
+ direction: {
24
+ type: string;
25
+ enum: string[];
26
+ description: string;
27
+ };
28
+ dry_run: {
29
+ type: string;
30
+ description: string;
31
+ };
32
+ task_filter: {
33
+ type: string;
34
+ description: string;
35
+ };
36
+ };
37
+ };
38
+ };
39
+ };
40
+ //# sourceMappingURL=claude-code-sync.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-code-sync.d.ts","sourceRoot":"","sources":["../../src/tools/claude-code-sync.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAOH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkC/B,CAAC"}
@@ -0,0 +1,52 @@
1
+ /**
2
+ * Claude Code Sync Tool
3
+ *
4
+ * Syncs local Claude Code scheduled tasks with the Dobby platform.
5
+ * Reads SKILL.md files from ~/.claude/scheduled-tasks/ and registers them
6
+ * as external agents with framework='claude_code'.
7
+ *
8
+ * Bi-directional: pushes local state to Dobby, pulls Dobby-side changes back.
9
+ */
10
+ // ============================================
11
+ // Tool Definitions
12
+ // ============================================
13
+ export const claudeCodeSyncTools = {
14
+ sync_claude_code_agents: {
15
+ name: 'sync_claude_code_agents',
16
+ annotations: {
17
+ title: 'Sync Claude Code Agents',
18
+ readOnlyHint: false,
19
+ destructiveHint: false,
20
+ openWorldHint: false,
21
+ },
22
+ description: 'Sync local Claude Code scheduled tasks with the Dobby platform. ' +
23
+ 'Registers new tasks as managed agents, updates existing ones, and ' +
24
+ 'returns any changes made in the Dobby dashboard for pull-back.',
25
+ inputSchema: {
26
+ type: 'object',
27
+ properties: {
28
+ direction: {
29
+ type: 'string',
30
+ enum: ['push', 'pull', 'both'],
31
+ description: 'Sync direction. "push" sends local state to Dobby. ' +
32
+ '"pull" fetches Dobby changes. "both" (default) does bidirectional sync.',
33
+ },
34
+ dry_run: {
35
+ type: 'boolean',
36
+ description: 'If true, only report what would change without making modifications.',
37
+ },
38
+ task_filter: {
39
+ type: 'string',
40
+ description: 'Optional task ID to sync only a specific task (e.g., "morning-briefing").',
41
+ },
42
+ },
43
+ },
44
+ },
45
+ };
46
+ // ============================================
47
+ // SKILL.md Parser
48
+ // ============================================
49
+ // ============================================
50
+ // Handler
51
+ // ============================================
52
+ //# sourceMappingURL=claude-code-sync.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-code-sync.js","sourceRoot":"","sources":["../../src/tools/claude-code-sync.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,+CAA+C;AAC/C,mBAAmB;AACnB,+CAA+C;AAE/C,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,uBAAuB,EAAE;QACvB,IAAI,EAAE,yBAAyB;QAC/B,WAAW,EAAE;YACX,KAAK,EAAE,yBAAyB;YAChC,YAAY,EAAE,KAAK;YACnB,eAAe,EAAE,KAAK;YACtB,aAAa,EAAE,KAAK;SACrB;QACD,WAAW,EACT,kEAAkE;YAClE,oEAAoE;YACpE,gEAAgE;QAClE,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE;gBACV,SAAS,EAAE;oBACT,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;oBAC9B,WAAW,EACT,qDAAqD;wBACrD,yEAAyE;iBAC5E;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,sEAAsE;iBACpF;gBACD,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,2EAA2E;iBACzF;aACF;SACF;KACF;CACF,CAAC;AAKF,+CAA+C;AAC/C,kBAAkB;AAClB,+CAA+C;AAI/C,+CAA+C;AAC/C,UAAU;AACV,+CAA+C"}
@@ -0,0 +1,118 @@
1
+ /**
2
+ * Control Plane MCP Tools
3
+ *
4
+ * Exposes Control Plane Agents functionality via MCP for Claude Desktop/Cursor/VS Code.
5
+ * 5 tools:
6
+ * 1. list_cp_reports — List CP agent reports (maps to GET /control-plane/reports)
7
+ * 2. run_cp_scan — Trigger on-demand scan (maps to POST /control-plane/run)
8
+ * 3. get_cp_config — Get CP agent config (maps to GET /control-plane/config)
9
+ * 4. verify_audit_seal — Verify a run's tamper-evident seal (maps to GET
10
+ * /workloads/runs/{run_id}/integrity?verify=1)
11
+ * 5. get_data_handling — Tenant PII storage-mode posture (maps to GET
12
+ * /tenants/{tenant_id}/data-handling)
13
+ */
14
+ export declare const controlPlaneTools: {
15
+ list_cp_reports: {
16
+ name: string;
17
+ annotations: {
18
+ title: string;
19
+ readOnlyHint: boolean;
20
+ destructiveHint: boolean;
21
+ openWorldHint: boolean;
22
+ };
23
+ description: string;
24
+ inputSchema: {
25
+ type: "object";
26
+ properties: {
27
+ agent_type: {
28
+ type: string;
29
+ enum: string[];
30
+ description: string;
31
+ };
32
+ limit: {
33
+ type: string;
34
+ description: string;
35
+ default: number;
36
+ };
37
+ offset: {
38
+ type: string;
39
+ description: string;
40
+ default: number;
41
+ };
42
+ };
43
+ required: never[];
44
+ };
45
+ };
46
+ run_cp_scan: {
47
+ name: string;
48
+ annotations: {
49
+ title: string;
50
+ readOnlyHint: boolean;
51
+ destructiveHint: boolean;
52
+ openWorldHint: boolean;
53
+ };
54
+ description: string;
55
+ inputSchema: {
56
+ type: "object";
57
+ properties: {
58
+ agent_type: {
59
+ type: string;
60
+ enum: string[];
61
+ description: string;
62
+ };
63
+ };
64
+ required: string[];
65
+ };
66
+ };
67
+ get_cp_config: {
68
+ name: string;
69
+ annotations: {
70
+ title: string;
71
+ readOnlyHint: boolean;
72
+ destructiveHint: boolean;
73
+ openWorldHint: boolean;
74
+ };
75
+ description: string;
76
+ inputSchema: {
77
+ type: "object";
78
+ properties: {};
79
+ required: never[];
80
+ };
81
+ };
82
+ verify_audit_seal: {
83
+ name: string;
84
+ annotations: {
85
+ title: string;
86
+ readOnlyHint: boolean;
87
+ destructiveHint: boolean;
88
+ openWorldHint: boolean;
89
+ };
90
+ description: string;
91
+ inputSchema: {
92
+ type: "object";
93
+ properties: {
94
+ run_id: {
95
+ type: string;
96
+ description: string;
97
+ };
98
+ };
99
+ required: string[];
100
+ };
101
+ };
102
+ get_data_handling: {
103
+ name: string;
104
+ annotations: {
105
+ title: string;
106
+ readOnlyHint: boolean;
107
+ destructiveHint: boolean;
108
+ openWorldHint: boolean;
109
+ };
110
+ description: string;
111
+ inputSchema: {
112
+ type: "object";
113
+ properties: {};
114
+ required: never[];
115
+ };
116
+ };
117
+ };
118
+ //# sourceMappingURL=control-plane.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"control-plane.d.ts","sourceRoot":"","sources":["../../src/tools/control-plane.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAMH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2H7B,CAAC"}
@@ -0,0 +1,135 @@
1
+ /**
2
+ * Control Plane MCP Tools
3
+ *
4
+ * Exposes Control Plane Agents functionality via MCP for Claude Desktop/Cursor/VS Code.
5
+ * 5 tools:
6
+ * 1. list_cp_reports — List CP agent reports (maps to GET /control-plane/reports)
7
+ * 2. run_cp_scan — Trigger on-demand scan (maps to POST /control-plane/run)
8
+ * 3. get_cp_config — Get CP agent config (maps to GET /control-plane/config)
9
+ * 4. verify_audit_seal — Verify a run's tamper-evident seal (maps to GET
10
+ * /workloads/runs/{run_id}/integrity?verify=1)
11
+ * 5. get_data_handling — Tenant PII storage-mode posture (maps to GET
12
+ * /tenants/{tenant_id}/data-handling)
13
+ */
14
+ // ============================================
15
+ // Tool Definitions
16
+ // ============================================
17
+ export const controlPlaneTools = {
18
+ list_cp_reports: {
19
+ name: "list_cp_reports",
20
+ annotations: {
21
+ title: "List CP Reports",
22
+ readOnlyHint: true,
23
+ destructiveHint: false,
24
+ openWorldHint: false,
25
+ },
26
+ description: "List Control Plane agent reports for the current tenant. Returns automated security, cost, compliance, and health scan results. Supports filtering by agent type and pagination.",
27
+ inputSchema: {
28
+ type: "object",
29
+ properties: {
30
+ agent_type: {
31
+ type: "string",
32
+ enum: [
33
+ "security_auditor",
34
+ "finops_advisor",
35
+ "policy_compliance",
36
+ "health_monitor",
37
+ ],
38
+ description: "Filter by agent type (optional — omit for all)",
39
+ },
40
+ limit: {
41
+ type: "number",
42
+ description: "Max reports to return (default: 10)",
43
+ default: 10,
44
+ },
45
+ offset: {
46
+ type: "number",
47
+ description: "Offset for pagination (default: 0)",
48
+ default: 0,
49
+ },
50
+ },
51
+ required: [],
52
+ },
53
+ },
54
+ run_cp_scan: {
55
+ name: "run_cp_scan",
56
+ annotations: {
57
+ title: "Run CP Scan",
58
+ readOnlyHint: false,
59
+ destructiveHint: false,
60
+ openWorldHint: false,
61
+ },
62
+ description: 'Trigger an on-demand Control Plane agent scan. Runs the specified agent (security_auditor, finops_advisor, policy_compliance, health_monitor) and returns the report ID. Use "all" to run all agents.',
63
+ inputSchema: {
64
+ type: "object",
65
+ properties: {
66
+ agent_type: {
67
+ type: "string",
68
+ enum: [
69
+ "security_auditor",
70
+ "finops_advisor",
71
+ "policy_compliance",
72
+ "health_monitor",
73
+ "all",
74
+ ],
75
+ description: 'Which agent to run (or "all" to run all)',
76
+ },
77
+ },
78
+ required: ["agent_type"],
79
+ },
80
+ },
81
+ get_cp_config: {
82
+ name: "get_cp_config",
83
+ annotations: {
84
+ title: "Get CP Config",
85
+ readOnlyHint: true,
86
+ destructiveHint: false,
87
+ openWorldHint: false,
88
+ },
89
+ description: "Get Control Plane agent configuration for the current tenant. Returns enable/disable state, schedule, and notification settings for all 4 CP agents.",
90
+ inputSchema: {
91
+ type: "object",
92
+ properties: {},
93
+ required: [],
94
+ },
95
+ },
96
+ verify_audit_seal: {
97
+ name: "verify_audit_seal",
98
+ annotations: {
99
+ title: "Verify Audit Seal",
100
+ readOnlyHint: true,
101
+ destructiveHint: false,
102
+ openWorldHint: false,
103
+ },
104
+ description: "Verify a workload run's tamper-evident audit seal. Returns the run's hash-chain seal (and its compliance scan's seal), re-projects the live source rows, and reports whether the sealed content hashes still match — cryptographic proof the evidence was not altered since sealing.",
105
+ inputSchema: {
106
+ type: "object",
107
+ properties: {
108
+ run_id: {
109
+ type: "string",
110
+ description: "The workload run id (wr_...) to verify",
111
+ },
112
+ },
113
+ required: ["run_id"],
114
+ },
115
+ },
116
+ get_data_handling: {
117
+ name: "get_data_handling",
118
+ annotations: {
119
+ title: "Get Data Handling",
120
+ readOnlyHint: true,
121
+ destructiveHint: false,
122
+ openWorldHint: false,
123
+ },
124
+ description: "Return the current tenant's PII data-handling posture: the effective storage mode (minimize / redact_then_store / process_and_retain), its recorded legal basis (if any), the platform default, and each active connector's content-capture opt-in. Read-only.",
125
+ inputSchema: {
126
+ type: "object",
127
+ properties: {},
128
+ required: [],
129
+ },
130
+ },
131
+ };
132
+ // ============================================
133
+ // Tool Handlers
134
+ // ============================================
135
+ //# sourceMappingURL=control-plane.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"control-plane.js","sourceRoot":"","sources":["../../src/tools/control-plane.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,+CAA+C;AAC/C,mBAAmB;AACnB,+CAA+C;AAE/C,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,eAAe,EAAE;QACf,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE;YACX,KAAK,EAAE,iBAAiB;YACxB,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;YACtB,aAAa,EAAE,KAAK;SACrB;QACD,WAAW,EACT,kLAAkL;QACpL,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE;gBACV,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE;wBACJ,kBAAkB;wBAClB,gBAAgB;wBAChB,mBAAmB;wBACnB,gBAAgB;qBACjB;oBACD,WAAW,EAAE,gDAAgD;iBAC9D;gBACD,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,qCAAqC;oBAClD,OAAO,EAAE,EAAE;iBACZ;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,oCAAoC;oBACjD,OAAO,EAAE,CAAC;iBACX;aACF;YACD,QAAQ,EAAE,EAAE;SACb;KACF;IAED,WAAW,EAAE;QACX,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE;YACX,KAAK,EAAE,aAAa;YACpB,YAAY,EAAE,KAAK;YACnB,eAAe,EAAE,KAAK;YACtB,aAAa,EAAE,KAAK;SACrB;QACD,WAAW,EACT,uMAAuM;QACzM,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE;gBACV,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE;wBACJ,kBAAkB;wBAClB,gBAAgB;wBAChB,mBAAmB;wBACnB,gBAAgB;wBAChB,KAAK;qBACN;oBACD,WAAW,EAAE,0CAA0C;iBACxD;aACF;YACD,QAAQ,EAAE,CAAC,YAAY,CAAC;SACzB;KACF;IAED,aAAa,EAAE;QACb,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE;YACX,KAAK,EAAE,eAAe;YACtB,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;YACtB,aAAa,EAAE,KAAK;SACrB;QACD,WAAW,EACT,sJAAsJ;QACxJ,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE,EAAE;YACd,QAAQ,EAAE,EAAE;SACb;KACF;IAED,iBAAiB,EAAE;QACjB,IAAI,EAAE,mBAAmB;QACzB,WAAW,EAAE;YACX,KAAK,EAAE,mBAAmB;YAC1B,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;YACtB,aAAa,EAAE,KAAK;SACrB;QACD,WAAW,EACT,sRAAsR;QACxR,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE;gBACV,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,wCAAwC;iBACtD;aACF;YACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;SACrB;KACF;IAED,iBAAiB,EAAE;QACjB,IAAI,EAAE,mBAAmB;QACzB,WAAW,EAAE;YACX,KAAK,EAAE,mBAAmB;YAC1B,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;YACtB,aAAa,EAAE,KAAK;SACrB;QACD,WAAW,EACT,gQAAgQ;QAClQ,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE,EAAE;YACd,QAAQ,EAAE,EAAE;SACb;KACF;CACF,CAAC;AAEF,+CAA+C;AAC/C,gBAAgB;AAChB,+CAA+C"}
@@ -14,10 +14,15 @@
14
14
  * crew_status — Check run status and results
15
15
  * crew_list — List recent crew runs
16
16
  */
17
- import { DobbyClient } from '../lib/dobby-client.js';
18
17
  export declare const crewBuilderTools: {
19
18
  crew_validate: {
20
19
  name: string;
20
+ annotations: {
21
+ title: string;
22
+ readOnlyHint: boolean;
23
+ destructiveHint: boolean;
24
+ openWorldHint: boolean;
25
+ };
21
26
  description: string;
22
27
  inputSchema: {
23
28
  type: "object";
@@ -36,6 +41,12 @@ export declare const crewBuilderTools: {
36
41
  };
37
42
  crew_kickoff: {
38
43
  name: string;
44
+ annotations: {
45
+ title: string;
46
+ readOnlyHint: boolean;
47
+ destructiveHint: boolean;
48
+ openWorldHint: boolean;
49
+ };
39
50
  description: string;
40
51
  inputSchema: {
41
52
  type: "object";
@@ -66,6 +77,12 @@ export declare const crewBuilderTools: {
66
77
  };
67
78
  crew_status: {
68
79
  name: string;
80
+ annotations: {
81
+ title: string;
82
+ readOnlyHint: boolean;
83
+ destructiveHint: boolean;
84
+ openWorldHint: boolean;
85
+ };
69
86
  description: string;
70
87
  inputSchema: {
71
88
  type: "object";
@@ -80,6 +97,12 @@ export declare const crewBuilderTools: {
80
97
  };
81
98
  crew_list: {
82
99
  name: string;
100
+ annotations: {
101
+ title: string;
102
+ readOnlyHint: boolean;
103
+ destructiveHint: boolean;
104
+ openWorldHint: boolean;
105
+ };
83
106
  description: string;
84
107
  inputSchema: {
85
108
  type: "object";
@@ -97,69 +120,4 @@ export declare const crewBuilderTools: {
97
120
  };
98
121
  };
99
122
  };
100
- export declare function handleCrewValidate(client: DobbyClient, args: {
101
- agents_yaml: string;
102
- tasks_yaml: string;
103
- }): Promise<{
104
- content: {
105
- type: "text";
106
- text: string;
107
- }[];
108
- isError?: undefined;
109
- } | {
110
- content: {
111
- type: "text";
112
- text: string;
113
- }[];
114
- isError: boolean;
115
- }>;
116
- export declare function handleCrewKickoff(client: DobbyClient, args: {
117
- agents_yaml: string;
118
- tasks_yaml: string;
119
- variables?: Record<string, string>;
120
- process_type?: string;
121
- }): Promise<{
122
- content: {
123
- type: "text";
124
- text: string;
125
- }[];
126
- isError?: undefined;
127
- } | {
128
- content: {
129
- type: "text";
130
- text: string;
131
- }[];
132
- isError: boolean;
133
- }>;
134
- export declare function handleCrewStatus(client: DobbyClient, args: {
135
- run_id: string;
136
- }): Promise<{
137
- content: {
138
- type: "text";
139
- text: string;
140
- }[];
141
- isError?: undefined;
142
- } | {
143
- content: {
144
- type: "text";
145
- text: string;
146
- }[];
147
- isError: boolean;
148
- }>;
149
- export declare function handleCrewList(client: DobbyClient, args: {
150
- limit?: number;
151
- status_filter?: string;
152
- }): Promise<{
153
- content: {
154
- type: "text";
155
- text: string;
156
- }[];
157
- isError?: undefined;
158
- } | {
159
- content: {
160
- type: "text";
161
- text: string;
162
- }[];
163
- isError: boolean;
164
- }>;
165
123
  //# sourceMappingURL=crew-builder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"crew-builder.d.ts","sourceRoot":"","sources":["../../src/tools/crew-builder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAMrD,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6G5B,CAAC;AAuDF,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE;;;;;;;;;;;;GA+ClD;AAED,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE;IACJ,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;;;;;;;;;;;;GAgCF;AAED,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE;;;;;;;;;;;;GAoDzB;AAED,wBAAsB,cAAc,CAClC,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;;;;;;;;GA6CjD"}
1
+ {"version":3,"file":"crew-builder.d.ts","sourceRoot":"","sources":["../../src/tools/crew-builder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAOH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqI5B,CAAC"}