@sellable/mcp 0.1.232 → 0.1.234

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.
@@ -522,6 +522,7 @@ search_prospeo_companies({
522
522
  }
523
523
  })
524
524
  Do not invent company_oids. When seedCompanies or seedDomains are present, omit company_oids and let the backend resolve real Prospeo company IDs.
525
+ Route lookalike seed selection by campaign intent. For outbound/sales prospecting, use explicit target/account/customer domains or company names first, then verified past-customer/account evidence from research, CRM, or proof; never substitute the sender's company/domain or employer history unless it is confirmed as a target/customer seed or the user asks for sender-company peers. For job-search/application campaigns, current/past employers can be lookalike seeds because they define the candidate-fit lane. If intent or seed source is ambiguous, ask target/customer domains vs current/past employers, or switch to non-lookalike filters under YOLO. If the user asks for a geography like Germany, preserve it in company discovery where supported and in the follow-on people search.
525
526
  After account approval, copy the companySearchToken exactly into confirm_prospeo_company_accounts; package-backed MCP may return a short mcp-prospeo-company-search-token:* reference to avoid long-token copy errors.
526
527
  For accounts in the news: { "company_news": { "categories": ["Funding & Investment"], "timeframe_days": 90 } }.
527
528
  For awards: { "company_awards": { "include": ["G2"], "match_mode": "CONTAINS" } }.
@@ -1498,6 +1499,7 @@ export const leadToolDefinitions = [
1498
1499
  {
1499
1500
  name: "search_prospeo_companies",
1500
1501
  description: 'Search Prospeo for company/account results through the public /search-company lane. Requires get_provider_prompt({ provider: "prospeo" }) first. Use this first for company lookalike/account asks such as "find companies like Red Rover that use AI and have an API", "find founders at companies like our best customers", or "find accounts in the news about funding or partnerships". Results are accounts, not finished people leads. Review the returned accounts with the user, then call confirm_prospeo_company_accounts with the companySearchToken to create a domainFilterId before using search_prospeo for people at those accounts. Supports company lookalike, confirmed AI Attributes including pricing, company news, awards, website search, products/services, integrations, key customers, operating languages, Google discovery, headcount by location, structured company ICP, and experimental website traffic/key executive filters. Do not invent company_oids; when seedCompanies or seedDomains are present, omit company_oids and let the backend resolve real Prospeo IDs. company_intent and support-channel guesses like phone/email/chat/ticket/social are unsupported. Public API rows do not include lookalike tier/score/reason. If output includes omittedFilters or warnings, report them as truthful MCP/backend safety handling rather than claiming Prospeo enforced those omitted constraints. ' +
1502
+ "Route lookalike seeds by campaign intent: outbound uses explicit target/account/customer domains or verified past-customer accounts, not the sender company/domain; job-search/application campaigns may use current/past employers as existing-company seeds. Preserve geography like Germany in account or people filters. " +
1501
1503
  prospeoCompanyAccountWorkflowGuidance,
1502
1504
  inputSchema: {
1503
1505
  type: "object",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sellable/mcp",
3
- "version": "0.1.232",
3
+ "version": "0.1.234",
4
4
  "type": "module",
5
5
  "description": "Sellable MCP server for Claude Code and Codex campaign workflows",
6
6
  "main": "dist/index.js",
@@ -220,6 +220,25 @@ reference to avoid long-token copy errors. Account rows are not people leads
220
220
  yet. The confirmation creates the `domainFilterId` that constrains the follow-on
221
221
  `search_prospeo` people search.
222
222
 
223
+ For lookalike seed selection, route by campaign intent. In outbound/sales
224
+ prospecting campaigns, treat "best customer", "top customer", "target domains",
225
+ "approved accounts", "customer domains", and similar wording as target
226
+ account/customer seed asks. Use explicit user-provided target/account/customer
227
+ domains or company names first, then verified past-customer/account evidence from
228
+ research, CRM, or proof. Never substitute the sender's current company/domain or
229
+ employer history as a lookalike seed for outbound unless the user explicitly
230
+ confirms that domain is a target/customer seed or asks for sender-company peers.
231
+ In job-search/application campaigns, lookalike seeds may be existing companies
232
+ from the candidate's current or past employers because those companies define
233
+ the candidate-fit lane. If campaign intent or seed source is ambiguous, ask
234
+ whether the seed should be target/customer domains or current/past employers; if
235
+ YOLO requires moving without a seed, switch to non-lookalike company filters
236
+ instead of inventing a seed. If the user asks for a geography like Germany,
237
+ preserve it in account discovery where supported (`company_location_search` or
238
+ `company_icp.geographic_markets`) and in follow-on people search
239
+ (`person_location_search`); do not drop geography when moving from lookalike
240
+ accounts to people leads.
241
+
223
242
  Prospeo company/account search is useful when the source plan depends on
224
243
  website traffic (`company_website_traffic`), confirmed AI Attributes including
225
244
  `pricing`, `uses_ai`, `has_api`, `has_chrome_extension`, `has_sso`,
@@ -24,13 +24,13 @@
24
24
  "useWhen": [
25
25
  "You want Prospeo filters or domain-based search",
26
26
  "You need company lookalike account discovery before finding people",
27
- "You want companies like X, best-customer lookalikes, or accounts using AI/API/SSO/Chrome extensions",
27
+ "You want companies like X, target-domain, best-customer/top-customer, or job-search employer lookalikes, or accounts using AI/API/SSO/Chrome extensions",
28
28
  "You need companies hiring for specific roles using job-posting filters",
29
29
  "You need high deliverability from Prospeo"
30
30
  ],
31
31
  "avoidWhen": ["You need LinkedIn activity filters"],
32
32
  "reason": "Strong for hiring-led search, company/account lookalikes, Prospeo-specific filters, verified contacts, and domain lists.",
33
- "prose": "Since you're targeting **{icp}**, I'd recommend **Prospeo**.\n\nHere's why:\n- Prospeo can discover lookalike accounts first, then turn approved accounts into a domainFilterId for people search\n- Prospeo can filter for companies hiring specific roles with job-posting filters\n- We can pair those company signals with buyer/referrer titles and verified-contact coverage\n\nFor lookalike accounts, I will show an account sample first; those account rows are not people leads yet. After approval, I will use the companySearchToken to confirm the accounts, then search people at the returned domainFilterId.\n\nShould I search Prospeo for {icp}?"
33
+ "prose": "Since you're targeting **{icp}**, I'd recommend **Prospeo**.\n\nHere's why:\n- Prospeo can discover lookalike accounts first, then turn approved accounts into a domainFilterId for people search\n- Prospeo can filter for companies hiring specific roles with job-posting filters\n- We can pair those company signals with buyer/referrer titles and verified-contact coverage\n\nFor lookalike accounts, I will show an account sample first; those account rows are not people leads yet. After approval, I will use the companySearchToken to confirm the accounts, then search people at the returned domainFilterId. For outbound lookalikes, I will use target/account/customer domains or verified past-customer accounts, not the sender's company. For job-search/application lookalikes, I can use current or past employers as existing-company seeds.\n\nShould I search Prospeo for {icp}?"
34
34
  },
35
35
  "askOption": {
36
36
  "label": "Prospeo",
@@ -99,7 +99,7 @@ Is your ICP LinkedIn-active (founders, sales, marketing, GTM, engineers)?
99
99
  Need hiring-by-role filters? -> Prospeo (has company job-posting filters)
100
100
  Need tech stack targeting? -> Apollo (has technology filters)
101
101
  Have specific company names/domains? -> Sales Navigator for small lists or Prospeo with domainFilterId
102
- Need companies like X, best-customer lookalikes, AI/API/SSO/Chrome extension filters, news/awards/integrations/key customers? -> Prospeo account discovery first
102
+ Need companies like X, target-domain lookalikes, best-customer/top-customer lookalikes, job-search employer lookalikes, AI/API/SSO/Chrome extension filters, news/awards/integrations/key customers? -> Prospeo account discovery first; outbound uses target/account/customer domains or verified past-customer accounts, while job-search/application campaigns can use current/past employers as existing-company seeds
103
103
  ```
104
104
 
105
105
  ## ICP-to-Provider Quick Reference
@@ -188,6 +188,25 @@ Show the account sample first, ask approval, then pass the returned
188
188
  `confirm_prospeo_company_accounts`. The confirmed `domainFilterId` constrains
189
189
  the follow-on people search; account rows are not people leads yet.
190
190
 
191
+ For lookalike seed selection, route by campaign intent. In outbound/sales
192
+ prospecting campaigns, treat "best customer", "top customer", "target domains",
193
+ "approved accounts", "customer domains", and similar wording as target
194
+ account/customer seed asks. Use explicit user-provided target/account/customer
195
+ domains or company names first, then verified past-customer/account evidence from
196
+ research, CRM, or proof. Never substitute the sender's current company/domain or
197
+ employer history as a lookalike seed for outbound unless the user explicitly
198
+ confirms that domain is a target/customer seed or asks for sender-company peers.
199
+ In job-search/application campaigns, lookalike seeds may be existing companies
200
+ from the candidate's current or past employers because those companies define
201
+ the candidate-fit lane. If campaign intent or seed source is ambiguous, ask
202
+ whether the seed should be target/customer domains or current/past employers; if
203
+ YOLO requires moving without a seed, switch to non-lookalike company filters
204
+ instead of inventing a seed. If the user asks for a geography like Germany,
205
+ preserve it in account discovery where supported (`company_location_search` or
206
+ `company_icp.geographic_markets`) and in follow-on people search
207
+ (`person_location_search`); do not drop geography when moving from lookalike
208
+ accounts to people leads.
209
+
191
210
  Before any provider prompt/search/scout call, move the watched campaign to
192
211
  source selection, show `## Find Buyers Plan`, then open `request_user_input`
193
212
  without repeating the URL. The plan must appear before the question and only
@@ -391,6 +391,25 @@ Use first for broad persona expansion, ABM/domain targeting, hiring-led targetin
391
391
  - For companies like X, our best customers, lookalike accounts, companies that use AI, companies with API/SSO/Chrome extension, or
392
392
  news/award/integration/key-customer account filters, use
393
393
  `search_prospeo_companies` before people search.
394
+ - For lookalike seed selection, route by campaign intent. In outbound/sales
395
+ prospecting campaigns, treat "best customer", "top customer", "target
396
+ domains", "approved accounts", "customer domains", and similar wording as
397
+ target account/customer seed asks. Use explicit user-provided
398
+ target/account/customer domains or company names first, then verified
399
+ past-customer/account evidence from research, CRM, or proof. Never substitute
400
+ the sender's current company/domain or employer history as a lookalike seed for
401
+ outbound unless the user explicitly confirms that domain is a target/customer
402
+ seed or asks for sender-company peers. In job-search/application campaigns,
403
+ lookalike seeds may be existing companies from the candidate's current or past
404
+ employers because those companies define the candidate-fit lane. If campaign
405
+ intent or seed source is ambiguous, ask whether the seed should be
406
+ target/customer domains or current/past employers; if YOLO requires moving
407
+ without a seed, switch to non-lookalike company filters instead of inventing a
408
+ seed. If the user asks for a geography like Germany, preserve it in account
409
+ discovery where supported (`company_location_search` or
410
+ `company_icp.geographic_markets`) and in follow-on people search
411
+ (`person_location_search`); do not drop geography when moving from lookalike
412
+ accounts to people leads.
394
413
  - Use Prospeo company/account search when the ask depends on website traffic
395
414
  (`company_website_traffic`), confirmed AI Attributes including `pricing`,
396
415
  `uses_ai`, `has_api`, `has_chrome_extension`, `has_sso`, `has_open_source`,
@@ -87,6 +87,25 @@ backend resolves real Prospeo company IDs. Do not invent company_oids such as
87
87
  placeholder IDs from examples. Only send `company_lookalike.company_oids` when
88
88
  they are real Prospeo company IDs returned by a prior tool/search.
89
89
 
90
+ For lookalike seed selection, route by campaign intent. In outbound/sales
91
+ prospecting campaigns, treat "best customer", "top customer", "target domains",
92
+ "approved accounts", "customer domains", and similar wording as target
93
+ account/customer seed asks. Use explicit user-provided target/account/customer
94
+ domains or company names first, then verified past-customer/account evidence from
95
+ research, CRM, or proof. Never substitute the sender's current company/domain or
96
+ employer history as a lookalike seed for outbound unless the user explicitly
97
+ confirms that domain is a target/customer seed or asks for sender-company peers.
98
+ In job-search/application campaigns, lookalike seeds may be existing companies
99
+ from the candidate's current or past employers because those companies define
100
+ the candidate-fit lane. If campaign intent or seed source is ambiguous, ask
101
+ whether the seed should be target/customer domains or current/past employers; if
102
+ YOLO requires moving without a seed, switch to non-lookalike company filters
103
+ instead of inventing a seed. If the user asks for a geography like Germany,
104
+ preserve it in account discovery where supported (`company_location_search` or
105
+ `company_icp.geographic_markets`) and in follow-on people search
106
+ (`person_location_search`); do not drop geography when moving from lookalike
107
+ accounts to people leads.
108
+
90
109
  For structured ICP sizing, pair `company_icp.company_sizes` with
91
110
  `company_headcount_range` when possible. The MCP normalizer derives headcount
92
111
  ranges for `micro`, `smb`, `midmarket`, `enterprise`, and `large_enterprise`
@@ -109,6 +128,9 @@ Avoidable-400 guardrails:
109
128
  - For seeded company lookalikes, keep the first call simple: seed company/domain + `company_lookalike.minimum_tier` + confirmed attributes, headcount, or industry. Do not add `company_website_search`, `company_keywords`, or `company_icp` until the account sample proves the seed works.
110
129
  - For seeded company lookalikes, do not combine `has_api` and `has_sso` in the first call; start with `has_api` and refine after a valid account sample if SSO still matters.
111
130
  - Do not send placeholder seed names such as `another approved best-customer seed`; use only concrete company names or domains you have actually resolved.
131
+ - Do not silently use the sender company as a customer lookalike seed for
132
+ outbound; use explicit target/account/customer domains or verified
133
+ past-customer evidence instead.
112
134
  - If the user references another approved seed but does not name it, ask for the
113
135
  seed or run a one-seed lookalike without `match_all`; do not invent a second
114
136
  seed from examples, competitors, or exclusions.
@@ -275,6 +297,14 @@ Preference rules:
275
297
  - Run `company_key_customers` as a standalone first-pass filter. Do not combine `company_key_customers` with ICP, website-search, keyword, attribute, industry, or headcount filters until the standalone pass proves useful.
276
298
  - For seeded lookalikes, avoid first-call `company_website_search`, `company_keywords`, and `company_icp`; use resolved seeds plus lookalike tier and simple attributes/headcount/industry first.
277
299
  - For seeded lookalikes, avoid first-call `has_api` + `has_sso`; use one confirmed attribute first, then refine.
300
+ - For outbound customer, best-customer, or top-customer lookalikes, never use the
301
+ sender's current company/domain as a silent substitute; use explicit
302
+ target/account/customer domains or verified past-customer evidence. For
303
+ job-search/application campaigns, current/past employers may be the lookalike
304
+ seeds because the campaign is about finding similar employers.
305
+ - If the user gives geography like Germany, keep that geography in the company
306
+ discovery or follow-on people filters instead of dropping it after account
307
+ confirmation.
278
308
  - Do not invent missing approved seeds. If a second seed is not named, ask for it
279
309
  or run one seed without `match_all`.
280
310
  - Prefer `seedDomains` for single-seed lookalikes. For multi-seed `match_all`