@coldiq/mcp 0.4.4 → 0.4.6
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/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +27 -103
- package/dist/registry.js.map +1 -1
- package/dist/utils/provider-resolver.d.ts.map +1 -1
- package/dist/utils/provider-resolver.js +4 -10
- package/dist/utils/provider-resolver.js.map +1 -1
- package/dist/utils/selection-insight.d.ts.map +1 -1
- package/dist/utils/selection-insight.js +6 -8
- package/dist/utils/selection-insight.js.map +1 -1
- package/package.json +1 -1
- package/src/registry.ts +28 -99
- package/src/utils/provider-resolver.ts +4 -10
- package/src/utils/selection-insight.ts +6 -8
- package/tests/provider-availability.test.ts +4 -4
- package/tests/registry-polling.test.ts +4 -4
- package/tests/registry.test.ts +32 -81
- package/tests/tools/list-data-sources.test.ts +1 -1
- package/tests/utils/provider-resolver.test.ts +7 -7
- package/tests/utils/selection-insight.test.ts +2 -2
|
@@ -25,7 +25,7 @@ describe('list_data_sources handler', () => {
|
|
|
25
25
|
expect(names).toContain('TheirStack')
|
|
26
26
|
|
|
27
27
|
const emails = rowFor(caps, 'find_email')!
|
|
28
|
-
expect(emails.sources.map((s) => s.name)).toContain('
|
|
28
|
+
expect(emails.sources.map((s) => s.name)).toContain('Wiza')
|
|
29
29
|
})
|
|
30
30
|
|
|
31
31
|
it('never emits a raw slug or "Apify" in any source name', async () => {
|
|
@@ -79,11 +79,11 @@ describe('resolvePreferredProviders', () => {
|
|
|
79
79
|
|
|
80
80
|
describe('Scenario C — gated provider', () => {
|
|
81
81
|
it('requires gate: message says "requires X, which wasn\'t provided"', () => {
|
|
82
|
-
//
|
|
83
|
-
const r = resolvePreferredProviders('find_email', { first_name: 'Michel', domain: 'coldiq.com' }, ['
|
|
82
|
+
// wiza for find_email requires linkedin_url or full name + company signal
|
|
83
|
+
const r = resolvePreferredProviders('find_email', { first_name: 'Michel', domain: 'coldiq.com' }, ['wiza'])
|
|
84
84
|
expect(r.ok).toBe(false)
|
|
85
85
|
if (!r.ok) {
|
|
86
|
-
expect(r.error.error).toContain("'
|
|
86
|
+
expect(r.error.error).toContain("'wiza' requires linkedin_url or (first_name, last_name, and domain/company_name), which wasn't provided")
|
|
87
87
|
expect(r.error.error).toContain('ColdIQ will automatically pick the best tool')
|
|
88
88
|
}
|
|
89
89
|
})
|
|
@@ -104,14 +104,14 @@ describe('resolvePreferredProviders', () => {
|
|
|
104
104
|
})
|
|
105
105
|
|
|
106
106
|
it('succeeds when gated provider inputs are satisfied', () => {
|
|
107
|
-
//
|
|
107
|
+
// wiza accepts a linkedin_url alone
|
|
108
108
|
const r = resolvePreferredProviders(
|
|
109
109
|
'find_email',
|
|
110
110
|
{ linkedin_url: 'https://www.linkedin.com/in/michel-lieben' },
|
|
111
|
-
['
|
|
111
|
+
['wiza'],
|
|
112
112
|
)
|
|
113
113
|
expect(r.ok).toBe(true)
|
|
114
|
-
if (r.ok) expect(r.providers).toEqual(['
|
|
114
|
+
if (r.ok) expect(r.providers).toEqual(['wiza'])
|
|
115
115
|
})
|
|
116
116
|
})
|
|
117
117
|
|
|
@@ -138,7 +138,7 @@ describe('resolvePreferredProviders', () => {
|
|
|
138
138
|
})
|
|
139
139
|
|
|
140
140
|
it('errors for provider not in find_emails', () => {
|
|
141
|
-
const r = resolvePreferredProviders('find_emails', {}, ['
|
|
141
|
+
const r = resolvePreferredProviders('find_emails', {}, ['fullenrich'])
|
|
142
142
|
expect(r.ok).toBe(false)
|
|
143
143
|
})
|
|
144
144
|
})
|
|
@@ -35,11 +35,11 @@ describe('buildSelectionInsight', () => {
|
|
|
35
35
|
it('states coverage without claiming it was the upfront best fit', () => {
|
|
36
36
|
const r = buildSelectionInsight(
|
|
37
37
|
'find_email',
|
|
38
|
-
'
|
|
38
|
+
'limadata-work-email',
|
|
39
39
|
{ domain: 'coldiq.com', first_name: 'Michel' },
|
|
40
40
|
{ wasFallback: true, pinnedByUser: false },
|
|
41
41
|
)
|
|
42
|
-
expect(r!.insight).toContain('
|
|
42
|
+
expect(r!.insight).toContain('Lima Data')
|
|
43
43
|
expect(r!.insight).toContain('returned the match here')
|
|
44
44
|
// never the confident "Routed to" framing on a fallthrough
|
|
45
45
|
expect(r!.insight.startsWith('Routed to')).toBe(false)
|