@agifyai/leadify-mcp 9.6.0 → 9.7.1

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.
@@ -7,20 +7,20 @@ declare const selectionSchema: z.ZodEffects<z.ZodDiscriminatedUnion<"kind", [z.Z
7
7
  kind: z.ZodLiteral<"lead_ids">;
8
8
  lead_ids: z.ZodArray<z.ZodString, "many">;
9
9
  }, "strict", z.ZodTypeAny, {
10
- lead_ids: string[];
11
10
  kind: "lead_ids";
12
- }, {
13
11
  lead_ids: string[];
12
+ }, {
14
13
  kind: "lead_ids";
14
+ lead_ids: string[];
15
15
  }>, z.ZodObject<{
16
16
  kind: z.ZodLiteral<"view">;
17
17
  view_id: z.ZodString;
18
18
  }, "strict", z.ZodTypeAny, {
19
- view_id: string;
20
19
  kind: "view";
21
- }, {
22
20
  view_id: string;
21
+ }, {
23
22
  kind: "view";
23
+ view_id: string;
24
24
  }>, z.ZodObject<{
25
25
  kind: z.ZodLiteral<"filter">;
26
26
  group_id: z.ZodString;
@@ -52,68 +52,68 @@ declare const selectionSchema: z.ZodEffects<z.ZodDiscriminatedUnion<"kind", [z.Z
52
52
  }>, "many">>;
53
53
  search: z.ZodOptional<z.ZodString>;
54
54
  }, "strict", z.ZodTypeAny, {
55
- group_id: string;
56
55
  kind: "filter";
57
- search?: string | undefined;
56
+ group_id: string;
58
57
  filters?: {
59
58
  field: string;
60
59
  operator: "equals" | "contains" | "gte" | "lte" | "not_equals" | "not_contains" | "is_true" | "is_false" | "is_null" | "is_not_null" | "activity_days_ago" | "activity_count_equals" | "activity_count_gte" | "activity_count_lte" | "bbox";
61
60
  value?: unknown;
62
61
  }[] | undefined;
62
+ search?: string | undefined;
63
63
  or_filters?: {
64
64
  field: string;
65
65
  operator: "equals" | "contains" | "gte" | "lte" | "not_equals" | "not_contains" | "is_true" | "is_false" | "is_null" | "is_not_null" | "activity_days_ago" | "activity_count_equals" | "activity_count_gte" | "activity_count_lte" | "bbox";
66
66
  value?: unknown;
67
67
  }[] | undefined;
68
68
  }, {
69
- group_id: string;
70
69
  kind: "filter";
71
- search?: string | undefined;
70
+ group_id: string;
72
71
  filters?: {
73
72
  field: string;
74
73
  operator: "equals" | "contains" | "gte" | "lte" | "not_equals" | "not_contains" | "is_true" | "is_false" | "is_null" | "is_not_null" | "activity_days_ago" | "activity_count_equals" | "activity_count_gte" | "activity_count_lte" | "bbox";
75
74
  value?: unknown;
76
75
  }[] | undefined;
76
+ search?: string | undefined;
77
77
  or_filters?: {
78
78
  field: string;
79
79
  operator: "equals" | "contains" | "gte" | "lte" | "not_equals" | "not_contains" | "is_true" | "is_false" | "is_null" | "is_not_null" | "activity_days_ago" | "activity_count_equals" | "activity_count_gte" | "activity_count_lte" | "bbox";
80
80
  value?: unknown;
81
81
  }[] | undefined;
82
82
  }>]>, {
83
- lead_ids: string[];
84
83
  kind: "lead_ids";
84
+ lead_ids: string[];
85
85
  } | {
86
- view_id: string;
87
86
  kind: "view";
87
+ view_id: string;
88
88
  } | {
89
- group_id: string;
90
89
  kind: "filter";
91
- search?: string | undefined;
90
+ group_id: string;
92
91
  filters?: {
93
92
  field: string;
94
93
  operator: "equals" | "contains" | "gte" | "lte" | "not_equals" | "not_contains" | "is_true" | "is_false" | "is_null" | "is_not_null" | "activity_days_ago" | "activity_count_equals" | "activity_count_gte" | "activity_count_lte" | "bbox";
95
94
  value?: unknown;
96
95
  }[] | undefined;
96
+ search?: string | undefined;
97
97
  or_filters?: {
98
98
  field: string;
99
99
  operator: "equals" | "contains" | "gte" | "lte" | "not_equals" | "not_contains" | "is_true" | "is_false" | "is_null" | "is_not_null" | "activity_days_ago" | "activity_count_equals" | "activity_count_gte" | "activity_count_lte" | "bbox";
100
100
  value?: unknown;
101
101
  }[] | undefined;
102
102
  }, {
103
- lead_ids: string[];
104
103
  kind: "lead_ids";
104
+ lead_ids: string[];
105
105
  } | {
106
- view_id: string;
107
106
  kind: "view";
107
+ view_id: string;
108
108
  } | {
109
- group_id: string;
110
109
  kind: "filter";
111
- search?: string | undefined;
110
+ group_id: string;
112
111
  filters?: {
113
112
  field: string;
114
113
  operator: "equals" | "contains" | "gte" | "lte" | "not_equals" | "not_contains" | "is_true" | "is_false" | "is_null" | "is_not_null" | "activity_days_ago" | "activity_count_equals" | "activity_count_gte" | "activity_count_lte" | "bbox";
115
114
  value?: unknown;
116
115
  }[] | undefined;
116
+ search?: string | undefined;
117
117
  or_filters?: {
118
118
  field: string;
119
119
  operator: "equals" | "contains" | "gte" | "lte" | "not_equals" | "not_contains" | "is_true" | "is_false" | "is_null" | "is_not_null" | "activity_days_ago" | "activity_count_equals" | "activity_count_gte" | "activity_count_lte" | "bbox";
@@ -127,20 +127,20 @@ declare const previewSchema: z.ZodObject<{
127
127
  kind: z.ZodLiteral<"lead_ids">;
128
128
  lead_ids: z.ZodArray<z.ZodString, "many">;
129
129
  }, "strict", z.ZodTypeAny, {
130
- lead_ids: string[];
131
130
  kind: "lead_ids";
132
- }, {
133
131
  lead_ids: string[];
132
+ }, {
134
133
  kind: "lead_ids";
134
+ lead_ids: string[];
135
135
  }>, z.ZodObject<{
136
136
  kind: z.ZodLiteral<"view">;
137
137
  view_id: z.ZodString;
138
138
  }, "strict", z.ZodTypeAny, {
139
- view_id: string;
140
139
  kind: "view";
141
- }, {
142
140
  view_id: string;
141
+ }, {
143
142
  kind: "view";
143
+ view_id: string;
144
144
  }>, z.ZodObject<{
145
145
  kind: z.ZodLiteral<"filter">;
146
146
  group_id: z.ZodString;
@@ -172,68 +172,68 @@ declare const previewSchema: z.ZodObject<{
172
172
  }>, "many">>;
173
173
  search: z.ZodOptional<z.ZodString>;
174
174
  }, "strict", z.ZodTypeAny, {
175
- group_id: string;
176
175
  kind: "filter";
177
- search?: string | undefined;
176
+ group_id: string;
178
177
  filters?: {
179
178
  field: string;
180
179
  operator: "equals" | "contains" | "gte" | "lte" | "not_equals" | "not_contains" | "is_true" | "is_false" | "is_null" | "is_not_null" | "activity_days_ago" | "activity_count_equals" | "activity_count_gte" | "activity_count_lte" | "bbox";
181
180
  value?: unknown;
182
181
  }[] | undefined;
182
+ search?: string | undefined;
183
183
  or_filters?: {
184
184
  field: string;
185
185
  operator: "equals" | "contains" | "gte" | "lte" | "not_equals" | "not_contains" | "is_true" | "is_false" | "is_null" | "is_not_null" | "activity_days_ago" | "activity_count_equals" | "activity_count_gte" | "activity_count_lte" | "bbox";
186
186
  value?: unknown;
187
187
  }[] | undefined;
188
188
  }, {
189
- group_id: string;
190
189
  kind: "filter";
191
- search?: string | undefined;
190
+ group_id: string;
192
191
  filters?: {
193
192
  field: string;
194
193
  operator: "equals" | "contains" | "gte" | "lte" | "not_equals" | "not_contains" | "is_true" | "is_false" | "is_null" | "is_not_null" | "activity_days_ago" | "activity_count_equals" | "activity_count_gte" | "activity_count_lte" | "bbox";
195
194
  value?: unknown;
196
195
  }[] | undefined;
196
+ search?: string | undefined;
197
197
  or_filters?: {
198
198
  field: string;
199
199
  operator: "equals" | "contains" | "gte" | "lte" | "not_equals" | "not_contains" | "is_true" | "is_false" | "is_null" | "is_not_null" | "activity_days_ago" | "activity_count_equals" | "activity_count_gte" | "activity_count_lte" | "bbox";
200
200
  value?: unknown;
201
201
  }[] | undefined;
202
202
  }>]>, {
203
- lead_ids: string[];
204
203
  kind: "lead_ids";
204
+ lead_ids: string[];
205
205
  } | {
206
- view_id: string;
207
206
  kind: "view";
207
+ view_id: string;
208
208
  } | {
209
- group_id: string;
210
209
  kind: "filter";
211
- search?: string | undefined;
210
+ group_id: string;
212
211
  filters?: {
213
212
  field: string;
214
213
  operator: "equals" | "contains" | "gte" | "lte" | "not_equals" | "not_contains" | "is_true" | "is_false" | "is_null" | "is_not_null" | "activity_days_ago" | "activity_count_equals" | "activity_count_gte" | "activity_count_lte" | "bbox";
215
214
  value?: unknown;
216
215
  }[] | undefined;
216
+ search?: string | undefined;
217
217
  or_filters?: {
218
218
  field: string;
219
219
  operator: "equals" | "contains" | "gte" | "lte" | "not_equals" | "not_contains" | "is_true" | "is_false" | "is_null" | "is_not_null" | "activity_days_ago" | "activity_count_equals" | "activity_count_gte" | "activity_count_lte" | "bbox";
220
220
  value?: unknown;
221
221
  }[] | undefined;
222
222
  }, {
223
- lead_ids: string[];
224
223
  kind: "lead_ids";
224
+ lead_ids: string[];
225
225
  } | {
226
- view_id: string;
227
226
  kind: "view";
227
+ view_id: string;
228
228
  } | {
229
- group_id: string;
230
229
  kind: "filter";
231
- search?: string | undefined;
230
+ group_id: string;
232
231
  filters?: {
233
232
  field: string;
234
233
  operator: "equals" | "contains" | "gte" | "lte" | "not_equals" | "not_contains" | "is_true" | "is_false" | "is_null" | "is_not_null" | "activity_days_ago" | "activity_count_equals" | "activity_count_gte" | "activity_count_lte" | "bbox";
235
234
  value?: unknown;
236
235
  }[] | undefined;
236
+ search?: string | undefined;
237
237
  or_filters?: {
238
238
  field: string;
239
239
  operator: "equals" | "contains" | "gte" | "lte" | "not_equals" | "not_contains" | "is_true" | "is_false" | "is_null" | "is_not_null" | "activity_days_ago" | "activity_count_equals" | "activity_count_gte" | "activity_count_lte" | "bbox";
@@ -243,20 +243,20 @@ declare const previewSchema: z.ZodObject<{
243
243
  }, "strict", z.ZodTypeAny, {
244
244
  target_group_id: string;
245
245
  selection: {
246
- lead_ids: string[];
247
246
  kind: "lead_ids";
247
+ lead_ids: string[];
248
248
  } | {
249
- view_id: string;
250
249
  kind: "view";
250
+ view_id: string;
251
251
  } | {
252
- group_id: string;
253
252
  kind: "filter";
254
- search?: string | undefined;
253
+ group_id: string;
255
254
  filters?: {
256
255
  field: string;
257
256
  operator: "equals" | "contains" | "gte" | "lte" | "not_equals" | "not_contains" | "is_true" | "is_false" | "is_null" | "is_not_null" | "activity_days_ago" | "activity_count_equals" | "activity_count_gte" | "activity_count_lte" | "bbox";
258
257
  value?: unknown;
259
258
  }[] | undefined;
259
+ search?: string | undefined;
260
260
  or_filters?: {
261
261
  field: string;
262
262
  operator: "equals" | "contains" | "gte" | "lte" | "not_equals" | "not_contains" | "is_true" | "is_false" | "is_null" | "is_not_null" | "activity_days_ago" | "activity_count_equals" | "activity_count_gte" | "activity_count_lte" | "bbox";
@@ -267,20 +267,20 @@ declare const previewSchema: z.ZodObject<{
267
267
  }, {
268
268
  target_group_id: string;
269
269
  selection: {
270
- lead_ids: string[];
271
270
  kind: "lead_ids";
271
+ lead_ids: string[];
272
272
  } | {
273
- view_id: string;
274
273
  kind: "view";
274
+ view_id: string;
275
275
  } | {
276
- group_id: string;
277
276
  kind: "filter";
278
- search?: string | undefined;
277
+ group_id: string;
279
278
  filters?: {
280
279
  field: string;
281
280
  operator: "equals" | "contains" | "gte" | "lte" | "not_equals" | "not_contains" | "is_true" | "is_false" | "is_null" | "is_not_null" | "activity_days_ago" | "activity_count_equals" | "activity_count_gte" | "activity_count_lte" | "bbox";
282
281
  value?: unknown;
283
282
  }[] | undefined;
283
+ search?: string | undefined;
284
284
  or_filters?: {
285
285
  field: string;
286
286
  operator: "equals" | "contains" | "gte" | "lte" | "not_equals" | "not_contains" | "is_true" | "is_false" | "is_null" | "is_not_null" | "activity_days_ago" | "activity_count_equals" | "activity_count_gte" | "activity_count_lte" | "bbox";
@@ -298,20 +298,20 @@ declare const applySchema: z.ZodObject<{
298
298
  kind: z.ZodLiteral<"lead_ids">;
299
299
  lead_ids: z.ZodArray<z.ZodString, "many">;
300
300
  }, "strict", z.ZodTypeAny, {
301
- lead_ids: string[];
302
301
  kind: "lead_ids";
303
- }, {
304
302
  lead_ids: string[];
303
+ }, {
305
304
  kind: "lead_ids";
305
+ lead_ids: string[];
306
306
  }>, z.ZodObject<{
307
307
  kind: z.ZodLiteral<"view">;
308
308
  view_id: z.ZodString;
309
309
  }, "strict", z.ZodTypeAny, {
310
- view_id: string;
311
310
  kind: "view";
312
- }, {
313
311
  view_id: string;
312
+ }, {
314
313
  kind: "view";
314
+ view_id: string;
315
315
  }>, z.ZodObject<{
316
316
  kind: z.ZodLiteral<"filter">;
317
317
  group_id: z.ZodString;
@@ -343,68 +343,68 @@ declare const applySchema: z.ZodObject<{
343
343
  }>, "many">>;
344
344
  search: z.ZodOptional<z.ZodString>;
345
345
  }, "strict", z.ZodTypeAny, {
346
- group_id: string;
347
346
  kind: "filter";
348
- search?: string | undefined;
347
+ group_id: string;
349
348
  filters?: {
350
349
  field: string;
351
350
  operator: "equals" | "contains" | "gte" | "lte" | "not_equals" | "not_contains" | "is_true" | "is_false" | "is_null" | "is_not_null" | "activity_days_ago" | "activity_count_equals" | "activity_count_gte" | "activity_count_lte" | "bbox";
352
351
  value?: unknown;
353
352
  }[] | undefined;
353
+ search?: string | undefined;
354
354
  or_filters?: {
355
355
  field: string;
356
356
  operator: "equals" | "contains" | "gte" | "lte" | "not_equals" | "not_contains" | "is_true" | "is_false" | "is_null" | "is_not_null" | "activity_days_ago" | "activity_count_equals" | "activity_count_gte" | "activity_count_lte" | "bbox";
357
357
  value?: unknown;
358
358
  }[] | undefined;
359
359
  }, {
360
- group_id: string;
361
360
  kind: "filter";
362
- search?: string | undefined;
361
+ group_id: string;
363
362
  filters?: {
364
363
  field: string;
365
364
  operator: "equals" | "contains" | "gte" | "lte" | "not_equals" | "not_contains" | "is_true" | "is_false" | "is_null" | "is_not_null" | "activity_days_ago" | "activity_count_equals" | "activity_count_gte" | "activity_count_lte" | "bbox";
366
365
  value?: unknown;
367
366
  }[] | undefined;
367
+ search?: string | undefined;
368
368
  or_filters?: {
369
369
  field: string;
370
370
  operator: "equals" | "contains" | "gte" | "lte" | "not_equals" | "not_contains" | "is_true" | "is_false" | "is_null" | "is_not_null" | "activity_days_ago" | "activity_count_equals" | "activity_count_gte" | "activity_count_lte" | "bbox";
371
371
  value?: unknown;
372
372
  }[] | undefined;
373
373
  }>]>, {
374
- lead_ids: string[];
375
374
  kind: "lead_ids";
375
+ lead_ids: string[];
376
376
  } | {
377
- view_id: string;
378
377
  kind: "view";
378
+ view_id: string;
379
379
  } | {
380
- group_id: string;
381
380
  kind: "filter";
382
- search?: string | undefined;
381
+ group_id: string;
383
382
  filters?: {
384
383
  field: string;
385
384
  operator: "equals" | "contains" | "gte" | "lte" | "not_equals" | "not_contains" | "is_true" | "is_false" | "is_null" | "is_not_null" | "activity_days_ago" | "activity_count_equals" | "activity_count_gte" | "activity_count_lte" | "bbox";
386
385
  value?: unknown;
387
386
  }[] | undefined;
387
+ search?: string | undefined;
388
388
  or_filters?: {
389
389
  field: string;
390
390
  operator: "equals" | "contains" | "gte" | "lte" | "not_equals" | "not_contains" | "is_true" | "is_false" | "is_null" | "is_not_null" | "activity_days_ago" | "activity_count_equals" | "activity_count_gte" | "activity_count_lte" | "bbox";
391
391
  value?: unknown;
392
392
  }[] | undefined;
393
393
  }, {
394
- lead_ids: string[];
395
394
  kind: "lead_ids";
395
+ lead_ids: string[];
396
396
  } | {
397
- view_id: string;
398
397
  kind: "view";
398
+ view_id: string;
399
399
  } | {
400
- group_id: string;
401
400
  kind: "filter";
402
- search?: string | undefined;
401
+ group_id: string;
403
402
  filters?: {
404
403
  field: string;
405
404
  operator: "equals" | "contains" | "gte" | "lte" | "not_equals" | "not_contains" | "is_true" | "is_false" | "is_null" | "is_not_null" | "activity_days_ago" | "activity_count_equals" | "activity_count_gte" | "activity_count_lte" | "bbox";
406
405
  value?: unknown;
407
406
  }[] | undefined;
407
+ search?: string | undefined;
408
408
  or_filters?: {
409
409
  field: string;
410
410
  operator: "equals" | "contains" | "gte" | "lte" | "not_equals" | "not_contains" | "is_true" | "is_false" | "is_null" | "is_not_null" | "activity_days_ago" | "activity_count_equals" | "activity_count_gte" | "activity_count_lte" | "bbox";
@@ -415,20 +415,20 @@ declare const applySchema: z.ZodObject<{
415
415
  idempotency_key: string;
416
416
  target_group_id: string;
417
417
  selection: {
418
- lead_ids: string[];
419
418
  kind: "lead_ids";
419
+ lead_ids: string[];
420
420
  } | {
421
- view_id: string;
422
421
  kind: "view";
422
+ view_id: string;
423
423
  } | {
424
- group_id: string;
425
424
  kind: "filter";
426
- search?: string | undefined;
425
+ group_id: string;
427
426
  filters?: {
428
427
  field: string;
429
428
  operator: "equals" | "contains" | "gte" | "lte" | "not_equals" | "not_contains" | "is_true" | "is_false" | "is_null" | "is_not_null" | "activity_days_ago" | "activity_count_equals" | "activity_count_gte" | "activity_count_lte" | "bbox";
430
429
  value?: unknown;
431
430
  }[] | undefined;
431
+ search?: string | undefined;
432
432
  or_filters?: {
433
433
  field: string;
434
434
  operator: "equals" | "contains" | "gte" | "lte" | "not_equals" | "not_contains" | "is_true" | "is_false" | "is_null" | "is_not_null" | "activity_days_ago" | "activity_count_equals" | "activity_count_gte" | "activity_count_lte" | "bbox";
@@ -441,20 +441,20 @@ declare const applySchema: z.ZodObject<{
441
441
  idempotency_key: string;
442
442
  target_group_id: string;
443
443
  selection: {
444
- lead_ids: string[];
445
444
  kind: "lead_ids";
445
+ lead_ids: string[];
446
446
  } | {
447
- view_id: string;
448
447
  kind: "view";
448
+ view_id: string;
449
449
  } | {
450
- group_id: string;
451
450
  kind: "filter";
452
- search?: string | undefined;
451
+ group_id: string;
453
452
  filters?: {
454
453
  field: string;
455
454
  operator: "equals" | "contains" | "gte" | "lte" | "not_equals" | "not_contains" | "is_true" | "is_false" | "is_null" | "is_not_null" | "activity_days_ago" | "activity_count_equals" | "activity_count_gte" | "activity_count_lte" | "bbox";
456
455
  value?: unknown;
457
456
  }[] | undefined;
457
+ search?: string | undefined;
458
458
  or_filters?: {
459
459
  field: string;
460
460
  operator: "equals" | "contains" | "gte" | "lte" | "not_equals" | "not_contains" | "is_true" | "is_false" | "is_null" | "is_not_null" | "activity_days_ago" | "activity_count_equals" | "activity_count_gte" | "activity_count_lte" | "bbox";
@@ -1,17 +1,16 @@
1
1
  import { z } from "zod";
2
2
  import { getClient } from "../client.js";
3
3
  import { toolResult, handleToolError } from "../types.js";
4
+ import { eventRole } from "./events.js";
4
5
  const DEFAULT_LEAD_FIELDS = ["firstName", "lastName", "email", "company", "jobTitle", "linkedin"];
5
6
  const eventFilterSchema = z.object({
6
7
  event_ids: z.array(z.string().trim().min(1)).max(100).optional(),
7
8
  editions: z.array(z.string().trim().min(1).max(200)).max(100).optional(),
8
- roles: z.array(z.enum([
9
- "EXHIBITOR", "SPONSOR", "SPEAKER", "PARTNER", "ORGANIZER",
10
- "CONTRIBUTOR", "PARTICIPANT", "UNKNOWN", "OTHER",
11
- ])).max(20).optional(),
9
+ roles: z.array(eventRole).max(20).optional(),
12
10
  statuses: z.array(z.enum(["UNVERIFIED", "VERIFIED", "DISPUTED", "REFUTED"])).min(1).max(10).optional(),
13
11
  starts_on_from: z.string().regex(/^\d{4}-\d{2}-\d{2}$/).optional(),
14
12
  starts_on_to: z.string().regex(/^\d{4}-\d{2}-\d{2}$/).optional(),
13
+ subject: z.enum(["EMPLOYER", "PERSON"]).optional().describe("EMPLOYER (default, historical behavior): leads whose company carries the participation. PERSON: only Person leads that carry the participation themselves, e.g. the registrants of a webinar. An employer's event is never a participation of the person."),
15
14
  }).strict().superRefine((value, context) => {
16
15
  if (value.starts_on_from && value.starts_on_to && value.starts_on_to < value.starts_on_from) {
17
16
  context.addIssue({ code: z.ZodIssueCode.custom, path: ["starts_on_to"], message: "starts_on_to must be on or after starts_on_from." });
@@ -169,7 +168,9 @@ export function registerLeadTools(server, client = getClient()) {
169
168
  "full-text search, saved views, and compact field projections. Returns lead ID plus " +
170
169
  "common identity fields by default. Pass `fields` for a workflow-specific projection " +
171
170
  "and `include_schema=true` only when the schema is explicitly needed. event_filter " +
172
- "uses one correlated company participation and defaults explicitly to VERIFIED; " +
171
+ "uses one correlated participation and defaults explicitly to VERIFIED; subject=PERSON " +
172
+ "keeps only persons who carry the participation themselves, subject=EMPLOYER (default) " +
173
+ "matches through the company. A registration (REGISTERED) is not attendance (ATTENDED); " +
173
174
  "uncertain or absent data must never be cited as attendance or non-attendance.", {
174
175
  group_id: z.string().describe("ID of the lead group to query."),
175
176
  view_id: z
@@ -202,7 +203,7 @@ export function registerLeadTools(server, client = getClient()) {
202
203
  "operator to value. Operators: equals, not_equals, contains, not_contains, " +
203
204
  "gte, lte, is_true, is_false, is_null, is_not_null. " +
204
205
  'Example: {"industry": {"contains": "tech"}, "company": {"is_not_null": "true"}}'),
205
- event_filter: eventFilterSchema.optional().describe("Structured company-event participation filter. Values within one list use OR; event, edition, role, status and date dimensions use AND against the same participation. statuses defaults to [VERIFIED]. Pass uncertain statuses explicitly for review. There is no confidence score, negative operator or absence filter."),
206
+ event_filter: eventFilterSchema.optional().describe("Structured event participation filter. subject chooses whose participation counts: EMPLOYER (default, the company's) or PERSON (the person's own). Values within one list use OR; event, edition, role, status and date dimensions use AND against the same participation. statuses defaults to [VERIFIED]. Pass uncertain statuses explicitly for review. There is no confidence score, negative operator or absence filter: the absence of a record proves nothing."),
206
207
  }, async ({ group_id, view_id, page, limit, search, fields, include_schema, filters, event_filter }) => {
207
208
  try {
208
209
  const params = new URLSearchParams();
@@ -231,6 +232,7 @@ export function registerLeadTools(server, client = getClient()) {
231
232
  statuses: checked.statuses ?? ["VERIFIED"],
232
233
  ...(checked.starts_on_from ? { startsOnFrom: checked.starts_on_from } : {}),
233
234
  ...(checked.starts_on_to ? { startsOnTo: checked.starts_on_to } : {}),
235
+ ...(checked.subject ? { subject: checked.subject } : {}),
234
236
  }));
235
237
  }
236
238
  const data = await client.get("/get-leads", params);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agifyai/leadify-mcp",
3
- "version": "9.6.0",
3
+ "version": "9.7.1",
4
4
  "description": "MCP server for Leadify lead management API",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",