@revfleet/hscli 0.8.10 → 0.8.11

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 (60) hide show
  1. package/CHANGELOG.md +43 -0
  2. package/README.md +28 -2
  3. package/dist/cli.js +25 -0
  4. package/dist/cli.js.map +1 -1
  5. package/dist/commands/auth/index.js +46 -11
  6. package/dist/commands/auth/index.js.map +1 -1
  7. package/dist/commands/crm/activities.d.ts +3 -0
  8. package/dist/commands/crm/activities.js +186 -0
  9. package/dist/commands/crm/activities.js.map +1 -0
  10. package/dist/commands/crm/index.js +4 -0
  11. package/dist/commands/crm/index.js.map +1 -1
  12. package/dist/commands/crm/migration.d.ts +3 -0
  13. package/dist/commands/crm/migration.js +155 -0
  14. package/dist/commands/crm/migration.js.map +1 -0
  15. package/dist/commands/crm/properties.js +105 -18
  16. package/dist/commands/crm/properties.js.map +1 -1
  17. package/dist/commands/crm/property-batch.d.ts +34 -0
  18. package/dist/commands/crm/property-batch.js +205 -0
  19. package/dist/commands/crm/property-batch.js.map +1 -0
  20. package/dist/commands/doctor/index.js +119 -1
  21. package/dist/commands/doctor/index.js.map +1 -1
  22. package/dist/commands/forms/index.js +47 -6
  23. package/dist/commands/forms/index.js.map +1 -1
  24. package/dist/commands/forms/legacy-v2.d.ts +6 -0
  25. package/dist/commands/forms/legacy-v2.js +350 -0
  26. package/dist/commands/forms/legacy-v2.js.map +1 -0
  27. package/dist/commands/forms/property-preflight.d.ts +20 -0
  28. package/dist/commands/forms/property-preflight.js +99 -0
  29. package/dist/commands/forms/property-preflight.js.map +1 -0
  30. package/dist/commands/guide/index.d.ts +3 -0
  31. package/dist/commands/guide/index.js +231 -0
  32. package/dist/commands/guide/index.js.map +1 -0
  33. package/dist/commands/settings/index.js +238 -2
  34. package/dist/commands/settings/index.js.map +1 -1
  35. package/dist/core/auth.d.ts +7 -1
  36. package/dist/core/auth.js +45 -7
  37. package/dist/core/auth.js.map +1 -1
  38. package/dist/core/http.d.ts +16 -0
  39. package/dist/core/http.js +141 -40
  40. package/dist/core/http.js.map +1 -1
  41. package/dist/core/output.d.ts +2 -0
  42. package/dist/core/output.js +1 -1
  43. package/dist/core/output.js.map +1 -1
  44. package/dist/core/scopes.d.ts +29 -0
  45. package/dist/core/scopes.js +415 -0
  46. package/dist/core/scopes.js.map +1 -0
  47. package/dist/mcp/ext-tools.d.ts +1 -1
  48. package/dist/mcp/ext-tools.js +52 -1
  49. package/dist/mcp/ext-tools.js.map +1 -1
  50. package/dist/mcp/server.js +90 -22
  51. package/dist/mcp/server.js.map +1 -1
  52. package/docs/CAPABILITY_LIBRARY.md +4 -3
  53. package/docs/COMMAND_TREE.md +21 -5
  54. package/docs/COOKBOOK.md +96 -0
  55. package/docs/MARKETING_SETUP.md +8 -2
  56. package/docs/MCP.md +1 -0
  57. package/docs/OPERATIONAL_PLAYBOOKS.md +1 -1
  58. package/docs/PORTAL_SETUP.md +3 -2
  59. package/docs/SAFETY_MODEL.md +3 -0
  60. package/package.json +1 -1
@@ -0,0 +1,415 @@
1
+ const SUPPLIED_UI_SCOPE_NAMES = [
2
+ "crm.dealsplits.read_write",
3
+ "crm.export",
4
+ "crm.extensions_calling_transcripts.read",
5
+ "crm.extensions_calling_transcripts.write",
6
+ "crm.import",
7
+ "crm.lists.read",
8
+ "crm.lists.write",
9
+ "crm.objects.appointments.read",
10
+ "crm.objects.appointments.sensitive.read",
11
+ "crm.objects.appointments.sensitive.write",
12
+ "crm.objects.appointments.write",
13
+ "crm.objects.carts.read",
14
+ "crm.objects.carts.write",
15
+ "crm.objects.commercepayments.read",
16
+ "crm.objects.commercepayments.write",
17
+ "crm.objects.companies.highly_sensitive.read",
18
+ "crm.objects.companies.highly_sensitive.write",
19
+ "crm.objects.companies.read",
20
+ "crm.objects.companies.sensitive.read",
21
+ "crm.objects.companies.sensitive.write",
22
+ "crm.objects.companies.write",
23
+ "crm.objects.contacts.highly_sensitive.read",
24
+ "crm.objects.contacts.highly_sensitive.write",
25
+ "crm.objects.contacts.read",
26
+ "crm.objects.contacts.sensitive.read",
27
+ "crm.objects.contacts.sensitive.write",
28
+ "crm.objects.contacts.write",
29
+ "crm.objects.courses.read",
30
+ "crm.objects.courses.write",
31
+ "crm.objects.custom.highly_sensitive.read",
32
+ "crm.objects.custom.highly_sensitive.write",
33
+ "crm.objects.custom.read",
34
+ "crm.objects.custom.sensitive.read",
35
+ "crm.objects.custom.sensitive.write",
36
+ "crm.objects.custom.write",
37
+ "crm.objects.deals.highly_sensitive.read",
38
+ "crm.objects.deals.highly_sensitive.write",
39
+ "crm.objects.deals.read",
40
+ "crm.objects.deals.sensitive.read",
41
+ "crm.objects.deals.sensitive.write",
42
+ "crm.objects.deals.write",
43
+ "crm.objects.feedback_submissions.read",
44
+ "crm.objects.forecasts.read",
45
+ "crm.objects.goals.read",
46
+ "crm.objects.goals.write",
47
+ "crm.objects.invoices.read",
48
+ "crm.objects.invoices.write",
49
+ "crm.objects.leads.read",
50
+ "crm.objects.leads.write",
51
+ "crm.objects.line_items.read",
52
+ "crm.objects.line_items.write",
53
+ "crm.objects.listings.read",
54
+ "crm.objects.listings.write",
55
+ "crm.objects.marketing_events.read",
56
+ "crm.objects.marketing_events.write",
57
+ "crm.objects.orders.read",
58
+ "crm.objects.orders.write",
59
+ "crm.objects.owners.read",
60
+ "crm.objects.partner-clients.read",
61
+ "crm.objects.partner-clients.write",
62
+ "crm.objects.partner-services.read",
63
+ "crm.objects.partner-services.write",
64
+ "crm.objects.products.read",
65
+ "crm.objects.products.write",
66
+ "crm.objects.projects.read",
67
+ "crm.objects.projects.write",
68
+ "crm.objects.quotes.read",
69
+ "crm.objects.quotes.write",
70
+ "crm.objects.services.read",
71
+ "crm.objects.services.write",
72
+ "crm.objects.subscriptions.read",
73
+ "crm.objects.subscriptions.write",
74
+ "crm.objects.users.read",
75
+ "crm.objects.users.write",
76
+ "crm.pipelines.orders.read",
77
+ "crm.pipelines.orders.write",
78
+ "crm.schemas.appointments.read",
79
+ "crm.schemas.appointments.write",
80
+ "crm.schemas.carts.read",
81
+ "crm.schemas.carts.write",
82
+ "crm.schemas.commercepayments.read",
83
+ "crm.schemas.commercepayments.write",
84
+ "crm.schemas.companies.read",
85
+ "crm.schemas.companies.write",
86
+ "crm.schemas.contacts.read",
87
+ "crm.schemas.contacts.write",
88
+ "crm.schemas.courses.read",
89
+ "crm.schemas.courses.write",
90
+ "crm.schemas.custom.read",
91
+ "crm.schemas.custom.write",
92
+ "crm.schemas.deals.read",
93
+ "crm.schemas.deals.write",
94
+ "crm.schemas.forecasts.read",
95
+ "crm.schemas.invoices.read",
96
+ "crm.schemas.invoices.write",
97
+ "crm.schemas.line_items.read",
98
+ "crm.schemas.listings.read",
99
+ "crm.schemas.listings.write",
100
+ "crm.schemas.orders.read",
101
+ "crm.schemas.orders.write",
102
+ "crm.schemas.projects.read",
103
+ "crm.schemas.projects.write",
104
+ "crm.schemas.quotes.read",
105
+ "crm.schemas.quotes.write",
106
+ "crm.schemas.services.read",
107
+ "crm.schemas.services.write",
108
+ "crm.schemas.subscriptions.read",
109
+ "crm.schemas.subscriptions.write",
110
+ "cms.domains.read",
111
+ "cms.domains.write",
112
+ "cms.functions.read",
113
+ "cms.functions.write",
114
+ "cms.knowledge_base.articles.publish",
115
+ "cms.knowledge_base.articles.read",
116
+ "cms.knowledge_base.articles.write",
117
+ "cms.knowledge_base.settings.read",
118
+ "cms.knowledge_base.settings.write",
119
+ "cms.membership.access_groups.read",
120
+ "cms.membership.access_groups.write",
121
+ "cms.performance.read",
122
+ "automation",
123
+ "automation.sequences.enrollments.write",
124
+ "automation.sequences.read",
125
+ "communication_preferences.read",
126
+ "communication_preferences.read_write",
127
+ "communication_preferences.statuses.batch.read",
128
+ "communication_preferences.statuses.batch.write",
129
+ "communication_preferences.write",
130
+ "conversations.custom_channels.read",
131
+ "conversations.custom_channels.write",
132
+ "conversations.read",
133
+ "conversations.visitor_identification.tokens.create",
134
+ "conversations.write",
135
+ "marketing.campaigns.read",
136
+ "marketing.campaigns.revenue.read",
137
+ "marketing.campaigns.write",
138
+ "settings.billing.write",
139
+ "settings.currencies.read",
140
+ "settings.currencies.write",
141
+ "settings.security.security_health.read",
142
+ "settings.users.read",
143
+ "settings.users.teams.read",
144
+ "settings.users.teams.write",
145
+ "settings.users.write",
146
+ "tickets",
147
+ "tickets.highly_sensitive",
148
+ "tickets.sensitive",
149
+ "account-info.security.read",
150
+ "accounting",
151
+ "actions",
152
+ "analytics.behavioral_events.send",
153
+ "behavioral_events.event_definitions.read_write",
154
+ "business-intelligence",
155
+ "business_units_view.read",
156
+ "collector.graphql_query.execute",
157
+ "collector.graphql_schema.read",
158
+ "content",
159
+ "ctas.read",
160
+ "data_integration.data_source.file.read",
161
+ "data_integration.data_source.file.write",
162
+ "e-commerce",
163
+ "external_integrations.forms.access",
164
+ "files",
165
+ "files.ui_hidden.read",
166
+ "forms",
167
+ "forms-uploaded-files",
168
+ "hubdb",
169
+ "integration-sync",
170
+ "integrations.zoom-app.playbooks.read",
171
+ "marketing-email",
172
+ "mcp.users.read",
173
+ "media_bridge.read",
174
+ "media_bridge.write",
175
+ "oauth",
176
+ "origins.ip_ranges.webhook.read",
177
+ "origins.ip_ranges.webhook.write",
178
+ "record_images.signed_urls.read",
179
+ "sales-email-read",
180
+ "scheduler.meetings.meeting-link.read",
181
+ "social",
182
+ "tax_rates.read",
183
+ "timeline",
184
+ "transactional-email",
185
+ ];
186
+ const ENGAGEMENT_SCOPE_NAMES = [
187
+ "crm.objects.calls.read",
188
+ "crm.objects.calls.write",
189
+ "crm.objects.emails.read",
190
+ "crm.objects.emails.write",
191
+ "crm.objects.meetings.read",
192
+ "crm.objects.meetings.write",
193
+ "crm.objects.notes.read",
194
+ "crm.objects.notes.write",
195
+ "crm.objects.tasks.read",
196
+ "crm.objects.tasks.write",
197
+ ];
198
+ const SUPPLEMENTAL_SCOPE_NAMES = [
199
+ "crm.schemas.products.read",
200
+ "crm.schemas.products.write",
201
+ ];
202
+ export const HUBSPOT_SCOPE_NAMES = uniqueSorted([
203
+ ...SUPPLIED_UI_SCOPE_NAMES,
204
+ ...ENGAGEMENT_SCOPE_NAMES,
205
+ ...SUPPLEMENTAL_SCOPE_NAMES,
206
+ ]);
207
+ const DEPRECATED_SCOPES = new Set([
208
+ "accounting",
209
+ "actions",
210
+ "e-commerce",
211
+ "integration-sync",
212
+ ]);
213
+ const SCOPE_NOTES = {
214
+ "automation": "Required for Workflows v4 (/automation/v4/flows).",
215
+ "forms": "Required for Marketing Forms v3.",
216
+ "forms-uploaded-files": "Required to download files submitted through forms.",
217
+ "sales-email-read": "Required to read one-to-one sales email engagement content.",
218
+ "settings.users.teams.write": "Team writes may still depend on endpoint availability and account permissions.",
219
+ "tickets": "Legacy broad tickets scope; granular ticket scopes may not appear in every private-app UI.",
220
+ };
221
+ export const HUBSPOT_SCOPE_CATALOG = HUBSPOT_SCOPE_NAMES.map((scope) => ({
222
+ scope,
223
+ category: inferCategory(scope),
224
+ access: inferAccess(scope),
225
+ sensitivity: inferSensitivity(scope),
226
+ deprecated: DEPRECATED_SCOPES.has(scope),
227
+ ...(SCOPE_NOTES[scope] ? { notes: SCOPE_NOTES[scope] } : {}),
228
+ }));
229
+ export const HUBSPOT_SCOPE_PRESETS = {
230
+ "track4": [
231
+ "crm.lists.read",
232
+ "crm.objects.companies.read",
233
+ "crm.objects.contacts.read",
234
+ "crm.objects.custom.read",
235
+ "crm.objects.deals.read",
236
+ "crm.objects.line_items.read",
237
+ "crm.objects.owners.read",
238
+ "crm.objects.products.read",
239
+ "crm.objects.quotes.read",
240
+ "crm.objects.subscriptions.read",
241
+ "crm.schemas.companies.read",
242
+ "crm.schemas.contacts.read",
243
+ "crm.schemas.custom.read",
244
+ "crm.schemas.deals.read",
245
+ "crm.schemas.line_items.read",
246
+ "crm.schemas.products.read",
247
+ "crm.schemas.quotes.read",
248
+ "crm.schemas.subscriptions.read",
249
+ "content",
250
+ "files",
251
+ "settings.users.read",
252
+ "settings.users.teams.read",
253
+ "tickets",
254
+ ],
255
+ "real-mirror-read": [
256
+ "automation",
257
+ "crm.export",
258
+ "crm.lists.read",
259
+ "crm.objects.calls.read",
260
+ "crm.objects.companies.read",
261
+ "crm.objects.contacts.read",
262
+ "crm.objects.custom.read",
263
+ "crm.objects.deals.read",
264
+ "crm.objects.emails.read",
265
+ "crm.objects.feedback_submissions.read",
266
+ "crm.objects.goals.read",
267
+ "crm.objects.invoices.read",
268
+ "crm.objects.leads.read",
269
+ "crm.objects.line_items.read",
270
+ "crm.objects.marketing_events.read",
271
+ "crm.objects.meetings.read",
272
+ "crm.objects.notes.read",
273
+ "crm.objects.orders.read",
274
+ "crm.objects.owners.read",
275
+ "crm.objects.products.read",
276
+ "crm.objects.quotes.read",
277
+ "crm.objects.subscriptions.read",
278
+ "crm.objects.tasks.read",
279
+ "crm.schemas.companies.read",
280
+ "crm.schemas.contacts.read",
281
+ "crm.schemas.custom.read",
282
+ "crm.schemas.deals.read",
283
+ "crm.schemas.invoices.read",
284
+ "crm.schemas.line_items.read",
285
+ "crm.schemas.orders.read",
286
+ "crm.schemas.products.read",
287
+ "crm.schemas.quotes.read",
288
+ "crm.schemas.subscriptions.read",
289
+ "content",
290
+ "files",
291
+ "files.ui_hidden.read",
292
+ "forms",
293
+ "forms-uploaded-files",
294
+ "sales-email-read",
295
+ "settings.currencies.read",
296
+ "settings.users.read",
297
+ "settings.users.teams.read",
298
+ "tickets",
299
+ ],
300
+ "real-mirror-write": [
301
+ "automation",
302
+ "crm.import",
303
+ "crm.lists.write",
304
+ "crm.objects.calls.write",
305
+ "crm.objects.companies.write",
306
+ "crm.objects.contacts.write",
307
+ "crm.objects.custom.write",
308
+ "crm.objects.deals.write",
309
+ "crm.objects.emails.write",
310
+ "crm.objects.goals.write",
311
+ "crm.objects.invoices.write",
312
+ "crm.objects.leads.write",
313
+ "crm.objects.line_items.write",
314
+ "crm.objects.marketing_events.write",
315
+ "crm.objects.meetings.write",
316
+ "crm.objects.notes.write",
317
+ "crm.objects.orders.write",
318
+ "crm.objects.products.write",
319
+ "crm.objects.quotes.write",
320
+ "crm.objects.subscriptions.write",
321
+ "crm.objects.tasks.write",
322
+ "crm.schemas.companies.write",
323
+ "crm.schemas.contacts.write",
324
+ "crm.schemas.custom.write",
325
+ "crm.schemas.deals.write",
326
+ "crm.schemas.invoices.write",
327
+ "crm.schemas.orders.write",
328
+ "crm.schemas.quotes.write",
329
+ "crm.schemas.subscriptions.write",
330
+ "content",
331
+ "files",
332
+ "forms",
333
+ "settings.currencies.write",
334
+ "settings.users.teams.write",
335
+ "settings.users.write",
336
+ "tickets",
337
+ ],
338
+ };
339
+ export function listScopePresetNames() {
340
+ return Object.keys(HUBSPOT_SCOPE_PRESETS).sort();
341
+ }
342
+ export function getScopeDefinition(scope) {
343
+ const wanted = scope.trim().toLowerCase();
344
+ return HUBSPOT_SCOPE_CATALOG.find((definition) => definition.scope.toLowerCase() === wanted);
345
+ }
346
+ export function parseScopeList(raw) {
347
+ if (Array.isArray(raw))
348
+ return uniqueSorted(raw);
349
+ if (!raw)
350
+ return [];
351
+ return uniqueSorted(raw.split(/[\s,]+/));
352
+ }
353
+ export function resolveScopeSet(raw) {
354
+ const name = raw?.trim() || "real-mirror-read";
355
+ const preset = HUBSPOT_SCOPE_PRESETS[name];
356
+ if (preset)
357
+ return { name, scopes: uniqueSorted(preset) };
358
+ return { name: "custom", scopes: parseScopeList(name) };
359
+ }
360
+ export function diffScopes(required, granted) {
361
+ const requiredSet = new Set(uniqueSorted(required));
362
+ const grantedSet = new Set(uniqueSorted(granted));
363
+ const catalogSet = new Set(HUBSPOT_SCOPE_NAMES.map((scope) => scope.toLowerCase()));
364
+ return {
365
+ required: [...requiredSet],
366
+ granted: [...grantedSet],
367
+ missing: [...requiredSet].filter((scope) => !grantedSet.has(scope)),
368
+ present: [...requiredSet].filter((scope) => grantedSet.has(scope)),
369
+ unknownGranted: [...grantedSet].filter((scope) => !catalogSet.has(scope)),
370
+ extraKnown: [...grantedSet].filter((scope) => catalogSet.has(scope) && !requiredSet.has(scope)),
371
+ };
372
+ }
373
+ function inferCategory(scope) {
374
+ if (scope.startsWith("crm.objects."))
375
+ return "crm.objects";
376
+ if (scope.startsWith("crm.schemas."))
377
+ return "crm.schemas";
378
+ if (scope.startsWith("crm.pipelines."))
379
+ return "crm.pipelines";
380
+ if (scope.startsWith("cms."))
381
+ return "cms";
382
+ if (scope.startsWith("automation."))
383
+ return "automation";
384
+ if (scope.startsWith("communication_preferences."))
385
+ return "communication_preferences";
386
+ if (scope.startsWith("conversations."))
387
+ return "conversations";
388
+ if (scope.startsWith("marketing."))
389
+ return "marketing";
390
+ if (scope.startsWith("settings."))
391
+ return "settings";
392
+ if (scope.includes("."))
393
+ return scope.split(".")[0];
394
+ return "platform";
395
+ }
396
+ function inferAccess(scope) {
397
+ if (scope.endsWith(".read_write") || scope.endsWith("_read_write"))
398
+ return "read_write";
399
+ if (scope.endsWith(".read") || scope.endsWith("_view.read") || scope.includes(".read."))
400
+ return "read";
401
+ if (scope.endsWith(".write") || scope.endsWith(".publish") || scope.endsWith(".create") || scope.includes(".write."))
402
+ return "write";
403
+ return "other";
404
+ }
405
+ function inferSensitivity(scope) {
406
+ if (scope.includes("highly_sensitive"))
407
+ return "highly_sensitive";
408
+ if (scope.includes("sensitive"))
409
+ return "sensitive";
410
+ return "standard";
411
+ }
412
+ function uniqueSorted(values) {
413
+ return Array.from(new Set(values.map((value) => value.trim()).filter(Boolean))).sort();
414
+ }
415
+ //# sourceMappingURL=scopes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scopes.js","sourceRoot":"","sources":["../../src/core/scopes.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@
9
9
  * ── Files ──
10
10
  * - files_list, files_get, files_delete, files_signed_url
11
11
  * ── Forms ──
12
- * - forms_list, forms_get, forms_submissions, forms_submit
12
+ * - forms_list, forms_get, forms_create, forms_update, forms_submissions, forms_submit
13
13
  * ── Webhooks ──
14
14
  * - webhooks_list_subscriptions, webhooks_create_subscription, webhooks_delete_subscription
15
15
  * ── Marketing emails ──
@@ -9,7 +9,7 @@
9
9
  * ── Files ──
10
10
  * - files_list, files_get, files_delete, files_signed_url
11
11
  * ── Forms ──
12
- * - forms_list, forms_get, forms_submissions, forms_submit
12
+ * - forms_list, forms_get, forms_create, forms_update, forms_submissions, forms_submit
13
13
  * ── Webhooks ──
14
14
  * - webhooks_list_subscriptions, webhooks_create_subscription, webhooks_delete_subscription
15
15
  * ── Marketing emails ──
@@ -22,7 +22,29 @@
22
22
  */
23
23
  import { z } from "zod";
24
24
  import { appendOptional, encodePathSegment, maybeWrite, parseNumberFlag } from "../commands/crm/shared.js";
25
+ import { normalizeFormPayloadForV3 } from "../commands/forms/legacy-v2.js";
26
+ import { loadTargetFormPropertyNames, preflightLegacyFormProperties, shouldRunFormPropertyPreflight, } from "../commands/forms/property-preflight.js";
25
27
  import { baseArgsSchema, executeTool, registerMcpTool } from "./server.js";
28
+ async function prepareMcpFormBody(ctx, client, args) {
29
+ let payload = args.data;
30
+ const sourceFormat = args.sourceFormat ?? "auto";
31
+ const preflightMode = args.strict ? "strict" : (args.propertyPreflight ?? "auto");
32
+ let skippedFields = [];
33
+ if (sourceFormat !== "v3" && shouldRunFormPropertyPreflight(payload, preflightMode, ctx.dryRun)) {
34
+ const preflight = await preflightLegacyFormProperties(payload, (objectType) => loadTargetFormPropertyNames(client, objectType), preflightMode === "strict");
35
+ payload = preflight.payload;
36
+ skippedFields = preflight.skippedFields;
37
+ }
38
+ return {
39
+ body: normalizeFormPayloadForV3(payload, sourceFormat),
40
+ skippedFields,
41
+ };
42
+ }
43
+ function attachSkippedFields(result, skippedFields) {
44
+ if (skippedFields.length === 0)
45
+ return result;
46
+ return { result, skippedFields };
47
+ }
26
48
  export function registerExtensionTools(server) {
27
49
  // ═══════════════════════════════════════════════════════════════════════
28
50
  // Workflows (v4 + legacy v3)
@@ -120,6 +142,35 @@ export function registerExtensionTools(server) {
120
142
  description: "Get one form by ID. Not available via HubSpot Remote MCP.",
121
143
  inputSchema: { ...baseArgsSchema, formId: z.string().min(1) },
122
144
  }, (args) => executeTool(args, (_ctx, client) => client.request(`/marketing/v3/forms/${encodePathSegment(args.formId, "formId")}`)));
145
+ registerMcpTool(server, "forms_create", {
146
+ description: "Create a marketing form. Legacy forms/v2 payloads are translated to v3 automatically. Dry-run by default unless force=true.",
147
+ inputSchema: {
148
+ ...baseArgsSchema,
149
+ data: z.record(z.string(), z.unknown()),
150
+ sourceFormat: z.enum(["auto", "v2", "v3"]).default("auto").optional(),
151
+ propertyPreflight: z.enum(["auto", "skip", "strict"]).default("auto").optional(),
152
+ strict: z.boolean().optional().describe("Fail when target-property preflight finds missing legacy form fields"),
153
+ },
154
+ }, (args) => executeTool(args, async (ctx, client) => {
155
+ const { body, skippedFields } = await prepareMcpFormBody(ctx, client, args);
156
+ const result = await maybeWrite(ctx, client, "POST", "/marketing/v3/forms", body);
157
+ return attachSkippedFields(result, skippedFields);
158
+ }));
159
+ registerMcpTool(server, "forms_update", {
160
+ description: "Update a marketing form. Legacy forms/v2 payloads are translated to v3 automatically. Dry-run by default unless force=true.",
161
+ inputSchema: {
162
+ ...baseArgsSchema,
163
+ formId: z.string().min(1),
164
+ data: z.record(z.string(), z.unknown()),
165
+ sourceFormat: z.enum(["auto", "v2", "v3"]).default("auto").optional(),
166
+ propertyPreflight: z.enum(["auto", "skip", "strict"]).default("auto").optional(),
167
+ strict: z.boolean().optional().describe("Fail when target-property preflight finds missing legacy form fields"),
168
+ },
169
+ }, (args) => executeTool(args, async (ctx, client) => {
170
+ const { body, skippedFields } = await prepareMcpFormBody(ctx, client, args);
171
+ const result = await maybeWrite(ctx, client, "PATCH", `/marketing/v3/forms/${encodePathSegment(args.formId, "formId")}`, body);
172
+ return attachSkippedFields(result, skippedFields);
173
+ }));
123
174
  registerMcpTool(server, "forms_submissions", {
124
175
  description: "List submissions for a form. Not available via HubSpot Remote MCP.",
125
176
  inputSchema: {
@@ -1 +1 @@
1
- {"version":3,"file":"ext-tools.js","sourceRoot":"","sources":["../../src/mcp/ext-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ext-tools.js","sourceRoot":"","sources":["../../src/mcp/ext-tools.ts"],"names":[],"mappings":"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"}