elevenlabs-voice-agent-mcp 1.0.14 → 1.1.0

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 (158) hide show
  1. package/README.md +202 -23
  2. package/dist/__tests__/mocks/fixtures.d.ts +136 -0
  3. package/dist/__tests__/mocks/fixtures.d.ts.map +1 -0
  4. package/dist/__tests__/mocks/fixtures.js +393 -0
  5. package/dist/__tests__/mocks/fixtures.js.map +1 -0
  6. package/dist/__tests__/schemas/schemas.test.d.ts +7 -0
  7. package/dist/__tests__/schemas/schemas.test.d.ts.map +1 -0
  8. package/dist/__tests__/schemas/schemas.test.js +537 -0
  9. package/dist/__tests__/schemas/schemas.test.js.map +1 -0
  10. package/dist/__tests__/services/elevenlabs-api.test.d.ts +7 -0
  11. package/dist/__tests__/services/elevenlabs-api.test.d.ts.map +1 -0
  12. package/dist/__tests__/services/elevenlabs-api.test.js +272 -0
  13. package/dist/__tests__/services/elevenlabs-api.test.js.map +1 -0
  14. package/dist/__tests__/services/formatters.test.d.ts +7 -0
  15. package/dist/__tests__/services/formatters.test.d.ts.map +1 -0
  16. package/dist/__tests__/services/formatters.test.js +387 -0
  17. package/dist/__tests__/services/formatters.test.js.map +1 -0
  18. package/dist/__tests__/setup.d.ts +7 -0
  19. package/dist/__tests__/setup.d.ts.map +1 -0
  20. package/dist/__tests__/setup.js +25 -0
  21. package/dist/__tests__/setup.js.map +1 -0
  22. package/dist/__tests__/tools/agent-tools.test.d.ts +7 -0
  23. package/dist/__tests__/tools/agent-tools.test.d.ts.map +1 -0
  24. package/dist/__tests__/tools/agent-tools.test.js +343 -0
  25. package/dist/__tests__/tools/agent-tools.test.js.map +1 -0
  26. package/dist/__tests__/tools/batch-calling-tools.test.d.ts +7 -0
  27. package/dist/__tests__/tools/batch-calling-tools.test.d.ts.map +1 -0
  28. package/dist/__tests__/tools/batch-calling-tools.test.js +236 -0
  29. package/dist/__tests__/tools/batch-calling-tools.test.js.map +1 -0
  30. package/dist/__tests__/tools/conversation-tools.test.d.ts +7 -0
  31. package/dist/__tests__/tools/conversation-tools.test.d.ts.map +1 -0
  32. package/dist/__tests__/tools/conversation-tools.test.js +212 -0
  33. package/dist/__tests__/tools/conversation-tools.test.js.map +1 -0
  34. package/dist/__tests__/tools/knowledge-tools.test.d.ts +7 -0
  35. package/dist/__tests__/tools/knowledge-tools.test.d.ts.map +1 -0
  36. package/dist/__tests__/tools/knowledge-tools.test.js +209 -0
  37. package/dist/__tests__/tools/knowledge-tools.test.js.map +1 -0
  38. package/dist/__tests__/tools/outbound-tools.test.d.ts +7 -0
  39. package/dist/__tests__/tools/outbound-tools.test.d.ts.map +1 -0
  40. package/dist/__tests__/tools/outbound-tools.test.js +194 -0
  41. package/dist/__tests__/tools/outbound-tools.test.js.map +1 -0
  42. package/dist/__tests__/tools/phone-number-tools.test.d.ts +7 -0
  43. package/dist/__tests__/tools/phone-number-tools.test.d.ts.map +1 -0
  44. package/dist/__tests__/tools/phone-number-tools.test.js +314 -0
  45. package/dist/__tests__/tools/phone-number-tools.test.js.map +1 -0
  46. package/dist/__tests__/tools/tool-tools.test.d.ts +7 -0
  47. package/dist/__tests__/tools/tool-tools.test.d.ts.map +1 -0
  48. package/dist/__tests__/tools/tool-tools.test.js +287 -0
  49. package/dist/__tests__/tools/tool-tools.test.js.map +1 -0
  50. package/dist/__tests__/tools/utility-tools.test.d.ts +7 -0
  51. package/dist/__tests__/tools/utility-tools.test.d.ts.map +1 -0
  52. package/dist/__tests__/tools/utility-tools.test.js +207 -0
  53. package/dist/__tests__/tools/utility-tools.test.js.map +1 -0
  54. package/dist/__tests__/utils/error-handlers.test.d.ts +7 -0
  55. package/dist/__tests__/utils/error-handlers.test.d.ts.map +1 -0
  56. package/dist/__tests__/utils/error-handlers.test.js +237 -0
  57. package/dist/__tests__/utils/error-handlers.test.js.map +1 -0
  58. package/dist/__tests__/utils/phone-normalizer.test.d.ts +7 -0
  59. package/dist/__tests__/utils/phone-normalizer.test.d.ts.map +1 -0
  60. package/dist/__tests__/utils/phone-normalizer.test.js +224 -0
  61. package/dist/__tests__/utils/phone-normalizer.test.js.map +1 -0
  62. package/dist/__tests__/utils/truncation.test.d.ts +7 -0
  63. package/dist/__tests__/utils/truncation.test.d.ts.map +1 -0
  64. package/dist/__tests__/utils/truncation.test.js +208 -0
  65. package/dist/__tests__/utils/truncation.test.js.map +1 -0
  66. package/dist/constants.d.ts +129 -5
  67. package/dist/constants.d.ts.map +1 -1
  68. package/dist/constants.js +150 -24
  69. package/dist/constants.js.map +1 -1
  70. package/dist/index.d.ts +13 -2
  71. package/dist/index.d.ts.map +1 -1
  72. package/dist/index.js +27 -3
  73. package/dist/index.js.map +1 -1
  74. package/dist/schemas/agent-schemas.d.ts +23 -8
  75. package/dist/schemas/agent-schemas.d.ts.map +1 -1
  76. package/dist/schemas/agent-schemas.js +23 -8
  77. package/dist/schemas/agent-schemas.js.map +1 -1
  78. package/dist/schemas/batch-calling-schemas.d.ts +24 -9
  79. package/dist/schemas/batch-calling-schemas.d.ts.map +1 -1
  80. package/dist/schemas/batch-calling-schemas.js +24 -9
  81. package/dist/schemas/batch-calling-schemas.js.map +1 -1
  82. package/dist/schemas/common-schemas.d.ts +45 -13
  83. package/dist/schemas/common-schemas.d.ts.map +1 -1
  84. package/dist/schemas/common-schemas.js +45 -13
  85. package/dist/schemas/common-schemas.js.map +1 -1
  86. package/dist/schemas/conversation-schemas.d.ts +12 -5
  87. package/dist/schemas/conversation-schemas.d.ts.map +1 -1
  88. package/dist/schemas/conversation-schemas.js +12 -5
  89. package/dist/schemas/conversation-schemas.js.map +1 -1
  90. package/dist/schemas/outbound-schemas.d.ts +23 -8
  91. package/dist/schemas/outbound-schemas.d.ts.map +1 -1
  92. package/dist/schemas/outbound-schemas.js +23 -8
  93. package/dist/schemas/outbound-schemas.js.map +1 -1
  94. package/dist/schemas/phone-number-schemas.d.ts +37 -14
  95. package/dist/schemas/phone-number-schemas.d.ts.map +1 -1
  96. package/dist/schemas/phone-number-schemas.js +37 -14
  97. package/dist/schemas/phone-number-schemas.js.map +1 -1
  98. package/dist/schemas/tool-schemas.d.ts +27 -9
  99. package/dist/schemas/tool-schemas.d.ts.map +1 -1
  100. package/dist/schemas/tool-schemas.js +34 -11
  101. package/dist/schemas/tool-schemas.js.map +1 -1
  102. package/dist/services/elevenlabs-api.d.ts +108 -14
  103. package/dist/services/elevenlabs-api.d.ts.map +1 -1
  104. package/dist/services/elevenlabs-api.js +108 -14
  105. package/dist/services/elevenlabs-api.js.map +1 -1
  106. package/dist/services/formatters.d.ts +147 -21
  107. package/dist/services/formatters.d.ts.map +1 -1
  108. package/dist/services/formatters.js +147 -21
  109. package/dist/services/formatters.js.map +1 -1
  110. package/dist/tools/agent-tools.d.ts +5 -3
  111. package/dist/tools/agent-tools.d.ts.map +1 -1
  112. package/dist/tools/agent-tools.js +5 -3
  113. package/dist/tools/agent-tools.js.map +1 -1
  114. package/dist/tools/batch-calling-tools.d.ts +5 -3
  115. package/dist/tools/batch-calling-tools.d.ts.map +1 -1
  116. package/dist/tools/batch-calling-tools.js +5 -3
  117. package/dist/tools/batch-calling-tools.js.map +1 -1
  118. package/dist/tools/conversation-tools.d.ts +5 -3
  119. package/dist/tools/conversation-tools.d.ts.map +1 -1
  120. package/dist/tools/conversation-tools.js +5 -3
  121. package/dist/tools/conversation-tools.js.map +1 -1
  122. package/dist/tools/knowledge-tools.d.ts +5 -3
  123. package/dist/tools/knowledge-tools.d.ts.map +1 -1
  124. package/dist/tools/knowledge-tools.js +5 -3
  125. package/dist/tools/knowledge-tools.js.map +1 -1
  126. package/dist/tools/outbound-tools.d.ts +5 -3
  127. package/dist/tools/outbound-tools.d.ts.map +1 -1
  128. package/dist/tools/outbound-tools.js +5 -3
  129. package/dist/tools/outbound-tools.js.map +1 -1
  130. package/dist/tools/phone-number-tools.d.ts +5 -4
  131. package/dist/tools/phone-number-tools.d.ts.map +1 -1
  132. package/dist/tools/phone-number-tools.js +5 -4
  133. package/dist/tools/phone-number-tools.js.map +1 -1
  134. package/dist/tools/tool-tools.d.ts +5 -3
  135. package/dist/tools/tool-tools.d.ts.map +1 -1
  136. package/dist/tools/tool-tools.js +5 -3
  137. package/dist/tools/tool-tools.js.map +1 -1
  138. package/dist/tools/utility-tools.d.ts +5 -3
  139. package/dist/tools/utility-tools.d.ts.map +1 -1
  140. package/dist/tools/utility-tools.js +5 -3
  141. package/dist/tools/utility-tools.js.map +1 -1
  142. package/dist/types.d.ts +457 -10
  143. package/dist/types.d.ts.map +1 -1
  144. package/dist/types.js +15 -3
  145. package/dist/types.js.map +1 -1
  146. package/dist/utils/error-handlers.d.ts +47 -14
  147. package/dist/utils/error-handlers.d.ts.map +1 -1
  148. package/dist/utils/error-handlers.js +47 -14
  149. package/dist/utils/error-handlers.js.map +1 -1
  150. package/dist/utils/phone-normalizer.d.ts +43 -22
  151. package/dist/utils/phone-normalizer.d.ts.map +1 -1
  152. package/dist/utils/phone-normalizer.js +43 -22
  153. package/dist/utils/phone-normalizer.js.map +1 -1
  154. package/dist/utils/truncation.d.ts +46 -22
  155. package/dist/utils/truncation.d.ts.map +1 -1
  156. package/dist/utils/truncation.js +46 -22
  157. package/dist/utils/truncation.js.map +1 -1
  158. package/package.json +10 -4
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js CHANGED
@@ -1,12 +1,24 @@
1
1
  /**
2
- * TypeScript type definitions for ElevenLabs Voice Agent API
3
- *
4
- * Defines interfaces for agents, conversations, tools, and API responses.
2
+ * @fileoverview TypeScript type definitions for ElevenLabs Voice Agent API
3
+ * @description Defines interfaces for agents, conversations, tools, and API responses.
4
+ * These types provide type safety and documentation for all API interactions.
5
+ * @module types
5
6
  */
7
+ // ============================================================================
6
8
  // Enums
9
+ // ============================================================================
10
+ /**
11
+ * Output format options for MCP tool responses.
12
+ * @description Controls how tool responses are formatted:
13
+ * - `MARKDOWN`: Human-readable formatted output with headers and lists
14
+ * - `JSON`: Structured data suitable for programmatic consumption
15
+ * @enum {string}
16
+ */
7
17
  export var ResponseFormat;
8
18
  (function (ResponseFormat) {
19
+ /** Human-readable Markdown format */
9
20
  ResponseFormat["MARKDOWN"] = "markdown";
21
+ /** Structured JSON format */
10
22
  ResponseFormat["JSON"] = "json";
11
23
  })(ResponseFormat || (ResponseFormat = {}));
12
24
  //# sourceMappingURL=types.js.map
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,QAAQ;AACR,MAAM,CAAN,IAAY,cAGX;AAHD,WAAY,cAAc;IACxB,uCAAqB,CAAA;IACrB,+BAAa,CAAA;AACf,CAAC,EAHW,cAAc,KAAd,cAAc,QAGzB"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,+EAA+E;AAC/E,QAAQ;AACR,+EAA+E;AAE/E;;;;;;GAMG;AACH,MAAM,CAAN,IAAY,cAKX;AALD,WAAY,cAAc;IACxB,qCAAqC;IACrC,uCAAqB,CAAA;IACrB,6BAA6B;IAC7B,+BAAa,CAAA;AACf,CAAC,EALW,cAAc,KAAd,cAAc,QAKzB"}
@@ -1,29 +1,62 @@
1
1
  /**
2
- * Error handling utilities for ElevenLabs API requests
3
- *
4
- * Provides consistent error handling and user-friendly error messages
5
- * for various API error scenarios.
2
+ * @fileoverview Error handling utilities for ElevenLabs API requests
3
+ * @description Provides consistent error handling and user-friendly error messages
4
+ * for various API error scenarios. Maps HTTP status codes to actionable guidance.
5
+ * @module utils/error-handlers
6
6
  */
7
7
  /**
8
- * Handles errors from ElevenLabs API requests
8
+ * Handles errors from ElevenLabs API requests and returns user-friendly messages.
9
+ * @description Parses axios errors and other exceptions, mapping them to clear,
10
+ * actionable error messages. Handles network errors, HTTP status codes, and
11
+ * API-specific error responses.
12
+ *
13
+ * @param {unknown} error - The error object from axios or other sources
14
+ * @param {string} [context] - Additional context about the operation (e.g., "creating agent")
15
+ * @returns {string} User-friendly error message with actionable guidance
9
16
  *
10
- * @param error - The error object from axios or other sources
11
- * @param context - Additional context about the operation (e.g., "creating agent")
12
- * @returns User-friendly error message with actionable guidance
17
+ * @example
18
+ * try {
19
+ * await makeApiRequest();
20
+ * } catch (error) {
21
+ * const message = handleElevenLabsError(error, "creating agent");
22
+ * // Returns: "Error creating agent: Invalid API key. Please check your ELEVENLABS_API_KEY..."
23
+ * }
13
24
  */
14
25
  export declare function handleElevenLabsError(error: unknown, context?: string): string;
15
26
  /**
16
- * Validates that the API key is present in environment
27
+ * Validates that the ElevenLabs API key is present in the environment.
28
+ * @description Checks for the ELEVENLABS_API_KEY environment variable.
29
+ * Should be called at server startup to fail fast if not configured.
17
30
  *
18
- * @throws Error if ELEVENLABS_API_KEY is not set
31
+ * @throws {Error} If ELEVENLABS_API_KEY environment variable is not set
32
+ *
33
+ * @example
34
+ * // At server startup
35
+ * try {
36
+ * validateApiKey();
37
+ * } catch (error) {
38
+ * console.error("API key not configured");
39
+ * process.exit(1);
40
+ * }
19
41
  */
20
42
  export declare function validateApiKey(): void;
21
43
  /**
22
- * Wraps an async function with error handling
44
+ * Higher-order function that wraps an async function with error handling.
45
+ * @description Creates a new function that catches errors and formats them
46
+ * consistently using handleElevenLabsError.
47
+ *
48
+ * @template T - Tuple type of the function arguments
49
+ * @template R - Return type of the function
50
+ * @param {(...args: T) => Promise<R>} fn - The async function to wrap
51
+ * @param {string} [context] - Context for error messages (e.g., "fetching agent")
52
+ * @returns {(...args: T) => Promise<R>} Wrapped function with consistent error handling
23
53
  *
24
- * @param fn - The async function to wrap
25
- * @param context - Context for error messages
26
- * @returns Wrapped function that handles errors consistently
54
+ * @example
55
+ * const safeGetAgent = withErrorHandling(
56
+ * async (id: string) => await api.getAgent(id),
57
+ * "fetching agent"
58
+ * );
59
+ * // Errors now include context: "Error fetching agent: ..."
27
60
  */
28
61
  export declare function withErrorHandling<T extends unknown[], R>(fn: (...args: T) => Promise<R>, context?: string): (...args: T) => Promise<R>;
29
62
  //# sourceMappingURL=error-handlers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"error-handlers.d.ts","sourceRoot":"","sources":["../../src/utils/error-handlers.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAkD9E;AAED;;;;GAIG;AACH,wBAAgB,cAAc,IAAI,IAAI,CAOrC;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,OAAO,EAAE,EAAE,CAAC,EACtD,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,EAC9B,OAAO,CAAC,EAAE,MAAM,GACf,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAQ5B"}
1
+ {"version":3,"file":"error-handlers.d.ts","sourceRoot":"","sources":["../../src/utils/error-handlers.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAkD9E;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,cAAc,IAAI,IAAI,CAOrC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,OAAO,EAAE,EAAE,CAAC,EACtD,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,EAC9B,OAAO,CAAC,EAAE,MAAM,GACf,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAQ5B"}
@@ -1,16 +1,27 @@
1
1
  /**
2
- * Error handling utilities for ElevenLabs API requests
3
- *
4
- * Provides consistent error handling and user-friendly error messages
5
- * for various API error scenarios.
2
+ * @fileoverview Error handling utilities for ElevenLabs API requests
3
+ * @description Provides consistent error handling and user-friendly error messages
4
+ * for various API error scenarios. Maps HTTP status codes to actionable guidance.
5
+ * @module utils/error-handlers
6
6
  */
7
7
  import axios from "axios";
8
8
  /**
9
- * Handles errors from ElevenLabs API requests
9
+ * Handles errors from ElevenLabs API requests and returns user-friendly messages.
10
+ * @description Parses axios errors and other exceptions, mapping them to clear,
11
+ * actionable error messages. Handles network errors, HTTP status codes, and
12
+ * API-specific error responses.
13
+ *
14
+ * @param {unknown} error - The error object from axios or other sources
15
+ * @param {string} [context] - Additional context about the operation (e.g., "creating agent")
16
+ * @returns {string} User-friendly error message with actionable guidance
10
17
  *
11
- * @param error - The error object from axios or other sources
12
- * @param context - Additional context about the operation (e.g., "creating agent")
13
- * @returns User-friendly error message with actionable guidance
18
+ * @example
19
+ * try {
20
+ * await makeApiRequest();
21
+ * } catch (error) {
22
+ * const message = handleElevenLabsError(error, "creating agent");
23
+ * // Returns: "Error creating agent: Invalid API key. Please check your ELEVENLABS_API_KEY..."
24
+ * }
14
25
  */
15
26
  export function handleElevenLabsError(error, context) {
16
27
  const prefix = context ? `Error ${context}: ` : "Error: ";
@@ -63,9 +74,20 @@ export function handleElevenLabsError(error, context) {
63
74
  return `${prefix}Unexpected error occurred: ${String(error)}`;
64
75
  }
65
76
  /**
66
- * Validates that the API key is present in environment
77
+ * Validates that the ElevenLabs API key is present in the environment.
78
+ * @description Checks for the ELEVENLABS_API_KEY environment variable.
79
+ * Should be called at server startup to fail fast if not configured.
67
80
  *
68
- * @throws Error if ELEVENLABS_API_KEY is not set
81
+ * @throws {Error} If ELEVENLABS_API_KEY environment variable is not set
82
+ *
83
+ * @example
84
+ * // At server startup
85
+ * try {
86
+ * validateApiKey();
87
+ * } catch (error) {
88
+ * console.error("API key not configured");
89
+ * process.exit(1);
90
+ * }
69
91
  */
70
92
  export function validateApiKey() {
71
93
  if (!process.env.ELEVENLABS_API_KEY) {
@@ -74,11 +96,22 @@ export function validateApiKey() {
74
96
  }
75
97
  }
76
98
  /**
77
- * Wraps an async function with error handling
99
+ * Higher-order function that wraps an async function with error handling.
100
+ * @description Creates a new function that catches errors and formats them
101
+ * consistently using handleElevenLabsError.
102
+ *
103
+ * @template T - Tuple type of the function arguments
104
+ * @template R - Return type of the function
105
+ * @param {(...args: T) => Promise<R>} fn - The async function to wrap
106
+ * @param {string} [context] - Context for error messages (e.g., "fetching agent")
107
+ * @returns {(...args: T) => Promise<R>} Wrapped function with consistent error handling
78
108
  *
79
- * @param fn - The async function to wrap
80
- * @param context - Context for error messages
81
- * @returns Wrapped function that handles errors consistently
109
+ * @example
110
+ * const safeGetAgent = withErrorHandling(
111
+ * async (id: string) => await api.getAgent(id),
112
+ * "fetching agent"
113
+ * );
114
+ * // Errors now include context: "Error fetching agent: ..."
82
115
  */
83
116
  export function withErrorHandling(fn, context) {
84
117
  return async (...args) => {
@@ -1 +1 @@
1
- {"version":3,"file":"error-handlers.js","sourceRoot":"","sources":["../../src/utils/error-handlers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"error-handlers.js","sourceRoot":"","sources":["../../src/utils/error-handlers.ts"],"names":[],"mappings":"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"}
@@ -1,41 +1,62 @@
1
1
  /**
2
- * Phone number normalization utilities
3
- *
4
- * Converts various phone number formats to E.164 format required by ElevenLabs.
2
+ * @fileoverview Phone number normalization utilities
3
+ * @description Converts various phone number formats to E.164 format required by ElevenLabs.
4
+ * Handles common US/Canadian formats and strips extensions.
5
+ * @module utils/phone-normalizer
5
6
  */
6
7
  /**
7
- * Normalizes a phone number to E.164 format
8
+ * Normalizes a phone number to E.164 format.
9
+ * @description Cleans and standardizes phone numbers to the E.164 international format
10
+ * required by telephony APIs. Handles various input formats including parentheses,
11
+ * dashes, dots, spaces, and extensions.
8
12
  *
9
- * E.164 format: ^\+?[1-9]\d{1,14}$
10
- * - Optional + at start
11
- * - Must start with 1-9 (not 0)
12
- * - 1-14 digits total
13
- * - No spaces, dashes, parentheses, or other characters
13
+ * E.164 format requirements:
14
+ * - Starts with + followed by country code
15
+ * - Contains only digits after the +
16
+ * - Total length 1-15 digits
17
+ * - Must start with 1-9 (no leading zeros)
14
18
  *
15
- * @param phoneNumber - Raw phone number in any format
16
- * @param defaultCountryCode - Default country code to add if missing (default: '+1' for US/Canada)
17
- * @returns Normalized phone number in E.164 format, or null if invalid
19
+ * @param {string | null | undefined} phoneNumber - Raw phone number in any format
20
+ * @param {string} [defaultCountryCode='+1'] - Default country code for US/Canada
21
+ * @returns {string | null} Normalized phone number in E.164 format, or null if invalid
18
22
  *
19
23
  * @example
20
- * normalizePhoneNumber('+1 412 481 2210') // Returns: '+14124812210'
21
- * normalizePhoneNumber('(623) 258-3673') // Returns: '+16232583673'
22
- * normalizePhoneNumber('817.527.9708') // Returns: '+18175279708'
24
+ * normalizePhoneNumber('+1 412 481 2210') // Returns: '+14124812210'
25
+ * normalizePhoneNumber('(623) 258-3673') // Returns: '+16232583673'
26
+ * normalizePhoneNumber('817.527.9708') // Returns: '+18175279708'
23
27
  * normalizePhoneNumber('518-434-8128 x206') // Returns: '+15184348128'
28
+ * normalizePhoneNumber('') // Returns: null
29
+ * normalizePhoneNumber(null) // Returns: null
24
30
  */
25
31
  export declare function normalizePhoneNumber(phoneNumber: string | null | undefined, defaultCountryCode?: string): string | null;
26
32
  /**
27
- * Validates if a phone number is in E.164 format
33
+ * Validates if a phone number is in E.164 format.
34
+ * @description Checks if the provided string matches the E.164 phone number format
35
+ * without attempting to normalize it.
36
+ *
37
+ * @param {string} phoneNumber - Phone number to validate
38
+ * @returns {boolean} True if valid E.164 format, false otherwise
28
39
  *
29
- * @param phoneNumber - Phone number to validate
30
- * @returns True if valid E.164 format, false otherwise
40
+ * @example
41
+ * isValidE164('+14155551234') // Returns: true
42
+ * isValidE164('4155551234') // Returns: true (without +)
43
+ * isValidE164('(415) 555-1234') // Returns: false
31
44
  */
32
45
  export declare function isValidE164(phoneNumber: string): boolean;
33
46
  /**
34
- * Normalizes an array of phone numbers, filtering out invalid ones
47
+ * Normalizes an array of phone numbers, separating valid from invalid.
48
+ * @description Batch processes phone numbers, returning successfully normalized
49
+ * numbers and tracking which entries failed validation with their original indices.
35
50
  *
36
- * @param phoneNumbers - Array of raw phone numbers
37
- * @param defaultCountryCode - Default country code to add if missing
38
- * @returns Array of normalized phone numbers and array of invalid entries with indices
51
+ * @param {(string | null | undefined)[]} phoneNumbers - Array of raw phone numbers
52
+ * @param {string} [defaultCountryCode='+1'] - Default country code for US/Canada
53
+ * @returns {{ normalized: string[], invalid: Array<{ index: number, original: string | null | undefined }> }}
54
+ * Object containing array of normalized numbers and array of invalid entries with indices
55
+ *
56
+ * @example
57
+ * const result = normalizePhoneNumbers(['(415) 555-1234', 'invalid', '+1234567890']);
58
+ * // result.normalized: ['+14155551234', '+1234567890']
59
+ * // result.invalid: [{ index: 1, original: 'invalid' }]
39
60
  */
40
61
  export declare function normalizePhoneNumbers(phoneNumbers: (string | null | undefined)[], defaultCountryCode?: string): {
41
62
  normalized: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"phone-normalizer.d.ts","sourceRoot":"","sources":["../../src/utils/phone-normalizer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,oBAAoB,CAClC,WAAW,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACtC,kBAAkB,GAAE,MAAa,GAChC,MAAM,GAAG,IAAI,CAoFf;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAGxD;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,YAAY,EAAE,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE,EAC3C,kBAAkB,GAAE,MAAa,GAChC;IACD,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,OAAO,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;KAAE,CAAC,CAAC;CACxE,CAcA"}
1
+ {"version":3,"file":"phone-normalizer.d.ts","sourceRoot":"","sources":["../../src/utils/phone-normalizer.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,oBAAoB,CAClC,WAAW,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACtC,kBAAkB,GAAE,MAAa,GAChC,MAAM,GAAG,IAAI,CAoFf;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAGxD;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,qBAAqB,CACnC,YAAY,EAAE,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE,EAC3C,kBAAkB,GAAE,MAAa,GAChC;IACD,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,OAAO,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;KAAE,CAAC,CAAC;CACxE,CAcA"}
@@ -1,26 +1,32 @@
1
1
  /**
2
- * Phone number normalization utilities
3
- *
4
- * Converts various phone number formats to E.164 format required by ElevenLabs.
2
+ * @fileoverview Phone number normalization utilities
3
+ * @description Converts various phone number formats to E.164 format required by ElevenLabs.
4
+ * Handles common US/Canadian formats and strips extensions.
5
+ * @module utils/phone-normalizer
5
6
  */
6
7
  /**
7
- * Normalizes a phone number to E.164 format
8
+ * Normalizes a phone number to E.164 format.
9
+ * @description Cleans and standardizes phone numbers to the E.164 international format
10
+ * required by telephony APIs. Handles various input formats including parentheses,
11
+ * dashes, dots, spaces, and extensions.
8
12
  *
9
- * E.164 format: ^\+?[1-9]\d{1,14}$
10
- * - Optional + at start
11
- * - Must start with 1-9 (not 0)
12
- * - 1-14 digits total
13
- * - No spaces, dashes, parentheses, or other characters
13
+ * E.164 format requirements:
14
+ * - Starts with + followed by country code
15
+ * - Contains only digits after the +
16
+ * - Total length 1-15 digits
17
+ * - Must start with 1-9 (no leading zeros)
14
18
  *
15
- * @param phoneNumber - Raw phone number in any format
16
- * @param defaultCountryCode - Default country code to add if missing (default: '+1' for US/Canada)
17
- * @returns Normalized phone number in E.164 format, or null if invalid
19
+ * @param {string | null | undefined} phoneNumber - Raw phone number in any format
20
+ * @param {string} [defaultCountryCode='+1'] - Default country code for US/Canada
21
+ * @returns {string | null} Normalized phone number in E.164 format, or null if invalid
18
22
  *
19
23
  * @example
20
- * normalizePhoneNumber('+1 412 481 2210') // Returns: '+14124812210'
21
- * normalizePhoneNumber('(623) 258-3673') // Returns: '+16232583673'
22
- * normalizePhoneNumber('817.527.9708') // Returns: '+18175279708'
24
+ * normalizePhoneNumber('+1 412 481 2210') // Returns: '+14124812210'
25
+ * normalizePhoneNumber('(623) 258-3673') // Returns: '+16232583673'
26
+ * normalizePhoneNumber('817.527.9708') // Returns: '+18175279708'
23
27
  * normalizePhoneNumber('518-434-8128 x206') // Returns: '+15184348128'
28
+ * normalizePhoneNumber('') // Returns: null
29
+ * normalizePhoneNumber(null) // Returns: null
24
30
  */
25
31
  export function normalizePhoneNumber(phoneNumber, defaultCountryCode = '+1') {
26
32
  if (!phoneNumber) {
@@ -101,21 +107,36 @@ export function normalizePhoneNumber(phoneNumber, defaultCountryCode = '+1') {
101
107
  return withPlus;
102
108
  }
103
109
  /**
104
- * Validates if a phone number is in E.164 format
110
+ * Validates if a phone number is in E.164 format.
111
+ * @description Checks if the provided string matches the E.164 phone number format
112
+ * without attempting to normalize it.
113
+ *
114
+ * @param {string} phoneNumber - Phone number to validate
115
+ * @returns {boolean} True if valid E.164 format, false otherwise
105
116
  *
106
- * @param phoneNumber - Phone number to validate
107
- * @returns True if valid E.164 format, false otherwise
117
+ * @example
118
+ * isValidE164('+14155551234') // Returns: true
119
+ * isValidE164('4155551234') // Returns: true (without +)
120
+ * isValidE164('(415) 555-1234') // Returns: false
108
121
  */
109
122
  export function isValidE164(phoneNumber) {
110
123
  const e164Pattern = /^\+?[1-9]\d{1,14}$/;
111
124
  return e164Pattern.test(phoneNumber);
112
125
  }
113
126
  /**
114
- * Normalizes an array of phone numbers, filtering out invalid ones
127
+ * Normalizes an array of phone numbers, separating valid from invalid.
128
+ * @description Batch processes phone numbers, returning successfully normalized
129
+ * numbers and tracking which entries failed validation with their original indices.
115
130
  *
116
- * @param phoneNumbers - Array of raw phone numbers
117
- * @param defaultCountryCode - Default country code to add if missing
118
- * @returns Array of normalized phone numbers and array of invalid entries with indices
131
+ * @param {(string | null | undefined)[]} phoneNumbers - Array of raw phone numbers
132
+ * @param {string} [defaultCountryCode='+1'] - Default country code for US/Canada
133
+ * @returns {{ normalized: string[], invalid: Array<{ index: number, original: string | null | undefined }> }}
134
+ * Object containing array of normalized numbers and array of invalid entries with indices
135
+ *
136
+ * @example
137
+ * const result = normalizePhoneNumbers(['(415) 555-1234', 'invalid', '+1234567890']);
138
+ * // result.normalized: ['+14155551234', '+1234567890']
139
+ * // result.invalid: [{ index: 1, original: 'invalid' }]
119
140
  */
120
141
  export function normalizePhoneNumbers(phoneNumbers, defaultCountryCode = '+1') {
121
142
  const normalized = [];
@@ -1 +1 @@
1
- {"version":3,"file":"phone-normalizer.js","sourceRoot":"","sources":["../../src/utils/phone-normalizer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"phone-normalizer.js","sourceRoot":"","sources":["../../src/utils/phone-normalizer.ts"],"names":[],"mappings":"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"}
@@ -1,41 +1,65 @@
1
1
  /**
2
- * Response truncation utilities
3
- *
4
- * Handles truncation of large responses to stay within MCP character limits
5
- * while providing clear guidance to users.
2
+ * @fileoverview Response truncation utilities
3
+ * @description Handles truncation of large responses to stay within MCP character limits
4
+ * while providing clear guidance to users. Prevents overwhelming clients with excessive data.
5
+ * @module utils/truncation
6
6
  */
7
7
  /**
8
- * Truncates content if it exceeds the character limit
8
+ * Truncates content if it exceeds the character limit.
9
+ * @description Checks content length against CHARACTER_LIMIT and truncates with
10
+ * a helpful message if exceeded. Used to prevent response overflow in MCP tools.
11
+ *
12
+ * @param {string} content - The content to potentially truncate
13
+ * @param {string} [context] - Additional context or guidance for the user
14
+ * @returns {string} Original content if within limit, or truncated with indicator
9
15
  *
10
- * @param content - The content to potentially truncate
11
- * @param context - Additional context or guidance for the user
12
- * @returns Original or truncated content with indicator
16
+ * @example
17
+ * const output = truncateIfNeeded(longMarkdown, "Use offset=100 to continue");
18
+ * // If over limit: "...content...[TRUNCATED: Response exceeded 25000 characters. Use offset=100 to continue]"
13
19
  */
14
20
  export declare function truncateIfNeeded(content: string, context?: string): string;
15
21
  /**
16
- * Truncates an array of items and provides pagination guidance
22
+ * Truncates an array of items with pagination guidance.
23
+ * @description Formats array items one by one, stopping when the character limit
24
+ * is reached. Provides pagination guidance for fetching remaining items.
25
+ *
26
+ * @template T - Type of items in the array
27
+ * @param {T[]} items - Array of items that might need truncation
28
+ * @param {(item: T, index: number) => string} formatter - Function to format each item as a string
29
+ * @param {number} [currentOffset=0] - Current pagination offset for guidance
30
+ * @param {string} [context] - Additional context for users
31
+ * @returns {string} Formatted and potentially truncated string
17
32
  *
18
- * @param items - Array of items that might need truncation
19
- * @param formatter - Function to format each item as a string
20
- * @param currentOffset - Current pagination offset
21
- * @param context - Additional context for users
22
- * @returns Formatted and potentially truncated string
33
+ * @example
34
+ * const output = truncateArray(agents, (agent, i) => `${i}. ${agent.name}\n`, 0);
23
35
  */
24
36
  export declare function truncateArray<T>(items: T[], formatter: (item: T, index: number) => string, currentOffset?: number, context?: string): string;
25
37
  /**
26
- * Safely truncates a string in the middle, preserving start and end
38
+ * Safely truncates a string in the middle, preserving start and end.
39
+ * @description Useful for displaying long strings (like URLs) in limited space
40
+ * while showing both the beginning and end.
27
41
  *
28
- * @param content - Content to truncate
29
- * @param maxLength - Maximum length
30
- * @returns Truncated string with "..." indicator
42
+ * @param {string} content - Content to truncate
43
+ * @param {number} maxLength - Maximum length of output string
44
+ * @returns {string} Truncated string with "..." indicator in the middle
45
+ *
46
+ * @example
47
+ * truncateMiddle("https://example.com/very/long/path/to/resource", 30);
48
+ * // Returns: "https://examp...to/resource"
31
49
  */
32
50
  export declare function truncateMiddle(content: string, maxLength: number): string;
33
51
  /**
34
- * Formats a large JSON object with optional truncation
52
+ * Formats a large JSON object with optional truncation.
53
+ * @description Converts any object to pretty-printed JSON, automatically
54
+ * truncating if the result exceeds CHARACTER_LIMIT.
55
+ *
56
+ * @param {unknown} obj - Object to format as JSON
57
+ * @param {number} [indent=2] - Number of spaces for indentation
58
+ * @returns {string} JSON string, potentially truncated with guidance
35
59
  *
36
- * @param obj - Object to format
37
- * @param indent - Indentation spaces (default: 2)
38
- * @returns JSON string, potentially truncated
60
+ * @example
61
+ * const json = formatJSON({ agents: [...] });
62
+ * // Returns pretty-printed JSON, truncated if over 25000 chars
39
63
  */
40
64
  export declare function formatJSON(obj: unknown, indent?: number): string;
41
65
  //# sourceMappingURL=truncation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"truncation.d.ts","sourceRoot":"","sources":["../../src/utils/truncation.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAS1E;AAED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAC7B,KAAK,EAAE,CAAC,EAAE,EACV,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,EAC7C,aAAa,GAAE,MAAU,EACzB,OAAO,CAAC,EAAE,MAAM,GACf,MAAM,CAmBR;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAUzE;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,GAAE,MAAU,GAAG,MAAM,CAQnE"}
1
+ {"version":3,"file":"truncation.d.ts","sourceRoot":"","sources":["../../src/utils/truncation.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;;;;;;;;;;;GAYG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAS1E;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAC7B,KAAK,EAAE,CAAC,EAAE,EACV,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,EAC7C,aAAa,GAAE,MAAU,EACzB,OAAO,CAAC,EAAE,MAAM,GACf,MAAM,CAmBR;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAUzE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,GAAE,MAAU,GAAG,MAAM,CAQnE"}