@sellable/mcp 0.1.232 → 0.1.233

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
+ For customer, best-customer, top-customer, or past-company lookalikes, never substitute the sender's current company or domain as a lookalike seed and never use the sender's current company/domain as a silent substitute. Use explicit customer/account/company/domain input first, then verified customer/worked-with/past-company evidence from research/proof, then ask for the missing seed or switch to non-lookalike company filters if YOLO requires moving without a seed. Label profile/work-history seeds as past-company/public proof clues, not confirmed customers unless the source proves customer status. 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
+ "For best-customer, top-customer, customer, or past-company lookalikes, never substitute the sender's current company/domain as the seed unless current-company peers were explicitly requested; use explicit or verified customer/account/past-company seeds and 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.233",
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,23 @@ 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, treat "best customer", "top customer", "past
224
+ companies", "companies I worked with", and similar wording as customer/account
225
+ or past-company seed asks. Never substitute the sender's current company or
226
+ domain as a lookalike seed; never use the sender's current company/domain as a
227
+ silent substitute unless the user explicitly asks for companies like the current
228
+ employer, sender company, or its direct peers/competitors. Seed priority is:
229
+ explicit user-provided customer/account/company/domain; verified
230
+ customer/worked-with/past-company evidence from research/proof; then ask for the
231
+ missing seed or switch to non-lookalike company filters if YOLO requires moving
232
+ without a seed. If using profile/work-history seeds, label them as
233
+ past-company/public proof clues, not confirmed customers unless the source proves
234
+ customer status. If the user asks for a geography like Germany, preserve it in
235
+ account discovery where supported (`company_location_search` or
236
+ `company_icp.geographic_markets`) and in follow-on people search
237
+ (`person_location_search`); do not drop geography when moving from lookalike
238
+ accounts to people leads.
239
+
223
240
  Prospeo company/account search is useful when the source plan depends on
224
241
  website traffic (`company_website_traffic`), confirmed AI Attributes including
225
242
  `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, best-customer/top-customer/past-company 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 best-customer, top-customer, or past-company lookalikes, I will use explicit customer/account/past-company seeds, not the sender's current company, unless you explicitly ask for current-company peers.\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, best-customer/top-customer/past-company lookalikes, AI/API/SSO/Chrome extension filters, news/awards/integrations/key customers? -> Prospeo account discovery first; use explicit customer/account/past-company seeds, not the sender's current company unless current-company peers were requested
103
103
  ```
104
104
 
105
105
  ## ICP-to-Provider Quick Reference
@@ -188,6 +188,23 @@ 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, treat "best customer", "top customer", "past
192
+ companies", "companies I worked with", and similar wording as customer/account
193
+ or past-company seed asks. Never substitute the sender's current company or
194
+ domain as a lookalike seed; never use the sender's current company/domain as a
195
+ silent substitute unless the user explicitly asks for companies like the current
196
+ employer, sender company, or its direct peers/competitors. Seed priority is:
197
+ explicit user-provided customer/account/company/domain; verified
198
+ customer/worked-with/past-company evidence from research/proof; then ask for the
199
+ missing seed or switch to non-lookalike company filters if YOLO requires moving
200
+ without a seed. If using profile/work-history seeds, label them as
201
+ past-company/public proof clues, not confirmed customers unless the source proves
202
+ customer status. If the user asks for a geography like Germany, preserve it in
203
+ account discovery where supported (`company_location_search` or
204
+ `company_icp.geographic_markets`) and in follow-on people search
205
+ (`person_location_search`); do not drop geography when moving from lookalike
206
+ accounts to people leads.
207
+
191
208
  Before any provider prompt/search/scout call, move the watched campaign to
192
209
  source selection, show `## Find Buyers Plan`, then open `request_user_input`
193
210
  without repeating the URL. The plan must appear before the question and only
@@ -391,6 +391,22 @@ 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, treat "best customer", "top customer", "past
395
+ companies", "companies I worked with", and similar wording as
396
+ customer/account or past-company seed asks. Never substitute the sender's
397
+ current company or domain as a lookalike seed; never use the sender's current
398
+ company/domain as a silent substitute unless the user explicitly asks for
399
+ companies like the current employer, sender company, or its direct
400
+ peers/competitors. Seed priority is: explicit user-provided
401
+ customer/account/company/domain; verified customer/worked-with/past-company
402
+ evidence from research/proof; then ask for the missing seed or switch to
403
+ non-lookalike company filters if YOLO requires moving without a seed. If using
404
+ profile/work-history seeds, label them as past-company/public proof clues, not
405
+ confirmed customers unless the source proves customer status. If the user asks
406
+ for a geography like Germany, preserve it in account discovery where supported
407
+ (`company_location_search` or `company_icp.geographic_markets`) and in
408
+ follow-on people search (`person_location_search`); do not drop geography when
409
+ moving from lookalike accounts to people leads.
394
410
  - Use Prospeo company/account search when the ask depends on website traffic
395
411
  (`company_website_traffic`), confirmed AI Attributes including `pricing`,
396
412
  `uses_ai`, `has_api`, `has_chrome_extension`, `has_sso`, `has_open_source`,
@@ -87,6 +87,23 @@ 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, treat "best customer", "top customer", "past
91
+ companies", "companies I worked with", and similar wording as customer/account
92
+ or past-company seed asks. Never substitute the sender's current company/domain
93
+ as a lookalike seed, and never use the sender's current company/domain as a
94
+ silent substitute unless the user explicitly asks for companies like the current
95
+ employer, sender company, or its direct peers/competitors. Seed priority is:
96
+ explicit user-provided customer/account/company/domain; verified
97
+ customer/worked-with/past-company evidence from research/proof; then ask for the
98
+ missing seed or switch to non-lookalike company filters if YOLO requires moving
99
+ without a seed. If using profile/work-history seeds, label them as
100
+ past-company/public proof clues, not confirmed customers unless the source proves
101
+ customer status. If the user asks for a geography like Germany, preserve it in
102
+ account discovery where supported (`company_location_search` or
103
+ `company_icp.geographic_markets`) and in follow-on people search
104
+ (`person_location_search`); do not drop geography when moving from lookalike
105
+ accounts to people leads.
106
+
90
107
  For structured ICP sizing, pair `company_icp.company_sizes` with
91
108
  `company_headcount_range` when possible. The MCP normalizer derives headcount
92
109
  ranges for `micro`, `smb`, `midmarket`, `enterprise`, and `large_enterprise`
@@ -109,6 +126,8 @@ Avoidable-400 guardrails:
109
126
  - 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
127
  - 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
128
  - Do not send placeholder seed names such as `another approved best-customer seed`; use only concrete company names or domains you have actually resolved.
129
+ - Do not silently use the sender company as a customer lookalike seed; use
130
+ explicit customer/account/past-company evidence instead.
112
131
  - If the user references another approved seed but does not name it, ask for the
113
132
  seed or run a one-seed lookalike without `match_all`; do not invent a second
114
133
  seed from examples, competitors, or exclusions.
@@ -275,6 +294,13 @@ Preference rules:
275
294
  - 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
295
  - 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
296
  - For seeded lookalikes, avoid first-call `has_api` + `has_sso`; use one confirmed attribute first, then refine.
297
+ - For customer, best-customer, top-customer, or past-company lookalikes, never
298
+ use the sender's current company/domain as a silent substitute; use explicit
299
+ customer/account/past-company evidence, then label profile-derived seeds as
300
+ past-company/public proof clues unless customer status is verified.
301
+ - If the user gives geography like Germany, keep that geography in the company
302
+ discovery or follow-on people filters instead of dropping it after account
303
+ confirmation.
278
304
  - Do not invent missing approved seeds. If a second seed is not named, ask for it
279
305
  or run one seed without `match_all`.
280
306
  - Prefer `seedDomains` for single-seed lookalikes. For multi-seed `match_all`