attio-mcp 1.1.1 → 1.1.3

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.
Files changed (84) hide show
  1. package/CHANGELOG.md +31 -0
  2. package/README.md +3 -2
  3. package/dist/api/client-context.d.ts.map +1 -1
  4. package/dist/api/client-context.js +39 -1
  5. package/dist/api/client-context.js.map +1 -1
  6. package/dist/api/operations/search.d.ts +5 -2
  7. package/dist/api/operations/search.d.ts.map +1 -1
  8. package/dist/api/operations/search.js +469 -9
  9. package/dist/api/operations/search.js.map +1 -1
  10. package/dist/handlers/tool-configs/openai/index.d.ts +2 -2
  11. package/dist/handlers/tool-configs/openai/index.d.ts.map +1 -1
  12. package/dist/handlers/tool-configs/openai/index.js +13 -2
  13. package/dist/handlers/tool-configs/openai/index.js.map +1 -1
  14. package/dist/handlers/tool-configs/universal/core/crud-operations.d.ts.map +1 -1
  15. package/dist/handlers/tool-configs/universal/core/crud-operations.js +22 -3
  16. package/dist/handlers/tool-configs/universal/core/crud-operations.js.map +1 -1
  17. package/dist/handlers/tool-configs/universal/index.d.ts +26 -2
  18. package/dist/handlers/tool-configs/universal/index.d.ts.map +1 -1
  19. package/dist/handlers/tool-configs/universal/index.js +10 -1
  20. package/dist/handlers/tool-configs/universal/index.js.map +1 -1
  21. package/dist/handlers/tool-configs/universal/smithery-diagnostics.d.ts +37 -0
  22. package/dist/handlers/tool-configs/universal/smithery-diagnostics.d.ts.map +1 -0
  23. package/dist/handlers/tool-configs/universal/smithery-diagnostics.js +103 -0
  24. package/dist/handlers/tool-configs/universal/smithery-diagnostics.js.map +1 -0
  25. package/dist/handlers/tools/registry.d.ts +26 -2
  26. package/dist/handlers/tools/registry.d.ts.map +1 -1
  27. package/dist/objects/deals/index.d.ts +1 -0
  28. package/dist/objects/deals/index.d.ts.map +1 -1
  29. package/dist/objects/deals/index.js +2 -0
  30. package/dist/objects/deals/index.js.map +1 -1
  31. package/dist/objects/deals/search.d.ts +16 -0
  32. package/dist/objects/deals/search.d.ts.map +1 -0
  33. package/dist/objects/deals/search.js +59 -0
  34. package/dist/objects/deals/search.js.map +1 -0
  35. package/dist/server/createServer.d.ts.map +1 -1
  36. package/dist/server/createServer.js +27 -4
  37. package/dist/server/createServer.js.map +1 -1
  38. package/dist/services/CachingService.d.ts +57 -0
  39. package/dist/services/CachingService.d.ts.map +1 -1
  40. package/dist/services/CachingService.js +112 -0
  41. package/dist/services/CachingService.js.map +1 -1
  42. package/dist/services/UniversalSearchService.d.ts +0 -12
  43. package/dist/services/UniversalSearchService.d.ts.map +1 -1
  44. package/dist/services/UniversalSearchService.js +19 -133
  45. package/dist/services/UniversalSearchService.js.map +1 -1
  46. package/dist/services/search-strategies/CompanySearchStrategy.d.ts.map +1 -1
  47. package/dist/services/search-strategies/CompanySearchStrategy.js +13 -11
  48. package/dist/services/search-strategies/CompanySearchStrategy.js.map +1 -1
  49. package/dist/services/search-strategies/DealSearchStrategy.d.ts +38 -0
  50. package/dist/services/search-strategies/DealSearchStrategy.d.ts.map +1 -0
  51. package/dist/services/search-strategies/DealSearchStrategy.js +119 -0
  52. package/dist/services/search-strategies/DealSearchStrategy.js.map +1 -0
  53. package/dist/services/search-strategies/NoteSearchStrategy.d.ts +62 -0
  54. package/dist/services/search-strategies/NoteSearchStrategy.d.ts.map +1 -0
  55. package/dist/services/search-strategies/NoteSearchStrategy.js +224 -0
  56. package/dist/services/search-strategies/NoteSearchStrategy.js.map +1 -0
  57. package/dist/services/search-strategies/PeopleSearchStrategy.d.ts.map +1 -1
  58. package/dist/services/search-strategies/PeopleSearchStrategy.js +13 -15
  59. package/dist/services/search-strategies/PeopleSearchStrategy.js.map +1 -1
  60. package/dist/services/search-strategies/index.d.ts +2 -0
  61. package/dist/services/search-strategies/index.d.ts.map +1 -1
  62. package/dist/services/search-strategies/index.js +2 -0
  63. package/dist/services/search-strategies/index.js.map +1 -1
  64. package/dist/services/search-strategies/interfaces.d.ts +6 -0
  65. package/dist/services/search-strategies/interfaces.d.ts.map +1 -1
  66. package/dist/services/search-utilities/SearchScorer.d.ts +4 -0
  67. package/dist/services/search-utilities/SearchScorer.d.ts.map +1 -0
  68. package/dist/services/search-utilities/SearchScorer.js +243 -0
  69. package/dist/services/search-utilities/SearchScorer.js.map +1 -0
  70. package/dist/services/search-utilities/SearchUtilities.d.ts +5 -0
  71. package/dist/services/search-utilities/SearchUtilities.d.ts.map +1 -1
  72. package/dist/services/search-utilities/SearchUtilities.js +20 -0
  73. package/dist/services/search-utilities/SearchUtilities.js.map +1 -1
  74. package/dist/smithery.d.ts +1 -1
  75. package/dist/smithery.d.ts.map +1 -1
  76. package/dist/smithery.js +45 -11
  77. package/dist/smithery.js.map +1 -1
  78. package/dist/utils/client-resolver.d.ts.map +1 -1
  79. package/dist/utils/client-resolver.js +30 -2
  80. package/dist/utils/client-resolver.js.map +1 -1
  81. package/dist/utils/mcp-discovery.d.ts.map +1 -1
  82. package/dist/utils/mcp-discovery.js +19 -1
  83. package/dist/utils/mcp-discovery.js.map +1 -1
  84. package/package.json +5 -1
@@ -26,17 +26,42 @@ function assertAxiosInstance(value, source) {
26
26
  */
27
27
  export function resolveAttioClient() {
28
28
  const mod = AttioClientModule;
29
- const resolvedApiKey = process.env.ATTIO_API_KEY || getContextApiKey();
29
+ const contextApiKey = getContextApiKey();
30
+ const envApiKey = process.env.ATTIO_API_KEY;
31
+ const resolvedApiKey = envApiKey || contextApiKey;
32
+ // Debug logging for Issue #891: Track API key resolution
33
+ if (process.env.MCP_LOG_LEVEL === 'DEBUG') {
34
+ console.error('[client-resolver:resolve] API key resolution:', {
35
+ hasEnvApiKey: Boolean(envApiKey),
36
+ envKeyLength: envApiKey?.length || 0,
37
+ hasContextApiKey: Boolean(contextApiKey),
38
+ contextKeyLength: contextApiKey?.length || 0,
39
+ resolved: Boolean(resolvedApiKey),
40
+ resolvedKeyLength: resolvedApiKey?.length || 0,
41
+ source: resolvedApiKey === envApiKey
42
+ ? 'env'
43
+ : resolvedApiKey === contextApiKey
44
+ ? 'context'
45
+ : 'none',
46
+ timestamp: new Date().toISOString(),
47
+ });
48
+ }
30
49
  // Try unified createAttioClient with config (new interface)
31
50
  if (typeof mod.createAttioClient === 'function') {
32
51
  try {
33
52
  // If we have an API key, prefer the legacy string signature for backward compatibility
34
53
  if (resolvedApiKey) {
54
+ if (process.env.MCP_LOG_LEVEL === 'DEBUG') {
55
+ console.error('[client-resolver:resolve] Creating client with API key');
56
+ }
35
57
  const client = mod.createAttioClient(resolvedApiKey);
36
58
  assertAxiosInstance(client, 'createAttioClient(apiKey)');
37
59
  return client;
38
60
  }
39
61
  else {
62
+ if (process.env.MCP_LOG_LEVEL === 'DEBUG') {
63
+ console.error('[client-resolver:resolve] Creating client without API key (will fail on first request)');
64
+ }
40
65
  // Use config object (new unified interface)
41
66
  const config = {};
42
67
  const client = mod.createAttioClient(config);
@@ -44,7 +69,10 @@ export function resolveAttioClient() {
44
69
  return client;
45
70
  }
46
71
  }
47
- catch {
72
+ catch (error) {
73
+ if (process.env.MCP_LOG_LEVEL === 'DEBUG') {
74
+ console.error('[client-resolver:resolve] createAttioClient failed:', error);
75
+ }
48
76
  // Continue to fallback methods
49
77
  }
50
78
  }
@@ -1 +1 @@
1
- {"version":3,"file":"client-resolver.js","sourceRoot":"","sources":["../../src/utils/client-resolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client-resolver.js","sourceRoot":"","sources":["../../src/utils/client-resolver.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-discovery.d.ts","sourceRoot":"","sources":["../../src/utils/mcp-discovery.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAE/D,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,IAAI,EAAE,CAAC;CACf;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,aAAa,EAAE,CAAC;CAC1B;AAuBD,wBAAgB,mBAAmB,IAAI,gBAAgB,CAItD;AAED,wBAAgB,qBAAqB,IAAI,kBAAkB,CAU1D"}
1
+ {"version":3,"file":"mcp-discovery.d.ts","sourceRoot":"","sources":["../../src/utils/mcp-discovery.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AA6B/D,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,IAAI,EAAE,CAAC;CACf;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,aAAa,EAAE,CAAC;CAC1B;AAwBD,wBAAgB,mBAAmB,IAAI,gBAAgB,CAItD;AAED,wBAAgB,qBAAqB,IAAI,kBAAkB,CAU1D"}
@@ -1,6 +1,23 @@
1
1
  import { TOOL_DEFINITIONS } from '../handlers/tools/registry.js';
2
2
  import { filterAllowedTools } from '../config/tool-mode.js';
3
3
  import { getAllPrompts } from '../prompts/templates/index.js';
4
+ const WRITE_TOOL_PATTERN = /(create|update|delete|remove|add|batch|commit|write)/i;
5
+ function ensureAnnotations(tool) {
6
+ const typedTool = tool;
7
+ const annotations = {
8
+ ...(typedTool.annotations ?? {}),
9
+ };
10
+ if (annotations.readOnlyHint === undefined) {
11
+ annotations.readOnlyHint = !WRITE_TOOL_PATTERN.test(tool.name);
12
+ }
13
+ if (annotations.openWorldHint === undefined) {
14
+ annotations.openWorldHint = true;
15
+ }
16
+ return {
17
+ ...tool,
18
+ annotations,
19
+ };
20
+ }
4
21
  function flattenToolDefinitions() {
5
22
  const allTools = [];
6
23
  for (const toolDefs of Object.values(TOOL_DEFINITIONS)) {
@@ -15,7 +32,8 @@ function flattenToolDefinitions() {
15
32
  allTools.push(...Object.values(toolDefs));
16
33
  }
17
34
  }
18
- return filterAllowedTools(allTools);
35
+ const allowed = filterAllowedTools(allTools);
36
+ return allowed.map((tool) => ensureAnnotations(tool));
19
37
  }
20
38
  export function getToolsListPayload() {
21
39
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-discovery.js","sourceRoot":"","sources":["../../src/utils/mcp-discovery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAkB7D,SAAS,sBAAsB;IAC7B,MAAM,QAAQ,GAAW,EAAE,CAAC;IAE5B,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACvD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,SAAS;QACX,CAAC;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,QAAQ,CAAC,IAAI,CAAC,GAAI,QAAmB,CAAC,CAAC;YACvC,SAAS;QACX,CAAC;QAED,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACjC,QAAQ,CAAC,IAAI,CAAC,GAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAY,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAED,OAAO,kBAAkB,CAAC,QAAQ,CAAW,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,mBAAmB;IACjC,OAAO;QACL,KAAK,EAAE,sBAAsB,EAAE;KAChC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB;IACnC,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;IAChC,OAAO;QACL,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YAChC,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,IAAI,EAAE,MAAM,CAAC,KAAK;YAClB,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,QAAQ,EAAE,MAAM,CAAC,QAAQ;SAC1B,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"mcp-discovery.js","sourceRoot":"","sources":["../../src/utils/mcp-discovery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAO7D,MAAM,kBAAkB,GACtB,uDAAuD,CAAC;AAE1D,SAAS,iBAAiB,CAAC,IAAU;IACnC,MAAM,SAAS,GAAG,IAA2B,CAAC;IAC9C,MAAM,WAAW,GAA4B;QAC3C,GAAG,CAAC,SAAS,CAAC,WAAW,IAAI,EAAE,CAAC;KACjC,CAAC;IAEF,IAAI,WAAW,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QAC3C,WAAW,CAAC,YAAY,GAAG,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjE,CAAC;IAED,IAAI,WAAW,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;QAC5C,WAAW,CAAC,aAAa,GAAG,IAAI,CAAC;IACnC,CAAC;IAED,OAAO;QACL,GAAG,IAAI;QACP,WAAW;KACJ,CAAC;AACZ,CAAC;AAiBD,SAAS,sBAAsB;IAC7B,MAAM,QAAQ,GAAW,EAAE,CAAC;IAE5B,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACvD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,SAAS;QACX,CAAC;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,QAAQ,CAAC,IAAI,CAAC,GAAI,QAAmB,CAAC,CAAC;YACvC,SAAS;QACX,CAAC;QAED,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACjC,QAAQ,CAAC,IAAI,CAAC,GAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAY,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAG,kBAAkB,CAAC,QAAQ,CAAW,CAAC;IACvD,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,mBAAmB;IACjC,OAAO;QACL,KAAK,EAAE,sBAAsB,EAAE;KAChC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB;IACnC,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;IAChC,OAAO;QACL,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YAChC,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,IAAI,EAAE,MAAM,CAAC,KAAK;YAClB,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,QAAQ,EAAE,MAAM,CAAC,QAAQ;SAC1B,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,8 @@
1
1
  {
2
2
  "name": "attio-mcp",
3
- "version": "1.1.1",
3
+ "version": "1.1.3",
4
4
  "description": "AI-powered access to Attio CRM. Manage contacts, companies, deals, tasks, and notes. Search records, update pipelines, and automate workflows for sales and GTM teams.",
5
+ "mcpName": "io.github.kesslerio/attio-mcp-server",
5
6
  "main": "dist/smithery.js",
6
7
  "module": "src/smithery.ts",
7
8
  "type": "module",
@@ -76,6 +77,7 @@
76
77
  "perf:monitor": "node scripts/performance-monitor.cjs",
77
78
  "perf:report": "npm run test:performance -- --reporter=json > performance-results.json",
78
79
  "perf:budgets": "node scripts/check-performance-budgets.cjs",
80
+ "test:attio-operators": "tsx scripts/test-attio-operators.mjs",
79
81
  "check:offline": "tsc --project configs/tsconfig/tsconfig.offline.json --noEmit",
80
82
  "analyze:token-footprint": "tsx scripts/analyze-token-footprint.ts",
81
83
  "migrate-config": "node scripts/migrate-user-config.js",
@@ -189,6 +191,7 @@
189
191
  "homepage": "https://github.com/kesslerio/attio-mcp-server#readme",
190
192
  "dependencies": {
191
193
  "@dqbd/tiktoken": "^1.0.15",
194
+ "@leeoniya/ufuzzy": "^1.0.14",
192
195
  "@modelcontextprotocol/sdk": "^1.4.1",
193
196
  "@smithery/sdk": "^1.6.6",
194
197
  "chalk": "^5.3.0",
@@ -198,6 +201,7 @@
198
201
  "fast-safe-stringify": "^2.1.1",
199
202
  "handlebars": "^4.7.8",
200
203
  "libphonenumber-js": "^1.12.16",
204
+ "lru-cache": "^11.2.2",
201
205
  "ora": "^7.0.1",
202
206
  "safe-stable-stringify": "^2.5.0",
203
207
  "sanitize-html": "^2.17.0",