@sfdxy/anypoint-connect 0.16.3 → 0.18.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 (197) hide show
  1. package/README.md +17 -6
  2. package/dist/analysis/audit-actors.d.ts +36 -0
  3. package/dist/analysis/audit-actors.d.ts.map +1 -0
  4. package/dist/analysis/audit-actors.js +93 -0
  5. package/dist/analysis/audit-actors.js.map +1 -0
  6. package/dist/analysis/credentials.d.ts +49 -0
  7. package/dist/analysis/credentials.d.ts.map +1 -0
  8. package/dist/analysis/credentials.js +118 -0
  9. package/dist/analysis/credentials.js.map +1 -0
  10. package/dist/analysis/parser.d.ts +5 -0
  11. package/dist/analysis/parser.d.ts.map +1 -1
  12. package/dist/analysis/parser.js +10 -1
  13. package/dist/analysis/parser.js.map +1 -1
  14. package/dist/api/AlertsApi.d.ts +138 -0
  15. package/dist/api/AlertsApi.d.ts.map +1 -0
  16. package/dist/api/AlertsApi.js +168 -0
  17. package/dist/api/AlertsApi.js.map +1 -0
  18. package/dist/api/LogsApi.d.ts +88 -12
  19. package/dist/api/LogsApi.d.ts.map +1 -1
  20. package/dist/api/LogsApi.js +335 -31
  21. package/dist/api/LogsApi.js.map +1 -1
  22. package/dist/auth/BearerProvider.d.ts +12 -0
  23. package/dist/auth/BearerProvider.d.ts.map +1 -0
  24. package/dist/auth/BearerProvider.js +18 -0
  25. package/dist/auth/BearerProvider.js.map +1 -0
  26. package/dist/auth/ClientCredentialsProvider.d.ts +23 -0
  27. package/dist/auth/ClientCredentialsProvider.d.ts.map +1 -0
  28. package/dist/auth/ClientCredentialsProvider.js +59 -0
  29. package/dist/auth/ClientCredentialsProvider.js.map +1 -0
  30. package/dist/auth/TokenProvider.d.ts +12 -0
  31. package/dist/auth/TokenProvider.d.ts.map +1 -0
  32. package/dist/auth/TokenProvider.js +2 -0
  33. package/dist/auth/TokenProvider.js.map +1 -0
  34. package/dist/auth/index.d.ts +1 -0
  35. package/dist/auth/index.d.ts.map +1 -1
  36. package/dist/cli.js +8 -0
  37. package/dist/cli.js.map +1 -1
  38. package/dist/client/AnypointClient.d.ts +22 -0
  39. package/dist/client/AnypointClient.d.ts.map +1 -1
  40. package/dist/client/AnypointClient.js +82 -12
  41. package/dist/client/AnypointClient.js.map +1 -1
  42. package/dist/client/HttpClient.d.ts +3 -3
  43. package/dist/client/HttpClient.d.ts.map +1 -1
  44. package/dist/client/HttpClient.js +13 -3
  45. package/dist/client/HttpClient.js.map +1 -1
  46. package/dist/commands/alerts.d.ts +16 -0
  47. package/dist/commands/alerts.d.ts.map +1 -0
  48. package/dist/commands/alerts.js +375 -0
  49. package/dist/commands/alerts.js.map +1 -0
  50. package/dist/commands/api.d.ts.map +1 -1
  51. package/dist/commands/api.js +8 -3
  52. package/dist/commands/api.js.map +1 -1
  53. package/dist/commands/app-change-cli.d.ts +5 -2
  54. package/dist/commands/app-change-cli.d.ts.map +1 -1
  55. package/dist/commands/app-change-cli.js +19 -5
  56. package/dist/commands/app-change-cli.js.map +1 -1
  57. package/dist/commands/apps.d.ts.map +1 -1
  58. package/dist/commands/apps.js +69 -22
  59. package/dist/commands/apps.js.map +1 -1
  60. package/dist/commands/auth.d.ts.map +1 -1
  61. package/dist/commands/auth.js +21 -0
  62. package/dist/commands/auth.js.map +1 -1
  63. package/dist/commands/config.d.ts.map +1 -1
  64. package/dist/commands/config.js +20 -1
  65. package/dist/commands/config.js.map +1 -1
  66. package/dist/commands/deploy.d.ts.map +1 -1
  67. package/dist/commands/deploy.js +17 -6
  68. package/dist/commands/deploy.js.map +1 -1
  69. package/dist/commands/index.d.ts +1 -0
  70. package/dist/commands/index.d.ts.map +1 -1
  71. package/dist/commands/index.js +1 -0
  72. package/dist/commands/index.js.map +1 -1
  73. package/dist/commands/logs.d.ts +2 -1
  74. package/dist/commands/logs.d.ts.map +1 -1
  75. package/dist/commands/logs.js +105 -10
  76. package/dist/commands/logs.js.map +1 -1
  77. package/dist/commands/monitor.d.ts.map +1 -1
  78. package/dist/commands/monitor.js +29 -1
  79. package/dist/commands/monitor.js.map +1 -1
  80. package/dist/commands/runtimes.d.ts.map +1 -1
  81. package/dist/commands/runtimes.js +38 -5
  82. package/dist/commands/runtimes.js.map +1 -1
  83. package/dist/commands/shared.d.ts.map +1 -1
  84. package/dist/commands/shared.js +1 -7
  85. package/dist/commands/shared.js.map +1 -1
  86. package/dist/config/auth-modes.d.ts +11 -0
  87. package/dist/config/auth-modes.d.ts.map +1 -0
  88. package/dist/config/auth-modes.js +18 -0
  89. package/dist/config/auth-modes.js.map +1 -0
  90. package/dist/config/profiles.d.ts +19 -2
  91. package/dist/config/profiles.d.ts.map +1 -1
  92. package/dist/config/profiles.js +68 -24
  93. package/dist/config/profiles.js.map +1 -1
  94. package/dist/index.d.ts +12 -1
  95. package/dist/index.d.ts.map +1 -1
  96. package/dist/index.js +10 -0
  97. package/dist/index.js.map +1 -1
  98. package/dist/mcp/server.d.ts.map +1 -1
  99. package/dist/mcp/server.js +4 -9
  100. package/dist/mcp/server.js.map +1 -1
  101. package/dist/mcp/tools/alerts.d.ts +82 -0
  102. package/dist/mcp/tools/alerts.d.ts.map +1 -0
  103. package/dist/mcp/tools/alerts.js +423 -0
  104. package/dist/mcp/tools/alerts.js.map +1 -0
  105. package/dist/mcp/tools/api-manager.d.ts.map +1 -1
  106. package/dist/mcp/tools/api-manager.js +6 -1
  107. package/dist/mcp/tools/api-manager.js.map +1 -1
  108. package/dist/mcp/tools/app-inputs.d.ts +20 -2
  109. package/dist/mcp/tools/app-inputs.d.ts.map +1 -1
  110. package/dist/mcp/tools/app-inputs.js +40 -2
  111. package/dist/mcp/tools/app-inputs.js.map +1 -1
  112. package/dist/mcp/tools/apps-deploy.d.ts.map +1 -1
  113. package/dist/mcp/tools/apps-deploy.js +65 -13
  114. package/dist/mcp/tools/apps-deploy.js.map +1 -1
  115. package/dist/mcp/tools/apps-lifecycle.d.ts.map +1 -1
  116. package/dist/mcp/tools/apps-lifecycle.js +37 -15
  117. package/dist/mcp/tools/apps-lifecycle.js.map +1 -1
  118. package/dist/mcp/tools/apps-read.d.ts.map +1 -1
  119. package/dist/mcp/tools/apps-read.js +11 -5
  120. package/dist/mcp/tools/apps-read.js.map +1 -1
  121. package/dist/mcp/tools/audit.d.ts.map +1 -1
  122. package/dist/mcp/tools/audit.js +17 -4
  123. package/dist/mcp/tools/audit.js.map +1 -1
  124. package/dist/mcp/tools/exchange.d.ts.map +1 -1
  125. package/dist/mcp/tools/exchange.js +38 -18
  126. package/dist/mcp/tools/exchange.js.map +1 -1
  127. package/dist/mcp/tools/identity.d.ts.map +1 -1
  128. package/dist/mcp/tools/identity.js +29 -2
  129. package/dist/mcp/tools/identity.js.map +1 -1
  130. package/dist/mcp/tools/index.d.ts +1 -0
  131. package/dist/mcp/tools/index.d.ts.map +1 -1
  132. package/dist/mcp/tools/index.js +1 -0
  133. package/dist/mcp/tools/index.js.map +1 -1
  134. package/dist/mcp/tools/logs.d.ts +1 -1
  135. package/dist/mcp/tools/logs.d.ts.map +1 -1
  136. package/dist/mcp/tools/logs.js +34 -1
  137. package/dist/mcp/tools/logs.js.map +1 -1
  138. package/dist/mcp/tools/monitoring.d.ts.map +1 -1
  139. package/dist/mcp/tools/monitoring.js +5 -3
  140. package/dist/mcp/tools/monitoring.js.map +1 -1
  141. package/dist/mcp/tools/output-schemas.d.ts +83 -0
  142. package/dist/mcp/tools/output-schemas.d.ts.map +1 -0
  143. package/dist/mcp/tools/output-schemas.js +81 -0
  144. package/dist/mcp/tools/output-schemas.js.map +1 -0
  145. package/dist/mcp/tools/profile.d.ts +17 -3
  146. package/dist/mcp/tools/profile.d.ts.map +1 -1
  147. package/dist/mcp/tools/profile.js +122 -10
  148. package/dist/mcp/tools/profile.js.map +1 -1
  149. package/dist/mcp/tools/shared.d.ts +34 -2
  150. package/dist/mcp/tools/shared.d.ts.map +1 -1
  151. package/dist/mcp/tools/shared.js +37 -4
  152. package/dist/mcp/tools/shared.js.map +1 -1
  153. package/dist/safety/artifact.d.ts +45 -0
  154. package/dist/safety/artifact.d.ts.map +1 -1
  155. package/dist/safety/artifact.js +109 -0
  156. package/dist/safety/artifact.js.map +1 -1
  157. package/dist/safety/guards.d.ts +10 -0
  158. package/dist/safety/guards.d.ts.map +1 -1
  159. package/dist/safety/guards.js +16 -0
  160. package/dist/safety/guards.js.map +1 -1
  161. package/dist/safety/plan-binding.d.ts +21 -0
  162. package/dist/safety/plan-binding.d.ts.map +1 -0
  163. package/dist/safety/plan-binding.js +61 -0
  164. package/dist/safety/plan-binding.js.map +1 -0
  165. package/dist/safety/preapproval.d.ts +102 -0
  166. package/dist/safety/preapproval.d.ts.map +1 -0
  167. package/dist/safety/preapproval.js +251 -0
  168. package/dist/safety/preapproval.js.map +1 -0
  169. package/dist/safety/secrets.d.ts +7 -0
  170. package/dist/safety/secrets.d.ts.map +1 -1
  171. package/dist/safety/secrets.js +16 -0
  172. package/dist/safety/secrets.js.map +1 -1
  173. package/dist/utils/formatter.d.ts +2 -0
  174. package/dist/utils/formatter.d.ts.map +1 -1
  175. package/dist/utils/formatter.js +4 -0
  176. package/dist/utils/formatter.js.map +1 -1
  177. package/dist/utils/logger.d.ts +2 -0
  178. package/dist/utils/logger.d.ts.map +1 -1
  179. package/dist/utils/logger.js +23 -13
  180. package/dist/utils/logger.js.map +1 -1
  181. package/dist/workflows/alerts.d.ts +309 -0
  182. package/dist/workflows/alerts.d.ts.map +1 -0
  183. package/dist/workflows/alerts.js +631 -0
  184. package/dist/workflows/alerts.js.map +1 -0
  185. package/dist/workflows/app-change.d.ts +32 -1
  186. package/dist/workflows/app-change.d.ts.map +1 -1
  187. package/dist/workflows/app-change.js +57 -2
  188. package/dist/workflows/app-change.js.map +1 -1
  189. package/dist/workflows/artifact-verification.d.ts +52 -0
  190. package/dist/workflows/artifact-verification.d.ts.map +1 -0
  191. package/dist/workflows/artifact-verification.js +85 -0
  192. package/dist/workflows/artifact-verification.js.map +1 -0
  193. package/dist/workflows/jar-deployment.d.ts +37 -10
  194. package/dist/workflows/jar-deployment.d.ts.map +1 -1
  195. package/dist/workflows/jar-deployment.js +44 -13
  196. package/dist/workflows/jar-deployment.js.map +1 -1
  197. package/package.json +1 -1
@@ -0,0 +1,423 @@
1
+ /**
2
+ * MCP Tool Registrar — Alert tools
3
+ * list_alerts, get_alert, create_alert, update_alert, set_alert_enabled, delete_alert
4
+ *
5
+ * Anypoint Monitoring alerts through the undocumented observability API used by the Monitoring UI.
6
+ * Writes preview by default, need confirm: true, and in production confirmProduction or a user-level
7
+ * pre-approval, judged by the alert's own environment. Recipients are masked unless asked for.
8
+ */
9
+ import { z } from 'zod';
10
+ import { ALERT_METRIC_IDS, ALERT_OPERATORS, AlertPendingError, AlertsUnsupportedError, } from '../../api/AlertsApi.js';
11
+ import { CHANGE_IN_PROGRESS, MAX_ALERT_WAIT_SECONDS, MAX_DURATION_MINUTES, SEVERITY_LABELS, alertEnvironment, alertWait, describeNotifications, executeDeleteAlert, executeUpdateAlert, normalizeAlert, normalizeRuntimeManagerAlert, planCreateAlert, planUpdateAlert, previewPayload, readAlertForDelete, summarizeRecipients, targetsApp, } from '../../workflows/alerts.js';
12
+ import { errorMessage } from '../../utils/errors.js';
13
+ import { dryRunPreview, guardWrite, mcpError, mcpStructured, mcpText, productionFields, writeInputs, } from './shared.js';
14
+ import { alertListOutput, alertOutput } from './output-schemas.js';
15
+ const notificationSchema = z.discriminatedUnion('type', [
16
+ z.object({
17
+ type: z.literal('EMAIL'),
18
+ recipients: z.array(z.string()).min(1).describe('Email addresses'),
19
+ subject: z.string().describe('Email subject'),
20
+ message: z.string().describe('Message template'),
21
+ }),
22
+ z.object({
23
+ type: z.literal('SLACK'),
24
+ channelId: z.string().describe('Slack channel ID'),
25
+ carrierId: z.string().optional().describe('Slack connection (carrier) ID'),
26
+ message: z.string().describe('Message template'),
27
+ }),
28
+ ]);
29
+ const waitInput = {
30
+ waitSeconds: z
31
+ .number()
32
+ .min(0)
33
+ .max(MAX_ALERT_WAIT_SECONDS)
34
+ .optional()
35
+ .describe(`After the platform accepts the change, keep checking the alert list this many seconds (max ${MAX_ALERT_WAIT_SECONDS}) for it to apply. The write is never resent`),
36
+ };
37
+ const conditionInputs = {
38
+ operator: z.enum(ALERT_OPERATORS).describe('Comparison with the threshold'),
39
+ threshold: z
40
+ .number()
41
+ .describe('Threshold in the metric unit: a percentage (more than 0, at most 100) for cpu_utilization and memory_utilization, a whole number for counts, milliseconds for response times'),
42
+ durationMinutes: z
43
+ .number()
44
+ .int()
45
+ .min(1)
46
+ .max(MAX_DURATION_MINUTES)
47
+ .describe('How many minutes the condition must hold (evaluation window)'),
48
+ severity: z
49
+ .union([z.number().int().min(0).max(3), z.enum(SEVERITY_LABELS)])
50
+ .describe('Severity: 0 LOW, 1 MEDIUM, 2 HIGH, 3 CRITICAL, by number or label'),
51
+ };
52
+ function unsupported(error) {
53
+ return { supported: false, family: error.family, status: error.status, message: error.message };
54
+ }
55
+ function failure(error) {
56
+ if (error instanceof AlertsUnsupportedError)
57
+ return { ...mcpText(unsupported(error)), isError: true };
58
+ if (error instanceof AlertPendingError) {
59
+ return { ...mcpText({ refused: true, retryLater: true, message: error.message }), isError: true };
60
+ }
61
+ return mcpError(error);
62
+ }
63
+ /** The write body for a preview: exact, with existing recipients masked unless the caller supplied them. */
64
+ function previewBody(body, revealNotifications) {
65
+ return revealNotifications
66
+ ? body
67
+ : { ...body, notifications: describeNotifications(body.notifications ?? [], false) };
68
+ }
69
+ export function registerAlertTools(server, client) {
70
+ server.registerTool('list_alerts', {
71
+ title: 'List Alerts',
72
+ description: 'Lists alerts across Anypoint Monitoring (metric alerts on apps and API instances) and, with an environment, Runtime Manager event alerts. Each alert is normalized to {id, source, name, enabled, severity (LOW, MEDIUM, HIGH, CRITICAL), status, state, entity{type, name, deploymentType, environment}, condition{metric, operator, threshold, unit, windowMinutes} (Runtime Manager: condition{event}), recipientCount}. Recipients are masked to counts; revealRecipients adds the recipients and their domains. Deleted alerts do not appear: the platform drops them from the list. ' +
73
+ 'Uses an undocumented API; a family the organization or token cannot reach is reported as unsupported.',
74
+ inputSchema: {
75
+ environment: z
76
+ .string()
77
+ .optional()
78
+ .describe('Environment name or ID. Required for Runtime Manager alerts'),
79
+ entityType: z
80
+ .enum(['application', 'api', 'server'])
81
+ .optional()
82
+ .describe('Only alerts on this kind of target'),
83
+ app: z.string().optional().describe('Only alerts on this application name'),
84
+ apiInstanceId: z.string().optional().describe('Only alerts on this API instance ID'),
85
+ name: z.string().optional().describe('Only alerts whose name contains this text (case-insensitive)'),
86
+ status: z.enum(['PENDING', 'ACTIVE']).optional().describe('Only alerts with this status'),
87
+ source: z
88
+ .enum(['monitoring', 'runtime-manager', 'all'])
89
+ .optional()
90
+ .describe('Alert family (default all)'),
91
+ revealRecipients: z.boolean().optional().describe('Include full notification recipients'),
92
+ },
93
+ outputSchema: alertListOutput,
94
+ annotations: { readOnlyHint: true },
95
+ }, async (input) => {
96
+ try {
97
+ const orgId = await client.getDefaultOrgId();
98
+ const env = input.environment
99
+ ? await client.accessManagement.resolveEnvironment(orgId, input.environment)
100
+ : undefined;
101
+ const source = input.source ?? 'all';
102
+ const sources = {};
103
+ const alerts = [];
104
+ const needle = input.name?.toLowerCase();
105
+ if (source !== 'runtime-manager') {
106
+ try {
107
+ const found = (await client.alerts.list(orgId, { environmentId: env?.id }))
108
+ .filter((a) => input.status ? a.alertStatus === input.status : a.alertStatus !== 'DELETED')
109
+ .filter((a) => !input.entityType || a.entity?.entityType === input.entityType)
110
+ .filter((a) => !input.app || a.entity?.appId?.toLowerCase() === input.app.toLowerCase())
111
+ .filter((a) => !input.apiInstanceId || String(a.entity?.apiInstanceId) === input.apiInstanceId)
112
+ .filter((a) => !needle || a.name?.toLowerCase().includes(needle));
113
+ alerts.push(...found.map((a) => normalizeAlert(a, { reveal: input.revealRecipients })));
114
+ sources.monitoring = { supported: true, count: found.length };
115
+ }
116
+ catch (error) {
117
+ if (!(error instanceof AlertsUnsupportedError))
118
+ throw error;
119
+ sources.monitoring = unsupported(error);
120
+ }
121
+ }
122
+ if (source !== 'monitoring') {
123
+ if (!env) {
124
+ sources['runtime-manager'] = { skipped: 'pass environment to read Runtime Manager alerts' };
125
+ }
126
+ else {
127
+ try {
128
+ const found = (await client.alerts.listRuntimeManager(orgId, env.id))
129
+ .map((a) => normalizeRuntimeManagerAlert(a, { reveal: input.revealRecipients }))
130
+ .filter((a) => !needle ||
131
+ String(a.name ?? '')
132
+ .toLowerCase()
133
+ .includes(needle))
134
+ .filter((a) => !input.app || targetsApp(a.entity.resources, input.app));
135
+ alerts.push(...found);
136
+ sources['runtime-manager'] = { supported: true, count: found.length, readOnly: true };
137
+ }
138
+ catch (error) {
139
+ if (!(error instanceof AlertsUnsupportedError))
140
+ throw error;
141
+ sources['runtime-manager'] = unsupported(error);
142
+ }
143
+ }
144
+ }
145
+ return mcpStructured({
146
+ ...(env ? { environment: env.name } : {}),
147
+ total: alerts.length,
148
+ sources,
149
+ alerts,
150
+ });
151
+ }
152
+ catch (error) {
153
+ return failure(error);
154
+ }
155
+ });
156
+ server.registerTool('get_alert', {
157
+ title: 'Get Alert',
158
+ description: 'Returns one Anypoint Monitoring alert, normalized as in list_alerts, plus its raw settings and entity. Recipients are masked unless revealRecipients is true.',
159
+ inputSchema: {
160
+ id: z.string().describe('Alert ID from list_alerts'),
161
+ revealRecipients: z.boolean().optional().describe('Include full notification recipients'),
162
+ },
163
+ outputSchema: alertOutput,
164
+ annotations: { readOnlyHint: true },
165
+ }, async ({ id, revealRecipients }) => {
166
+ try {
167
+ const orgId = await client.getDefaultOrgId();
168
+ const alert = await client.alerts.get(orgId, id);
169
+ if (!alert)
170
+ return { ...mcpText({ found: false, message: `Alert ${id} not found` }), isError: true };
171
+ return mcpStructured({
172
+ ...normalizeAlert(alert, { reveal: revealRecipients }),
173
+ settings: alert.settings,
174
+ entityDetail: alert.entity,
175
+ });
176
+ }
177
+ catch (error) {
178
+ return failure(error);
179
+ }
180
+ });
181
+ server.registerTool('create_alert', {
182
+ title: 'Create Alert',
183
+ description: 'Creates an Anypoint Monitoring metric alert on a CloudHub 2.0 app (target {app}) or an API instance (target {apiInstanceId}); the target is resolved from CloudHub 2.0 or API Manager. Notifications are explicit, at least one, with no defaults. The alert is created disabled unless enabled is true. ' +
184
+ 'An alert with the same name on the same target is refused (its id is returned) unless allowDuplicate is true. The preview shows the exact payload and recipients and warns about recipients outside your email domain. ' +
185
+ 'Previews by default; pass confirm: true to create (production also needs confirmProduction or a pre-approval). Uses an undocumented API.',
186
+ inputSchema: {
187
+ environment: z.string().describe('Environment name or ID of the target'),
188
+ name: z.string().describe('Alert name (names are not unique on the platform)'),
189
+ target: z
190
+ .union([
191
+ z.object({ app: z.string().describe('CloudHub 2.0 application name') }),
192
+ z.object({ apiInstanceId: z.string().describe('API instance ID from list_api_instances') }),
193
+ ])
194
+ .describe('{app} or {apiInstanceId}'),
195
+ metric: z
196
+ .enum(ALERT_METRIC_IDS)
197
+ .describe('Metric to watch; app metrics for apps, api_* metrics for API instances'),
198
+ ...conditionInputs,
199
+ enabled: z.boolean().optional().describe('Enable on creation (default false)'),
200
+ notifications: z
201
+ .array(notificationSchema)
202
+ .min(1)
203
+ .describe('EMAIL and SLACK notifications; at least one'),
204
+ apiFilters: z
205
+ .object({
206
+ responseCodes: z.array(z.string()).optional(),
207
+ policies: z.array(z.string()).optional(),
208
+ })
209
+ .optional()
210
+ .describe('For api_response_code_count (responseCodes) and api_policy_violation_count (policies)'),
211
+ allowDuplicate: z
212
+ .boolean()
213
+ .optional()
214
+ .describe('Create even if the target has an alert with this name'),
215
+ ...writeInputs,
216
+ },
217
+ annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false },
218
+ }, async (args) => {
219
+ try {
220
+ const plan = await planCreateAlert(client, args);
221
+ const preview = {
222
+ action: 'create alert',
223
+ environment: plan.env.name,
224
+ payload: previewPayload(plan.body),
225
+ recipients: summarizeRecipients(plan.body.notifications),
226
+ ...(plan.warnings.length ? { warnings: plan.warnings } : {}),
227
+ };
228
+ if (plan.duplicate && !args.allowDuplicate) {
229
+ return {
230
+ ...mcpText({
231
+ refused: true,
232
+ message: `An alert named "${plan.duplicate.name}" already exists on this target (id ${plan.duplicate.id}). Pass allowDuplicate: true to create another.`,
233
+ existingId: plan.duplicate.id,
234
+ ...preview,
235
+ }),
236
+ isError: true,
237
+ };
238
+ }
239
+ const gate = guardWrite({
240
+ orgId: plan.orgId,
241
+ env: plan.env,
242
+ tool: 'create_alert',
243
+ confirm: args.confirm,
244
+ confirmProduction: args.confirmProduction,
245
+ preview,
246
+ });
247
+ if (gate)
248
+ return gate;
249
+ const created = await client.alerts.create(plan.orgId, plan.body);
250
+ return mcpText({
251
+ message: `Created alert "${plan.body.name}" in ${plan.env.name}`,
252
+ ...(created?.id ? { id: created.id } : {}),
253
+ status: created?.alertStatus ?? 'PENDING',
254
+ enabled: plan.body.enabled,
255
+ ...productionFields(plan.orgId, plan.env, 'create_alert'),
256
+ tip: 'A new alert is PENDING until the platform provisions it; it cannot be changed until it is ACTIVE.',
257
+ });
258
+ }
259
+ catch (error) {
260
+ return failure(error);
261
+ }
262
+ });
263
+ async function runUpdate(tool, id, patch, args, signal) {
264
+ const plan = await planUpdateAlert(client, id, patch);
265
+ const preview = {
266
+ action: tool === 'set_alert_enabled' ? (patch.enabled ? 'enable alert' : 'disable alert') : 'update alert',
267
+ id,
268
+ name: plan.existing.name,
269
+ environment: plan.env.name,
270
+ changes: plan.changes,
271
+ payload: previewBody(plan.body, Boolean(patch.notifications)),
272
+ };
273
+ if (plan.noop)
274
+ return mcpText({ noop: true, message: 'Nothing to change.', ...preview });
275
+ const gate = guardWrite({
276
+ orgId: plan.orgId,
277
+ env: plan.env,
278
+ tool,
279
+ confirm: args.confirm,
280
+ confirmProduction: args.confirmProduction,
281
+ preview,
282
+ });
283
+ if (gate)
284
+ return gate;
285
+ const result = await executeUpdateAlert(client, plan, alertWait(args.waitSeconds, signal));
286
+ return mcpText({
287
+ id,
288
+ ...result,
289
+ changes: plan.changes,
290
+ ...productionFields(plan.orgId, plan.env, tool),
291
+ });
292
+ }
293
+ server.registerTool('update_alert', {
294
+ title: 'Update Alert',
295
+ description: 'Changes an Anypoint Monitoring alert: name, severity, enabled, operator, threshold (in the metric unit, percent for cpu and memory), durationMinutes, or notifications (replaces them all). The platform needs the full alert, so the tool reads it, merges the patch and sends it whole; metric and target cannot change. A PENDING alert cannot be changed yet; the tool says to retry later. Previews by default; pass confirm: true to apply.',
296
+ inputSchema: {
297
+ id: z.string().describe('Alert ID'),
298
+ patch: z
299
+ .object({
300
+ name: z.string().optional(),
301
+ severity: conditionInputs.severity.optional(),
302
+ enabled: z.boolean().optional(),
303
+ operator: conditionInputs.operator.optional(),
304
+ threshold: conditionInputs.threshold.optional(),
305
+ durationMinutes: conditionInputs.durationMinutes.optional(),
306
+ notifications: z.array(notificationSchema).min(1).optional(),
307
+ })
308
+ .describe('Fields to change'),
309
+ ...writeInputs,
310
+ ...waitInput,
311
+ },
312
+ annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: true },
313
+ }, async ({ id, patch, confirm, confirmProduction, waitSeconds }, extra) => {
314
+ try {
315
+ return await runUpdate('update_alert', id, patch, { confirm, confirmProduction, waitSeconds }, extra.signal);
316
+ }
317
+ catch (error) {
318
+ return failure(error);
319
+ }
320
+ });
321
+ server.registerTool('set_alert_enabled', {
322
+ title: 'Enable or Disable Alert',
323
+ description: 'Enables or disables an Anypoint Monitoring alert, keeping everything else. Previews by default; pass confirm: true to apply.',
324
+ inputSchema: {
325
+ id: z.string().describe('Alert ID'),
326
+ enabled: z.boolean().describe('true to enable, false to disable'),
327
+ ...writeInputs,
328
+ ...waitInput,
329
+ },
330
+ annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: true },
331
+ }, async ({ id, enabled, confirm, confirmProduction, waitSeconds }, extra) => {
332
+ try {
333
+ return await runUpdate('set_alert_enabled', id, { enabled }, { confirm, confirmProduction, waitSeconds }, extra.signal);
334
+ }
335
+ catch (error) {
336
+ return failure(error);
337
+ }
338
+ });
339
+ server.registerTool('delete_alert', {
340
+ title: 'Delete Alert',
341
+ description: 'Deletes an Anypoint Monitoring alert. Bound like delete_app: call without confirm for a preview, then with confirm: true and expectedName exactly as the preview shows. Production also needs confirmProduction, unless a pre-approval names delete_alert ("all-mutating" does not cover it). A PENDING alert (a change in progress) is refused with retry later. Deletion is asynchronous and verified from the alert list: the result reports accepted and the status, and never claims the alert is deleted while the list still shows it.',
342
+ inputSchema: {
343
+ id: z.string().describe('Alert ID'),
344
+ expectedName: z.string().optional().describe('The alert name from the preview; binds the delete to it'),
345
+ ...writeInputs,
346
+ ...waitInput,
347
+ },
348
+ annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: true },
349
+ }, async ({ id, expectedName, confirm, confirmProduction, waitSeconds }, extra) => {
350
+ try {
351
+ const orgId = await client.getDefaultOrgId();
352
+ const alert = await readAlertForDelete(client, orgId, id);
353
+ if (!alert) {
354
+ return mcpText({
355
+ accepted: false,
356
+ status: 'GONE',
357
+ message: `Alert ${id} does not exist (any more)`,
358
+ });
359
+ }
360
+ const env = await alertEnvironment(client, orgId, alert);
361
+ const pending = alert.alertStatus === 'PENDING';
362
+ const preview = { action: 'delete alert', alert: normalizeAlert(alert) };
363
+ if (!confirm) {
364
+ return dryRunPreview({
365
+ ...preview,
366
+ ...(pending ? { warnings: [CHANGE_IN_PROGRESS] } : {}),
367
+ ...productionFields(orgId, env, 'delete_alert'),
368
+ confirmation: { confirm: true, expectedName: alert.name },
369
+ });
370
+ }
371
+ if (pending) {
372
+ return {
373
+ ...mcpText({
374
+ refused: true,
375
+ retryLater: true,
376
+ status: 'PENDING',
377
+ message: CHANGE_IN_PROGRESS,
378
+ id,
379
+ }),
380
+ isError: true,
381
+ };
382
+ }
383
+ if (expectedName !== alert.name) {
384
+ return {
385
+ ...mcpText({
386
+ refused: true,
387
+ message: 'Deletion refused: expectedName is missing or does not match the alert.',
388
+ id,
389
+ }),
390
+ isError: true,
391
+ };
392
+ }
393
+ const gate = guardWrite({ orgId, env, tool: 'delete_alert', confirm, confirmProduction, preview });
394
+ if (gate)
395
+ return gate;
396
+ const result = await executeDeleteAlert(client, orgId, alert, alertWait(waitSeconds, extra.signal));
397
+ return mcpText({ id, ...result, ...productionFields(orgId, env, 'delete_alert') });
398
+ }
399
+ catch (error) {
400
+ return failure(error);
401
+ }
402
+ });
403
+ }
404
+ /** Monitoring alerts on one API instance, for get_api_alerts. Never throws for an unsupported family. */
405
+ export async function monitoringAlertsForApi(client, orgId, envId, apiInstanceId) {
406
+ try {
407
+ const alerts = await client.alerts.list(orgId, { environmentId: envId });
408
+ return {
409
+ supported: true,
410
+ alerts: alerts
411
+ .filter((a) => a.alertStatus !== 'DELETED' &&
412
+ a.entity?.entityType === 'api' &&
413
+ String(a.entity.apiInstanceId) === String(apiInstanceId))
414
+ .map((a) => normalizeAlert(a)),
415
+ };
416
+ }
417
+ catch (error) {
418
+ if (error instanceof AlertsUnsupportedError)
419
+ return unsupported(error);
420
+ return { supported: false, message: errorMessage(error) };
421
+ }
422
+ }
423
+ //# sourceMappingURL=alerts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"alerts.js","sourceRoot":"","sources":["../../../src/mcp/tools/alerts.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"api-manager.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/api-manager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAerE,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,cAAc,QA0PhF"}
1
+ {"version":3,"file":"api-manager.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/api-manager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAgBrE,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,cAAc,QA8PhF"}
@@ -7,6 +7,7 @@ import { z } from 'zod';
7
7
  import { guardWrite, mcpError, mcpText, resolveEnvironment, writeInputs } from './shared.js';
8
8
  import { SAFE_METHODS, credentialVariants, describeClientApplication, executeSmokeTest, planSmokeTest, writeCredentialsFile, } from '../../client/smoke-test.js';
9
9
  import { redactText } from '../../safety/secrets.js';
10
+ import { monitoringAlertsForApi } from './alerts.js';
10
11
  import { errorMessage } from '../../utils/errors.js';
11
12
  const apiRefSchema = z.string().describe('API name (partial match) or numeric API instance ID from list_api_instances');
12
13
  export function registerApiManagerTools(server, client) {
@@ -78,7 +79,7 @@ export function registerApiManagerTools(server, client) {
78
79
  });
79
80
  server.registerTool('get_api_alerts', {
80
81
  title: 'Get API Alerts',
81
- description: 'Returns the configured alerts for a managed API instance. Shows alert conditions, thresholds, notification settings, and enabled/disabled status. Use this to audit monitoring coverage, verify alerting is configured for critical APIs, or troubleshoot why alerts are not firing.',
82
+ description: 'Returns the configured alerts for a managed API instance: API Manager alerts (alerts) and Anypoint Monitoring alerts on the instance (monitoringAlerts, normalized as in list_alerts with recipients masked, or supported: false). Shows alert conditions, thresholds, notification settings, and enabled/disabled status. Use this to audit monitoring coverage, verify alerting is configured for critical APIs, or troubleshoot why alerts are not firing.',
82
83
  inputSchema: {
83
84
  apiName: apiRefSchema,
84
85
  environment: z.string().describe('Environment name or ID'),
@@ -89,11 +90,13 @@ export function registerApiManagerTools(server, client) {
89
90
  const { orgId, env } = await resolveEnvironment(client, environment);
90
91
  const { apiId } = await client.apiManager.resolveApiInstance(orgId, env, apiName);
91
92
  const alerts = await client.apiManager.getAlerts(orgId, env.id, apiId);
93
+ const monitoring = await monitoringAlertsForApi(client, orgId, env.id, apiId);
92
94
  return mcpText({
93
95
  apiId,
94
96
  environment: env.name,
95
97
  alertCount: alerts.length,
96
98
  alerts,
99
+ monitoringAlerts: monitoring,
97
100
  });
98
101
  }
99
102
  catch (error) {
@@ -193,7 +196,9 @@ export function registerApiManagerTools(server, client) {
193
196
  const plan = await planSmokeTest(client, orgId, env, input);
194
197
  if (!SAFE_METHODS.has(plan.method)) {
195
198
  const blocked = guardWrite({
199
+ orgId,
196
200
  env,
201
+ tool: 'smoke_test_api',
197
202
  confirm: input.confirm,
198
203
  confirmProduction: input.confirmProduction,
199
204
  preview: {
@@ -1 +1 @@
1
- {"version":3,"file":"api-manager.js","sourceRoot":"","sources":["../../../src/mcp/tools/api-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api-manager.js","sourceRoot":"","sources":["../../../src/mcp/tools/api-manager.ts"],"names":[],"mappings":"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"}
@@ -45,10 +45,18 @@ export declare const runtimeInputs: {
45
45
  javaVersion: z.ZodOptional<z.ZodString>;
46
46
  releaseChannel: z.ZodOptional<z.ZodString>;
47
47
  };
48
+ /**
49
+ * Ties an apply to the preview that was reviewed. The preview of a change to an existing app returns a
50
+ * `planDigest`; confirm: true needs it, and is refused if the app or the request has changed since.
51
+ */
52
+ export declare const reviewInputs: {
53
+ planDigest: z.ZodOptional<z.ZodString>;
54
+ };
48
55
  export declare const waitInputs: {
49
56
  wait: z.ZodOptional<z.ZodBoolean>;
50
57
  waitTimeoutSeconds: z.ZodOptional<z.ZodNumber>;
51
58
  };
59
+ export declare const provenanceJarInput: z.ZodOptional<z.ZodString>;
52
60
  export declare const modeInput: z.ZodOptional<z.ZodEnum<{
53
61
  inPlace: "inPlace";
54
62
  stopStart: "stopStart";
@@ -71,17 +79,27 @@ export interface AppChangeToolArgs {
71
79
  environment: string;
72
80
  confirm?: boolean;
73
81
  confirmProduction?: boolean;
82
+ planDigest?: string;
74
83
  wait?: boolean;
75
84
  waitTimeoutSeconds?: number;
76
85
  }
86
+ /** A refusal for an apply that is not bound to the preview that was reviewed. */
87
+ export declare function reviewRefusal(message: string, preview: Record<string, unknown>): {
88
+ isError: true;
89
+ content: {
90
+ type: "text";
91
+ text: string;
92
+ }[];
93
+ };
77
94
  /**
78
95
  * Plan, guard and apply an application change for an MCP tool. Previews by default, refuses
79
96
  * production without confirmProduction, and scrubs secret values from every response.
80
97
  */
81
- export declare function runAppChangeTool(client: AnypointClient, args: AppChangeToolArgs, change: Omit<AppChangeRequest, 'orgId' | 'env' | 'appName' | 'secretValues' | 'settings'> & {
98
+ export declare function runAppChangeTool(client: AnypointClient, args: AppChangeToolArgs, change: Omit<AppChangeRequest, 'orgId' | 'env' | 'appName' | 'secretValues' | 'settings' | 'artifactVerifiedLocally'> & {
82
99
  settings?: SettingsChangeInput;
83
100
  }, labels: {
84
- done: string;
101
+ done: string; /** MCP tool name, for production pre-approval. */
102
+ tool: string;
85
103
  }): Promise<{
86
104
  content: {
87
105
  type: "text";
@@ -1 +1 @@
1
- {"version":3,"file":"app-inputs.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/app-inputs.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAGrE,OAAO,EAKH,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EAC3B,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAI3D,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2B1B,CAAC;AAEF,eAAO,MAAM,aAAa;;;;CAYzB,CAAC;AAEF,eAAO,MAAM,UAAU;;;CAGtB,CAAC;AAEF,eAAO,MAAM,SAAS;;;GAKjB,CAAC;AAEN,eAAO,MAAM,mBAAmB;;;GAGwE,CAAC;AAEzG,KAAK,YAAY,GAAG;KACf,CAAC,IAAI,MAAM,OAAO,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;CAC3E,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,YAAY,GAAG,mBAAmB,CAUxE;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE;IAClC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;CAC3B,GAAG,WAAW,GAAG,SAAS,CAO1B;AAED,MAAM,WAAW,iBAAiB;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED;;;GAGG;AACH,wBAAsB,gBAAgB,CAClC,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,iBAAiB,EACvB,MAAM,EAAE,IAAI,CAAC,gBAAgB,EAAE,OAAO,GAAG,KAAK,GAAG,SAAS,GAAG,cAAc,GAAG,UAAU,CAAC,GAAG;IACxF,QAAQ,CAAC,EAAE,mBAAmB,CAAC;CAClC,EACD,MAAM,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE;;;;;GA0D3B"}
1
+ {"version":3,"file":"app-inputs.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/app-inputs.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAGrE,OAAO,EAKH,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EAC3B,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAK3D,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2B1B,CAAC;AAEF,eAAO,MAAM,aAAa;;;;CAYzB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,YAAY;;CAOxB,CAAC;AAEF,eAAO,MAAM,UAAU;;;CAGtB,CAAC;AAEF,eAAO,MAAM,kBAAkB,4BAK1B,CAAC;AAEN,eAAO,MAAM,SAAS;;;GAKjB,CAAC;AAEN,eAAO,MAAM,mBAAmB;;;GAGwE,CAAC;AAEzG,KAAK,YAAY,GAAG;KACf,CAAC,IAAI,MAAM,OAAO,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;CAC3E,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,YAAY,GAAG,mBAAmB,CAUxE;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE;IAClC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;CAC3B,GAAG,WAAW,GAAG,SAAS,CAO1B;AAED,MAAM,WAAW,iBAAiB;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,iFAAiF;AACjF,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;;;EAE9E;AAED;;;GAGG;AACH,wBAAsB,gBAAgB,CAClC,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,iBAAiB,EACvB,MAAM,EAAE,IAAI,CACR,gBAAgB,EAChB,OAAO,GAAG,KAAK,GAAG,SAAS,GAAG,cAAc,GAAG,UAAU,GAAG,yBAAyB,CACxF,GAAG;IACA,QAAQ,CAAC,EAAE,mBAAmB,CAAC;CAClC,EACD,MAAM,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC,CAAC,kDAAkD;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE;;;;;GA6E5F"}