@sellable/mcp 0.1.59 → 0.1.61
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.
package/package.json
CHANGED
|
@@ -573,7 +573,10 @@ Required behavior:
|
|
|
573
573
|
- do not mutate DB-backed campaign state
|
|
574
574
|
- run a real parallel source-angle scout when the source is not supplied and at
|
|
575
575
|
least two viable source angles exist. Treat source scouting as independent
|
|
576
|
-
branches, then compare the outputs in `lead-review.md`.
|
|
576
|
+
branches, then compare the outputs in `lead-review.md`. If the realistic
|
|
577
|
+
source set is Signals + Sales Nav, run both. If it is Signals + Prospeo, run
|
|
578
|
+
both. If all three are credible, run all three when the host/runtime supports
|
|
579
|
+
it.
|
|
577
580
|
- Branch A: Signals / active LinkedIn posts. Search relevant keyword lanes,
|
|
578
581
|
review finalist posts, fetch top-post engagers, and estimate warm-fit
|
|
579
582
|
volume.
|
|
@@ -589,7 +592,7 @@ Required behavior:
|
|
|
589
592
|
lanes and fetch top-post engagers in parallel when tool batching allows it.
|
|
590
593
|
For Sales Nav-first or Prospeo/account-first campaigns, run multiple preview
|
|
591
594
|
lanes for that provider in parallel and use Signals only as a warmth/quality
|
|
592
|
-
check when relevant
|
|
595
|
+
check when relevant.
|
|
593
596
|
- after every Sales Nav preview, validate that filters actually applied before
|
|
594
597
|
using the lane in `lead-review.md`: `searchUrl` should include filters, the
|
|
595
598
|
first page should match the intended roles/companies, and the result count
|
|
@@ -606,6 +609,16 @@ Required behavior:
|
|
|
606
609
|
keyword lanes; it does not mean 492 prospects. The source decision must name
|
|
607
610
|
the actual posts we would use, show why they won, and estimate usable engagers
|
|
608
611
|
from those posts after headline/sample filtering
|
|
612
|
+
- Signals viability is based on estimated ICP-fit reachable engagers, not raw
|
|
613
|
+
post count and not whether it beats Sales Nav scale. If 5-8 selected posts can
|
|
614
|
+
plausibly produce ~150+ ICP-fit warm prospects before final filtering, keep
|
|
615
|
+
Signals as a viable focused option. If stricter cleanup likely reduces that to
|
|
616
|
+
~100 usable prospects, say so plainly instead of discarding it.
|
|
617
|
+
- When Signals is viable-but-smaller and Sales Nav or Prospeo is more scalable,
|
|
618
|
+
the user-facing lead review must present the choice: Signals for a warmer,
|
|
619
|
+
smaller, higher-reply-upside first batch versus Sales Nav/Prospeo for broader
|
|
620
|
+
scale. Recommend the source you believe should win, often Sales Nav when scale
|
|
621
|
+
matters, but keep the smaller Signals lane available as a real option.
|
|
609
622
|
- user-facing source logic must use numbers, not vibes. Never write a percentage
|
|
610
623
|
such as `73% match` without the numerator, denominator, and sample basis, e.g.
|
|
611
624
|
`8 of 11 sampled engagers fit the ICP (73%)`. If the sample is small, say it is
|
|
@@ -621,9 +634,10 @@ usable leads`.
|
|
|
621
634
|
last 30 days, prefer the last 7-14 days when quality is comparable, and call
|
|
622
635
|
out any older post as a deliberate tradeoff. Do not hide post age inside the
|
|
623
636
|
raw search count
|
|
624
|
-
- default source quality target is 300-500+ likely usable leads
|
|
625
|
-
150
|
|
626
|
-
|
|
637
|
+
- default source quality target is 300-500+ likely usable leads for scalable
|
|
638
|
+
outbound; accept ~150+ likely ICP-fit warm prospects as viable for a focused
|
|
639
|
+
Signals-first campaign or first review batch. Name the volume tradeoff in
|
|
640
|
+
`lead-review.md` and the approval packet rather than forcing a discard.
|
|
627
641
|
- if `lead-source-intake.json` is present, read `sourceType`,
|
|
628
642
|
`sourceInputMode`, file path or existing lead-list ID, selected columns,
|
|
629
643
|
confirmation token, normalized counts, and any preview-created
|
|
@@ -301,7 +301,7 @@
|
|
|
301
301
|
"action": "run_subskill",
|
|
302
302
|
"target": "find-leads",
|
|
303
303
|
"mode": "campaignless-preview",
|
|
304
|
-
"sourceScoutRule": "When source is not user-supplied and at least two viable source angles exist, scout independent source angles in parallel when host/tooling permits: Signals active-post branch
|
|
304
|
+
"sourceScoutRule": "When source is not user-supplied and at least two viable source angles exist, scout independent source angles in real parallel when host/tooling permits: Signals active-post branch + Sales Nav title/company branch, Signals + Prospeo when domains/accounts are relevant, or all three when credible. If real parallel execution is unavailable, run the same scouts sequentially and do not claim parallel execution. Compare outputs by raw volume, n/N sampled fit, estimated good-fit range, expected reply range, and tradeoff. Keep Signals as viable when selected posts can produce ~150+ ICP-fit warm prospects before final filtering, even if Sales Nav is more scalable; when both are viable, present the choice and recommend the stronger default."
|
|
305
305
|
},
|
|
306
306
|
{
|
|
307
307
|
"action": "write_artifacts",
|
|
@@ -235,6 +235,11 @@ Use the existing provider tools to run a small, directional probe:
|
|
|
235
235
|
|
|
236
236
|
If the first probe is weak or noisy and enough context exists, try 1-2 alternate hypotheses before returning.
|
|
237
237
|
If the first probe has good quality but insufficient scale, iterate 1-2 times to widen intelligently before returning.
|
|
238
|
+
When two or more source angles are viable, run the provider probes in real
|
|
239
|
+
parallel when the host/runtime allows it. Examples: Signals + Sales Nav,
|
|
240
|
+
Signals + Prospeo, or Sales Nav + Prospeo. If the host cannot run them in
|
|
241
|
+
parallel, run the same probes sequentially and do not claim they ran in
|
|
242
|
+
parallel.
|
|
238
243
|
|
|
239
244
|
Treat refinement as a measured loop:
|
|
240
245
|
|
|
@@ -262,10 +267,23 @@ Use first when the value is in conversation opportunity, competitor engagers, co
|
|
|
262
267
|
- Favor ICP-fit conversation density over raw post volume.
|
|
263
268
|
- Capture counts, false-positive patterns, and notable examples.
|
|
264
269
|
- If Signals is materially in the running, do not stop at post-level quality alone.
|
|
265
|
-
- Pick
|
|
270
|
+
- Pick enough promising posts to estimate campaign viability. Start with 1-3
|
|
271
|
+
strong posts for a spot check; if the sampled pass rate is good but the
|
|
272
|
+
projected pool is below target, expand to 5-8 selected posts before
|
|
273
|
+
discarding Signals.
|
|
266
274
|
- Sample a representative first page only, scoring the first 25-40 engagers across the chosen posts against a rough yes/no headline rubric or `headlineICPCriteria`.
|
|
267
275
|
- Use headline and display-name cues only for the spot-check sample; do not enrich people during this phase.
|
|
268
276
|
- Base `estimatedReachableLeads` on the sampled engager pass rate, not only on a guessed discount from post themes.
|
|
277
|
+
- A Signals lane with ~150+ estimated ICP-fit reachable engagers from selected
|
|
278
|
+
posts is viable for a focused warm campaign, even if Sales Nav is more
|
|
279
|
+
scalable. Do not discard that lane solely for being smaller. If post-level
|
|
280
|
+
filtering likely reduces 150 good fits to ~100 after stricter cleanup, say so
|
|
281
|
+
plainly and treat it as a viable-but-smaller option.
|
|
282
|
+
- When Signals and Sales Nav/Prospeo are both viable, present the tradeoff and
|
|
283
|
+
ask for the user's source preference if the decision changes campaign
|
|
284
|
+
strategy: Signals = warmer, smaller, higher reply upside; Sales Nav/Prospeo =
|
|
285
|
+
more scalable, usually colder or less signal-rich. Recommend the source you
|
|
286
|
+
believe is better, but keep the viable alternate as a real option.
|
|
269
287
|
- If you cannot fetch engagers in the current runtime, say the estimate is inferred and lower confidence.
|
|
270
288
|
- If Signals is too sparse, too noisy, or clearly below campaign scale after the spot check, fall back to `Sales Nav` rather than forcing a weak conversation-led lane.
|
|
271
289
|
|
|
@@ -279,6 +297,9 @@ Use first when LinkedIn activity plus tighter role / company filters matter.
|
|
|
279
297
|
`CURRENT_TITLE` lookups. Seniority filters are supporting constraints, not a
|
|
280
298
|
substitute for target roles. Example: VP Sales / VP Revenue / Head of Growth
|
|
281
299
|
should use title filters, not only `SENIORITY_LEVEL: Vice President`.
|
|
300
|
+
- When a title lookup returns multiple options, choose the option that most
|
|
301
|
+
closely matches the intended role, not the first option by position. If
|
|
302
|
+
`Head of Growth` appears after `Head of Marketing`, use `Head of Growth`.
|
|
282
303
|
- For reply-likelihood-first outbound, Sales Nav is the second choice after Signals: use it when the TAM is not active enough on LinkedIn, when Signals cannot sustain enough good fits, or when the targeting thesis depends on tighter role/company control than Signals can provide.
|
|
283
304
|
- For InMail or LinkedIn-send motions, establish the baseline TAM first, then test a `POSTED_ON_LINKEDIN` slice when the pool can still sustain a campaign.
|
|
284
305
|
- Treat recent posters as a preferred first-send slice, not just a nice-to-have proxy. When the recently-posted slice still yields enough projected good fits, prefer it because reply / acceptance performance is usually materially better than the cold full-TAM pool.
|
|
@@ -57,6 +57,12 @@ Example search name: "Active CXOs at 201-500 companies"
|
|
|
57
57
|
business development, partnerships, marketing, operations, and other noisy
|
|
58
58
|
roles.
|
|
59
59
|
|
|
60
|
+
Do not blindly use the first `lookup_sales_nav_filter` result. Review the
|
|
61
|
+
returned options and choose the closest semantic title match. If the first
|
|
62
|
+
result for "Head of Growth" is "Head of Marketing" but a later option is
|
|
63
|
+
"Head of Growth", use "Head of Growth". If no close title match exists,
|
|
64
|
+
retry with a tighter title query or omit that role and call out the tradeoff.
|
|
65
|
+
|
|
60
66
|
Dynamic filters (REQUIRE lookup):
|
|
61
67
|
|
|
62
68
|
- REGION: "United States", "California", "London"
|