mcp-meta-ads-incrementality 0.2.2 → 0.3.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.
@@ -0,0 +1,772 @@
1
+ /**
2
+ * Tool definitions (JSONSchema) for mcp-meta-ads-incrementality.
3
+ *
4
+ * Pure data — no side effects — so tests (writeGate.test.ts) can import the
5
+ * full tool list without triggering the server entrypoint in index.ts
6
+ * (credential resolution, SDK init, stdio transport).
7
+ */
8
+ export declare const TOOLS: ({
9
+ readonly name: "meta_ads_insights_incrementality";
10
+ readonly description: string;
11
+ readonly inputSchema: {
12
+ readonly type: "object";
13
+ readonly properties: {
14
+ readonly ad_account_id: {
15
+ readonly type: "string";
16
+ readonly description: "Meta ad account id (with or without the act_ prefix).";
17
+ };
18
+ readonly date_range: {
19
+ readonly type: "object";
20
+ readonly properties: {
21
+ readonly since: {
22
+ readonly type: "string";
23
+ readonly description: "YYYY-MM-DD start date (inclusive)";
24
+ };
25
+ readonly until: {
26
+ readonly type: "string";
27
+ readonly description: "YYYY-MM-DD end date (inclusive)";
28
+ };
29
+ };
30
+ readonly required: readonly ["since", "until"];
31
+ };
32
+ readonly conversion_event_name: {
33
+ readonly type: "string";
34
+ readonly description: string;
35
+ };
36
+ readonly attribution_windows: {
37
+ readonly type: "array";
38
+ readonly items: {
39
+ readonly type: "string";
40
+ readonly enum: readonly ["incrementality", "1d_click", "7d_click", "28d_click", "1d_view", "1d_ev", "dda", "skan_view", "skan_click"];
41
+ };
42
+ readonly description: string;
43
+ };
44
+ readonly level: {
45
+ readonly type: "string";
46
+ readonly enum: readonly ["account", "campaign", "adset", "ad"];
47
+ readonly description: "Aggregation level. Defaults to \"campaign\".";
48
+ };
49
+ readonly campaign_id: {
50
+ readonly type: "string";
51
+ readonly description: "Optional: restrict to a single campaign.";
52
+ };
53
+ readonly adset_id: {
54
+ readonly type: "string";
55
+ readonly description: "Optional: restrict to a single ad set.";
56
+ };
57
+ readonly breakdowns: {
58
+ readonly type: "array";
59
+ readonly items: {
60
+ readonly type: "string";
61
+ };
62
+ readonly description: "Optional Meta breakdowns, e.g. [\"publisher_platform\", \"age\"].";
63
+ };
64
+ };
65
+ readonly required: readonly ["ad_account_id", "date_range", "conversion_event_name"];
66
+ };
67
+ } | {
68
+ readonly name: "meta_ads_list_ads_in_campaign";
69
+ readonly description: string;
70
+ readonly inputSchema: {
71
+ readonly type: "object";
72
+ readonly properties: {
73
+ readonly campaign_id: {
74
+ readonly type: "string";
75
+ readonly description: "Meta campaign id (numeric).";
76
+ };
77
+ };
78
+ readonly required: readonly ["campaign_id"];
79
+ };
80
+ } | {
81
+ readonly name: "meta_ads_get_ad_url_tags";
82
+ readonly description: string;
83
+ readonly inputSchema: {
84
+ readonly type: "object";
85
+ readonly properties: {
86
+ readonly ad_id: {
87
+ readonly type: "string";
88
+ readonly description: "Meta ad id (numeric).";
89
+ };
90
+ };
91
+ readonly required: readonly ["ad_id"];
92
+ };
93
+ } | {
94
+ readonly name: "meta_ads_update_ad_url_tags";
95
+ readonly description: string;
96
+ readonly inputSchema: {
97
+ readonly type: "object";
98
+ readonly properties: {
99
+ readonly ad_id: {
100
+ readonly type: "string";
101
+ readonly description: "Meta ad id (numeric).";
102
+ };
103
+ readonly url_tags: {
104
+ readonly type: "string";
105
+ readonly description: string;
106
+ };
107
+ readonly dry_run: {
108
+ readonly type: "boolean";
109
+ readonly description: "If true, return a diff without writing. Default false.";
110
+ };
111
+ };
112
+ readonly required: readonly ["ad_id", "url_tags"];
113
+ };
114
+ } | {
115
+ readonly name: "meta_ads_rename_ad";
116
+ readonly description: string;
117
+ readonly inputSchema: {
118
+ readonly type: "object";
119
+ readonly properties: {
120
+ readonly ad_id: {
121
+ readonly type: "string";
122
+ readonly description: "Meta ad id (numeric).";
123
+ };
124
+ readonly new_name: {
125
+ readonly type: "string";
126
+ readonly description: "New ad name.";
127
+ };
128
+ readonly dry_run: {
129
+ readonly type: "boolean";
130
+ readonly description: "If true, return a diff without writing. Default false.";
131
+ };
132
+ readonly allow_naming_violations: {
133
+ readonly type: "boolean";
134
+ readonly description: "If true, bypass the naming-standards check. Default false.";
135
+ };
136
+ };
137
+ readonly required: readonly ["ad_id", "new_name"];
138
+ };
139
+ } | {
140
+ readonly name: "meta_ads_create_campaign";
141
+ readonly description: string;
142
+ readonly inputSchema: {
143
+ readonly type: "object";
144
+ readonly properties: {
145
+ readonly account_id: {
146
+ readonly type: "string";
147
+ readonly description: "Ad account id (with or without act_ prefix).";
148
+ };
149
+ readonly name: {
150
+ readonly type: "string";
151
+ };
152
+ readonly objective: {
153
+ readonly type: "string";
154
+ readonly description: "Meta objective enum, e.g. OUTCOME_LEADS, OUTCOME_TRAFFIC, OUTCOME_SALES.";
155
+ };
156
+ readonly status: {
157
+ readonly type: "string";
158
+ readonly enum: readonly ["PAUSED", "ACTIVE"];
159
+ readonly description: "Default PAUSED.";
160
+ };
161
+ readonly special_ad_categories: {
162
+ readonly type: "array";
163
+ readonly items: {
164
+ readonly type: "string";
165
+ };
166
+ readonly description: "e.g. [\"HOUSING\"]. Default [].";
167
+ };
168
+ readonly buying_type: {
169
+ readonly type: "string";
170
+ readonly enum: readonly ["AUCTION", "RESERVED"];
171
+ readonly description: "Default AUCTION.";
172
+ };
173
+ readonly daily_budget: {
174
+ readonly type: "number";
175
+ readonly description: "Cents. Set only for CBO campaigns.";
176
+ };
177
+ readonly lifetime_budget: {
178
+ readonly type: "number";
179
+ readonly description: "Cents. Alternative to daily_budget.";
180
+ };
181
+ };
182
+ readonly required: readonly ["account_id", "name", "objective"];
183
+ };
184
+ } | {
185
+ readonly name: "meta_ads_create_adset";
186
+ readonly description: string;
187
+ readonly inputSchema: {
188
+ readonly type: "object";
189
+ readonly properties: {
190
+ readonly account_id: {
191
+ readonly type: "string";
192
+ };
193
+ readonly campaign_id: {
194
+ readonly type: "string";
195
+ };
196
+ readonly name: {
197
+ readonly type: "string";
198
+ };
199
+ readonly optimization_goal: {
200
+ readonly type: "string";
201
+ readonly description: "e.g. LEAD_GENERATION, OFFSITE_CONVERSIONS, LINK_CLICKS, REACH.";
202
+ };
203
+ readonly billing_event: {
204
+ readonly type: "string";
205
+ readonly enum: readonly ["IMPRESSIONS", "LINK_CLICKS", "POST_ENGAGEMENT", "THRUPLAY"];
206
+ };
207
+ readonly bid_strategy: {
208
+ readonly type: "string";
209
+ readonly enum: readonly ["LOWEST_COST_WITHOUT_CAP", "LOWEST_COST_WITH_BID_CAP", "COST_CAP"];
210
+ readonly description: "Default LOWEST_COST_WITHOUT_CAP (Highest volume).";
211
+ };
212
+ readonly bid_amount: {
213
+ readonly type: "number";
214
+ readonly description: "Cents. Required for COST_CAP / WITH_BID_CAP.";
215
+ };
216
+ readonly targeting: {
217
+ readonly type: "object";
218
+ readonly description: "Full Meta targeting spec.";
219
+ };
220
+ readonly status: {
221
+ readonly type: "string";
222
+ readonly enum: readonly ["PAUSED", "ACTIVE"];
223
+ };
224
+ readonly daily_budget: {
225
+ readonly type: "number";
226
+ readonly description: "Cents.";
227
+ };
228
+ readonly lifetime_budget: {
229
+ readonly type: "number";
230
+ readonly description: "Cents.";
231
+ };
232
+ readonly promoted_object: {
233
+ readonly type: "object";
234
+ };
235
+ readonly destination_type: {
236
+ readonly type: "string";
237
+ readonly description: "e.g. ON_AD, WEBSITE, APP, MESSENGER.";
238
+ };
239
+ readonly attribution_spec: {
240
+ readonly type: "array";
241
+ readonly items: {
242
+ readonly type: "object";
243
+ readonly properties: {
244
+ readonly event_type: {
245
+ readonly type: "string";
246
+ };
247
+ readonly window_days: {
248
+ readonly type: "number";
249
+ };
250
+ };
251
+ readonly required: readonly ["event_type", "window_days"];
252
+ };
253
+ };
254
+ readonly is_incremental_attribution_enabled: {
255
+ readonly type: "boolean";
256
+ };
257
+ readonly start_time: {
258
+ readonly type: "string";
259
+ };
260
+ readonly end_time: {
261
+ readonly type: "string";
262
+ };
263
+ };
264
+ readonly required: readonly ["account_id", "campaign_id", "name", "optimization_goal", "billing_event", "targeting"];
265
+ };
266
+ } | {
267
+ readonly name: "meta_ads_create_ad_creative";
268
+ readonly description: string;
269
+ readonly inputSchema: {
270
+ readonly type: "object";
271
+ readonly properties: {
272
+ readonly account_id: {
273
+ readonly type: "string";
274
+ };
275
+ readonly name: {
276
+ readonly type: "string";
277
+ };
278
+ readonly page_id: {
279
+ readonly type: "string";
280
+ };
281
+ readonly image_hash: {
282
+ readonly type: "string";
283
+ readonly description: "From meta_ads_upload_image. Required for both single and asset_feed_spec modes.";
284
+ };
285
+ readonly link: {
286
+ readonly type: "string";
287
+ readonly description: "Clickthrough URL.";
288
+ };
289
+ readonly message: {
290
+ readonly type: "string";
291
+ readonly description: "Single primary text. Mutually exclusive with messages[].";
292
+ };
293
+ readonly messages: {
294
+ readonly type: "array";
295
+ readonly items: {
296
+ readonly type: "string";
297
+ };
298
+ readonly description: "Up to 5 primary text variants. Triggers asset_feed_spec mode if >1.";
299
+ };
300
+ readonly headline: {
301
+ readonly type: "string";
302
+ readonly description: "Single headline below the image.";
303
+ };
304
+ readonly headlines: {
305
+ readonly type: "array";
306
+ readonly items: {
307
+ readonly type: "string";
308
+ };
309
+ readonly description: "Up to 5 headline variants. Triggers asset_feed_spec mode if >1.";
310
+ };
311
+ readonly description: {
312
+ readonly type: "string";
313
+ readonly description: "Single sub-description.";
314
+ };
315
+ readonly descriptions: {
316
+ readonly type: "array";
317
+ readonly items: {
318
+ readonly type: "string";
319
+ };
320
+ readonly description: "Up to 5 description variants. Triggers asset_feed_spec mode if >1.";
321
+ };
322
+ readonly call_to_action: {
323
+ readonly type: "object";
324
+ readonly properties: {
325
+ readonly type: {
326
+ readonly type: "string";
327
+ readonly description: "e.g. SIGN_UP, DOWNLOAD, LEARN_MORE, SHOP_NOW.";
328
+ };
329
+ readonly value: {
330
+ readonly type: "object";
331
+ readonly properties: {
332
+ readonly link: {
333
+ readonly type: "string";
334
+ };
335
+ readonly lead_gen_form_id: {
336
+ readonly type: "string";
337
+ };
338
+ };
339
+ };
340
+ };
341
+ readonly required: readonly ["type"];
342
+ };
343
+ readonly lead_gen_form_id: {
344
+ readonly type: "string";
345
+ readonly description: "Shortcut: builds CTA={type:SIGN_UP, value:{lead_gen_form_id}}.";
346
+ };
347
+ readonly url_tags: {
348
+ readonly type: "string";
349
+ readonly description: "Query-string fragment for tracking, no leading ?. Use {{ad.name}} macros.";
350
+ };
351
+ readonly instagram_actor_id: {
352
+ readonly type: "string";
353
+ readonly description: "Optional IG business account for cross-posting.";
354
+ };
355
+ };
356
+ readonly required: readonly ["account_id", "name", "page_id", "link"];
357
+ };
358
+ } | {
359
+ readonly name: "meta_ads_create_ad";
360
+ readonly description: "Create a Meta ad attached to an ad set and creative. Defaults to PAUSED.";
361
+ readonly inputSchema: {
362
+ readonly type: "object";
363
+ readonly properties: {
364
+ readonly account_id: {
365
+ readonly type: "string";
366
+ };
367
+ readonly name: {
368
+ readonly type: "string";
369
+ };
370
+ readonly adset_id: {
371
+ readonly type: "string";
372
+ };
373
+ readonly creative_id: {
374
+ readonly type: "string";
375
+ };
376
+ readonly status: {
377
+ readonly type: "string";
378
+ readonly enum: readonly ["PAUSED", "ACTIVE"];
379
+ };
380
+ };
381
+ readonly required: readonly ["account_id", "name", "adset_id", "creative_id"];
382
+ };
383
+ } | {
384
+ readonly name: "meta_ads_upload_image";
385
+ readonly description: string;
386
+ readonly inputSchema: {
387
+ readonly type: "object";
388
+ readonly properties: {
389
+ readonly account_id: {
390
+ readonly type: "string";
391
+ };
392
+ readonly image_bytes: {
393
+ readonly type: "string";
394
+ readonly description: "Base64-encoded image data.";
395
+ };
396
+ readonly image_path: {
397
+ readonly type: "string";
398
+ readonly description: "Local file path to read.";
399
+ };
400
+ };
401
+ readonly required: readonly ["account_id"];
402
+ };
403
+ } | {
404
+ readonly name: "meta_ads_create_leadgen_form";
405
+ readonly description: string;
406
+ readonly inputSchema: {
407
+ readonly type: "object";
408
+ readonly properties: {
409
+ readonly page_id: {
410
+ readonly type: "string";
411
+ };
412
+ readonly name: {
413
+ readonly type: "string";
414
+ };
415
+ readonly locale: {
416
+ readonly type: "string";
417
+ readonly description: "Default en_US.";
418
+ };
419
+ readonly form_type: {
420
+ readonly type: "string";
421
+ readonly enum: readonly ["MORE_VOLUME", "HIGHER_INTENT"];
422
+ };
423
+ readonly block_display_for_non_targeted_viewer: {
424
+ readonly type: "boolean";
425
+ };
426
+ readonly privacy_policy: {
427
+ readonly type: "object";
428
+ readonly properties: {
429
+ readonly url: {
430
+ readonly type: "string";
431
+ };
432
+ readonly link_text: {
433
+ readonly type: "string";
434
+ };
435
+ };
436
+ readonly required: readonly ["url"];
437
+ };
438
+ readonly context_card: {
439
+ readonly type: "object";
440
+ readonly properties: {
441
+ readonly style: {
442
+ readonly type: "string";
443
+ readonly enum: readonly ["PARAGRAPH_STYLE", "LIST_STYLE"];
444
+ };
445
+ readonly title: {
446
+ readonly type: "string";
447
+ };
448
+ readonly content: {
449
+ readonly type: "array";
450
+ readonly items: {
451
+ readonly type: "string";
452
+ };
453
+ };
454
+ readonly button_text: {
455
+ readonly type: "string";
456
+ };
457
+ };
458
+ readonly required: readonly ["style", "title", "content"];
459
+ };
460
+ readonly questions: {
461
+ readonly type: "array";
462
+ readonly items: {
463
+ readonly type: "object";
464
+ readonly properties: {
465
+ readonly type: {
466
+ readonly type: "string";
467
+ };
468
+ readonly key: {
469
+ readonly type: "string";
470
+ };
471
+ readonly label: {
472
+ readonly type: "string";
473
+ };
474
+ readonly options: {
475
+ readonly type: "array";
476
+ readonly items: {
477
+ readonly type: "object";
478
+ readonly properties: {
479
+ readonly value: {
480
+ readonly type: "string";
481
+ };
482
+ readonly key: {
483
+ readonly type: "string";
484
+ };
485
+ };
486
+ readonly required: readonly ["value", "key"];
487
+ };
488
+ };
489
+ };
490
+ readonly required: readonly ["type"];
491
+ };
492
+ };
493
+ readonly thank_you_page: {
494
+ readonly type: "object";
495
+ readonly properties: {
496
+ readonly title: {
497
+ readonly type: "string";
498
+ };
499
+ readonly body: {
500
+ readonly type: "string";
501
+ };
502
+ readonly button_text: {
503
+ readonly type: "string";
504
+ };
505
+ readonly button_type: {
506
+ readonly type: "string";
507
+ readonly enum: readonly ["VIEW_WEBSITE", "CALL_BUSINESS", "MESSAGE_BUSINESS"];
508
+ };
509
+ readonly website_url: {
510
+ readonly type: "string";
511
+ };
512
+ };
513
+ readonly required: readonly ["title", "body", "button_text", "button_type"];
514
+ };
515
+ readonly follow_up_action_url: {
516
+ readonly type: "string";
517
+ };
518
+ };
519
+ readonly required: readonly ["page_id", "name", "privacy_policy", "questions", "thank_you_page"];
520
+ };
521
+ } | {
522
+ readonly name: "meta_ads_create_custom_audience";
523
+ readonly description: string;
524
+ readonly inputSchema: {
525
+ readonly type: "object";
526
+ readonly properties: {
527
+ readonly account_id: {
528
+ readonly type: "string";
529
+ };
530
+ readonly name: {
531
+ readonly type: "string";
532
+ };
533
+ readonly description: {
534
+ readonly type: "string";
535
+ };
536
+ readonly customer_file_source: {
537
+ readonly type: "string";
538
+ readonly enum: readonly ["USER_PROVIDED_ONLY", "PARTNER_PROVIDED_ONLY", "BOTH_USER_AND_PARTNER_PROVIDED"];
539
+ };
540
+ };
541
+ readonly required: readonly ["account_id", "name"];
542
+ };
543
+ } | {
544
+ readonly name: "meta_ads_upload_users_to_audience";
545
+ readonly description: string;
546
+ readonly inputSchema: {
547
+ readonly type: "object";
548
+ readonly properties: {
549
+ readonly audience_id: {
550
+ readonly type: "string";
551
+ };
552
+ readonly users: {
553
+ readonly type: "array";
554
+ readonly items: {
555
+ readonly type: "object";
556
+ readonly properties: {
557
+ readonly email: {
558
+ readonly type: "string";
559
+ };
560
+ readonly phone: {
561
+ readonly type: "string";
562
+ };
563
+ readonly first_name: {
564
+ readonly type: "string";
565
+ };
566
+ readonly last_name: {
567
+ readonly type: "string";
568
+ };
569
+ readonly country: {
570
+ readonly type: "string";
571
+ };
572
+ readonly zip: {
573
+ readonly type: "string";
574
+ };
575
+ readonly city: {
576
+ readonly type: "string";
577
+ };
578
+ readonly state: {
579
+ readonly type: "string";
580
+ };
581
+ };
582
+ };
583
+ };
584
+ readonly schema: {
585
+ readonly type: "array";
586
+ readonly items: {
587
+ readonly type: "string";
588
+ readonly enum: readonly ["EMAIL", "PHONE", "FN", "LN", "COUNTRY", "ZIP", "CT", "ST", "DOBY", "GEN", "MADID"];
589
+ };
590
+ };
591
+ readonly session_id: {
592
+ readonly type: "number";
593
+ };
594
+ readonly batch_size: {
595
+ readonly type: "number";
596
+ readonly description: "Default 1000, max 10000.";
597
+ };
598
+ };
599
+ readonly required: readonly ["audience_id", "users"];
600
+ };
601
+ } | {
602
+ readonly name: "meta_ads_create_lookalike_audience";
603
+ readonly description: string;
604
+ readonly inputSchema: {
605
+ readonly type: "object";
606
+ readonly properties: {
607
+ readonly account_id: {
608
+ readonly type: "string";
609
+ };
610
+ readonly name: {
611
+ readonly type: "string";
612
+ };
613
+ readonly origin_audience_id: {
614
+ readonly type: "string";
615
+ };
616
+ readonly country: {
617
+ readonly type: "string";
618
+ readonly description: "ISO 3166-1 alpha-2.";
619
+ };
620
+ readonly ratio: {
621
+ readonly type: "number";
622
+ };
623
+ readonly description: {
624
+ readonly type: "string";
625
+ };
626
+ };
627
+ readonly required: readonly ["account_id", "name", "origin_audience_id", "country"];
628
+ };
629
+ } | {
630
+ readonly name: "meta_ads_update_object_status";
631
+ readonly description: string;
632
+ readonly inputSchema: {
633
+ readonly type: "object";
634
+ readonly properties: {
635
+ readonly object_id: {
636
+ readonly type: "string";
637
+ readonly description: "Campaign, ad set, or ad id.";
638
+ };
639
+ readonly status: {
640
+ readonly type: "string";
641
+ readonly enum: readonly ["PAUSED", "ACTIVE", "ARCHIVED"];
642
+ };
643
+ };
644
+ readonly required: readonly ["object_id", "status"];
645
+ };
646
+ } | {
647
+ readonly name: "meta_ads_update_budget";
648
+ readonly description: string;
649
+ readonly inputSchema: {
650
+ readonly type: "object";
651
+ readonly properties: {
652
+ readonly object_id: {
653
+ readonly type: "string";
654
+ readonly description: "Campaign or ad set id.";
655
+ };
656
+ readonly daily_budget: {
657
+ readonly type: "number";
658
+ readonly description: "Cents.";
659
+ };
660
+ readonly lifetime_budget: {
661
+ readonly type: "number";
662
+ readonly description: "Cents.";
663
+ };
664
+ };
665
+ readonly required: readonly ["object_id"];
666
+ };
667
+ } | {
668
+ readonly name: "meta_ads_delete_object";
669
+ readonly description: string;
670
+ readonly inputSchema: {
671
+ readonly type: "object";
672
+ readonly properties: {
673
+ readonly object_id: {
674
+ readonly type: "string";
675
+ };
676
+ };
677
+ readonly required: readonly ["object_id"];
678
+ };
679
+ } | {
680
+ readonly name: "meta_ads_swap_ad_lead_form";
681
+ readonly description: string;
682
+ readonly inputSchema: {
683
+ readonly type: "object";
684
+ readonly properties: {
685
+ readonly ad_id: {
686
+ readonly type: "string";
687
+ readonly description: "Meta ad id (numeric).";
688
+ };
689
+ readonly new_form_id: {
690
+ readonly type: "string";
691
+ readonly description: "New lead_gen_form_id to bind.";
692
+ };
693
+ readonly cta_type: {
694
+ readonly type: "string";
695
+ readonly description: string;
696
+ };
697
+ readonly dry_run: {
698
+ readonly type: "boolean";
699
+ readonly description: "If true, return a diff without writing. Default false.";
700
+ };
701
+ };
702
+ readonly required: readonly ["ad_id", "new_form_id"];
703
+ };
704
+ } | {
705
+ readonly name: "meta_ads_rebind_ad_creative";
706
+ readonly description: string;
707
+ readonly inputSchema: {
708
+ readonly type: "object";
709
+ readonly properties: {
710
+ readonly ad_id: {
711
+ readonly type: "string";
712
+ readonly description: "Meta ad id (numeric).";
713
+ };
714
+ readonly creative_id: {
715
+ readonly type: "string";
716
+ readonly description: "New creative_id to bind to the ad.";
717
+ };
718
+ readonly dry_run: {
719
+ readonly type: "boolean";
720
+ readonly description: "If true, return a diff without writing. Default false.";
721
+ };
722
+ readonly force: {
723
+ readonly type: "boolean";
724
+ readonly description: "Bypass the asset_customization_rules safety check. Use only when intentionally replacing per-placement image rules.";
725
+ };
726
+ };
727
+ readonly required: readonly ["ad_id", "creative_id"];
728
+ };
729
+ } | {
730
+ readonly name: "meta_ads_edit_creative_text";
731
+ readonly description: string;
732
+ readonly inputSchema: {
733
+ readonly type: "object";
734
+ readonly properties: {
735
+ readonly ad_id: {
736
+ readonly type: "string";
737
+ readonly description: "Meta ad id (numeric).";
738
+ };
739
+ readonly messages: {
740
+ readonly type: "array";
741
+ readonly items: {
742
+ readonly type: "string";
743
+ };
744
+ readonly description: "Up to 5 primary text variants. Replaces the entire bodies[] array.";
745
+ };
746
+ readonly headlines: {
747
+ readonly type: "array";
748
+ readonly items: {
749
+ readonly type: "string";
750
+ };
751
+ readonly description: "Up to 5 headline variants. Replaces the entire titles[] array.";
752
+ };
753
+ readonly descriptions: {
754
+ readonly type: "array";
755
+ readonly items: {
756
+ readonly type: "string";
757
+ };
758
+ readonly description: "Up to 5 description variants. Replaces the entire descriptions[] array.";
759
+ };
760
+ readonly dry_run: {
761
+ readonly type: "boolean";
762
+ readonly description: "If true, return a diff without writing.";
763
+ };
764
+ readonly force: {
765
+ readonly type: "boolean";
766
+ readonly description: "Bypass the label-orphaning safety check (only for DCO-style ads with labeled text).";
767
+ };
768
+ };
769
+ readonly required: readonly ["ad_id"];
770
+ };
771
+ })[];
772
+ //# sourceMappingURL=toolDefinitions.d.ts.map