@retell-ai/mcp-server 5.26.1 → 5.27.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.
@@ -131,14 +131,18 @@ const fuse = new Fuse(
131
131
  'client.phoneNumber.retrieve',
132
132
  'client.phoneNumber.update',
133
133
  'client.agent.create',
134
+ 'client.agent.createVersion',
134
135
  'client.agent.delete',
136
+ 'client.agent.deleteVersion',
135
137
  'client.agent.getVersions',
136
138
  'client.agent.list',
137
139
  'client.agent.publish',
138
140
  'client.agent.retrieve',
139
141
  'client.agent.update',
140
142
  'client.chatAgent.create',
143
+ 'client.chatAgent.createVersion',
141
144
  'client.chatAgent.delete',
145
+ 'client.chatAgent.deleteVersion',
142
146
  'client.chatAgent.getVersions',
143
147
  'client.chatAgent.list',
144
148
  'client.chatAgent.publish',
@@ -1097,6 +1097,63 @@ const EMBEDDED_METHODS: MethodEntry[] = [
1097
1097
  },
1098
1098
  },
1099
1099
  },
1100
+ {
1101
+ name: 'create-version',
1102
+ endpoint: '/create-agent-version/{agent_id}',
1103
+ httpMethod: 'post',
1104
+ summary: '',
1105
+ description: 'Create a new draft agent version from a base version.',
1106
+ stainlessPath: '(resource) agent > (method) create-version',
1107
+ qualified: 'client.agent.createVersion',
1108
+ params: ['agent_id: string;', 'base_version: number;'],
1109
+ response: 'object | object',
1110
+ markdown:
1111
+ "## create-version\n\n`client.agent.createVersion(agent_id: string, base_version: number): object | object`\n\n**post** `/create-agent-version/{agent_id}`\n\nCreate a new draft agent version from a base version.\n\n### Parameters\n\n- `agent_id: string`\n\n- `base_version: number`\n Existing version used as the base when creating a new draft.\n\n### Returns\n\n- `{ agent_id: string; last_modification_timestamp: number; response_engine: { llm_id: string; type: 'retell-llm'; version?: number; } | { llm_websocket_url: string; type: 'custom-llm'; } | { conversation_flow_id: string; type: 'conversation-flow'; version?: number; }; version: number; voice_id: string; agent_name?: string; allow_dtmf_interruption?: boolean; allow_user_dtmf?: boolean; ambient_sound?: string; ambient_sound_volume?: number; analysis_successful_prompt?: string; analysis_summary_prompt?: string; analysis_user_sentiment_prompt?: string; assigned_tags?: string[]; backchannel_frequency?: number; backchannel_words?: string[]; base_version?: number; begin_message_delay_ms?: number; boosted_keywords?: string[]; call_screening_option?: { agent_identity: string; call_purpose: string; }; custom_stt_config?: { endpointing_ms: number; provider: 'azure' | 'deepgram' | 'soniox'; }; data_storage_retention_days?: number; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation'; enable_backchannel?: boolean; enable_dynamic_responsiveness?: boolean; enable_dynamic_voice_speed?: boolean; end_call_after_silence_ms?: number; fallback_voice_ids?: string[]; guardrail_config?: { input_topics?: 'platform_integrity_jailbreaking'[]; output_topics?: string[]; }; handbook_config?: { ai_disclosure?: boolean; default_personality?: boolean; echo_verification?: boolean; high_empathy?: boolean; nato_phonetic_alphabet?: boolean; natural_filler_words?: boolean; scope_boundaries?: boolean; smart_matching?: boolean; speech_normalization?: boolean; }; interruption_sensitivity?: number; is_published?: boolean; ivr_option?: { action: object; detection_prompt?: string; }; language?: string | string[]; max_call_duration_ms?: number; opt_in_signed_url?: boolean; pii_config?: { categories: string[]; mode: 'post_call'; }; post_call_analysis_data?: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; } | { name: 'call_summary' | 'call_successful' | 'user_sentiment'; type: 'system-presets'; conditional_prompt?: string; description?: string; required?: boolean; }[]; post_call_analysis_model?: string; pronunciation_dictionary?: { alphabet: 'ipa' | 'cmu'; phoneme: string; word: string; }[]; reminder_max_count?: number; reminder_trigger_ms?: number; responsiveness?: number; ring_duration_ms?: number; signed_url_expiration_ms?: number; stt_mode?: 'fast' | 'accurate' | 'custom'; timezone?: string; user_dtmf_options?: { digit_limit?: number; termination_key?: string; timeout_ms?: number; }; version_description?: string; vocab_specialization?: 'general' | 'medical'; voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised'; voice_model?: string; voice_speed?: number; voice_temperature?: number; voicemail_detection_timeout_ms?: number; voicemail_message?: string; voicemail_option?: { action: object | object | object | object; detection_prompt?: string; }; volume?: number; webhook_events?: string[]; webhook_timeout_ms?: number; webhook_url?: string; } | { agent_id: string; last_modification_timestamp: number; response_engine: { llm_id: string; type: 'retell-llm'; version?: number; } | { llm_websocket_url: string; type: 'custom-llm'; } | { conversation_flow_id: string; type: 'conversation-flow'; version?: number; }; agent_name?: string; analysis_successful_prompt?: string; analysis_summary_prompt?: string; analysis_user_sentiment_prompt?: string; assigned_tags?: string[]; auto_close_message?: string; base_version?: number; data_storage_retention_days?: number; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; end_chat_after_silence_ms?: number; guardrail_config?: { input_topics?: 'platform_integrity_jailbreaking'[]; output_topics?: string[]; }; handbook_config?: { ai_disclosure?: boolean; default_personality?: boolean; high_empathy?: boolean; scope_boundaries?: boolean; }; is_published?: boolean; language?: string | string[]; opt_in_signed_url?: boolean; pii_config?: { categories: string[]; mode: 'post_call'; }; post_chat_analysis_data?: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; } | { name: 'chat_summary' | 'chat_successful' | 'user_sentiment'; type: 'system-presets'; conditional_prompt?: string; description?: string; required?: boolean; }[]; post_chat_analysis_model?: string; signed_url_expiration_ms?: number; timezone?: string; version?: number; webhook_events?: 'chat_started' | 'chat_ended' | 'chat_analyzed' | 'transcript_updated'[]; webhook_timeout_ms?: number; webhook_url?: string; }`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst response = await client.agent.createVersion('agent_xxx', { base_version: 12 });\n\nconsole.log(response);\n```",
1112
+ perLanguage: {
1113
+ typescript: {
1114
+ method: 'client.agent.createVersion',
1115
+ example:
1116
+ "import Retell from 'retell-sdk';\n\nconst client = new Retell({\n apiKey: process.env['RETELL_API_KEY'], // This is the default and can be omitted\n});\n\nconst response = await client.agent.createVersion('agent_xxx', { base_version: 12 });\n\nconsole.log(response);",
1117
+ },
1118
+ python: {
1119
+ method: 'agent.create_version',
1120
+ example:
1121
+ 'import os\nfrom retell import Retell\n\nclient = Retell(\n api_key=os.environ.get("RETELL_API_KEY"), # This is the default and can be omitted\n)\nresponse = client.agent.create_version(\n agent_id="agent_xxx",\n base_version=12,\n)\nprint(response)',
1122
+ },
1123
+ http: {
1124
+ example:
1125
+ 'curl https://api.retellai.com/create-agent-version/$AGENT_ID \\\n -H \'Content-Type: application/json\' \\\n -H "Authorization: Bearer $RETELL_API_KEY" \\\n -d \'{\n "base_version": 12\n }\'',
1126
+ },
1127
+ },
1128
+ },
1129
+ {
1130
+ name: 'delete-version',
1131
+ endpoint: '/delete-agent-version/{agent_id}',
1132
+ httpMethod: 'delete',
1133
+ summary: '',
1134
+ description: 'Delete a specific agent version.',
1135
+ stainlessPath: '(resource) agent > (method) delete-version',
1136
+ qualified: 'client.agent.deleteVersion',
1137
+ params: ['agent_id: string;', 'version: number;'],
1138
+ markdown:
1139
+ "## delete-version\n\n`client.agent.deleteVersion(agent_id: string, version: number): void`\n\n**delete** `/delete-agent-version/{agent_id}`\n\nDelete a specific agent version.\n\n### Parameters\n\n- `agent_id: string`\n\n- `version: number`\n Version to delete.\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nawait client.agent.deleteVersion('agent_xxx', { version: 1 })\n```",
1140
+ perLanguage: {
1141
+ typescript: {
1142
+ method: 'client.agent.deleteVersion',
1143
+ example:
1144
+ "import Retell from 'retell-sdk';\n\nconst client = new Retell({\n apiKey: process.env['RETELL_API_KEY'], // This is the default and can be omitted\n});\n\nawait client.agent.deleteVersion('agent_xxx', { version: 1 });",
1145
+ },
1146
+ python: {
1147
+ method: 'agent.delete_version',
1148
+ example:
1149
+ 'import os\nfrom retell import Retell\n\nclient = Retell(\n api_key=os.environ.get("RETELL_API_KEY"), # This is the default and can be omitted\n)\nclient.agent.delete_version(\n agent_id="agent_xxx",\n version=1,\n)',
1150
+ },
1151
+ http: {
1152
+ example:
1153
+ 'curl https://api.retellai.com/delete-agent-version/$AGENT_ID \\\n -X DELETE \\\n -H "Authorization: Bearer $RETELL_API_KEY"',
1154
+ },
1155
+ },
1156
+ },
1100
1157
  {
1101
1158
  name: 'get-versions',
1102
1159
  endpoint: '/get-agent-versions/{agent_id}',
@@ -1353,6 +1410,63 @@ const EMBEDDED_METHODS: MethodEntry[] = [
1353
1410
  },
1354
1411
  },
1355
1412
  },
1413
+ {
1414
+ name: 'create-version',
1415
+ endpoint: '/create-agent-version/{agent_id}',
1416
+ httpMethod: 'post',
1417
+ summary: '',
1418
+ description: 'Create a new draft agent version from a base version.',
1419
+ stainlessPath: '(resource) chat_agent > (method) create-version',
1420
+ qualified: 'client.chatAgent.createVersion',
1421
+ params: ['agent_id: string;', 'base_version: number;'],
1422
+ response: 'object | object',
1423
+ markdown:
1424
+ "## create-version\n\n`client.chatAgent.createVersion(agent_id: string, base_version: number): object | object`\n\n**post** `/create-agent-version/{agent_id}`\n\nCreate a new draft agent version from a base version.\n\n### Parameters\n\n- `agent_id: string`\n\n- `base_version: number`\n Existing version used as the base when creating a new draft.\n\n### Returns\n\n- `{ agent_id: string; last_modification_timestamp: number; response_engine: { llm_id: string; type: 'retell-llm'; version?: number; } | { llm_websocket_url: string; type: 'custom-llm'; } | { conversation_flow_id: string; type: 'conversation-flow'; version?: number; }; version: number; voice_id: string; agent_name?: string; allow_dtmf_interruption?: boolean; allow_user_dtmf?: boolean; ambient_sound?: string; ambient_sound_volume?: number; analysis_successful_prompt?: string; analysis_summary_prompt?: string; analysis_user_sentiment_prompt?: string; assigned_tags?: string[]; backchannel_frequency?: number; backchannel_words?: string[]; base_version?: number; begin_message_delay_ms?: number; boosted_keywords?: string[]; call_screening_option?: { agent_identity: string; call_purpose: string; }; custom_stt_config?: { endpointing_ms: number; provider: 'azure' | 'deepgram' | 'soniox'; }; data_storage_retention_days?: number; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation'; enable_backchannel?: boolean; enable_dynamic_responsiveness?: boolean; enable_dynamic_voice_speed?: boolean; end_call_after_silence_ms?: number; fallback_voice_ids?: string[]; guardrail_config?: { input_topics?: 'platform_integrity_jailbreaking'[]; output_topics?: string[]; }; handbook_config?: { ai_disclosure?: boolean; default_personality?: boolean; echo_verification?: boolean; high_empathy?: boolean; nato_phonetic_alphabet?: boolean; natural_filler_words?: boolean; scope_boundaries?: boolean; smart_matching?: boolean; speech_normalization?: boolean; }; interruption_sensitivity?: number; is_published?: boolean; ivr_option?: { action: object; detection_prompt?: string; }; language?: string | string[]; max_call_duration_ms?: number; opt_in_signed_url?: boolean; pii_config?: { categories: string[]; mode: 'post_call'; }; post_call_analysis_data?: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; } | { name: 'call_summary' | 'call_successful' | 'user_sentiment'; type: 'system-presets'; conditional_prompt?: string; description?: string; required?: boolean; }[]; post_call_analysis_model?: string; pronunciation_dictionary?: { alphabet: 'ipa' | 'cmu'; phoneme: string; word: string; }[]; reminder_max_count?: number; reminder_trigger_ms?: number; responsiveness?: number; ring_duration_ms?: number; signed_url_expiration_ms?: number; stt_mode?: 'fast' | 'accurate' | 'custom'; timezone?: string; user_dtmf_options?: { digit_limit?: number; termination_key?: string; timeout_ms?: number; }; version_description?: string; vocab_specialization?: 'general' | 'medical'; voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised'; voice_model?: string; voice_speed?: number; voice_temperature?: number; voicemail_detection_timeout_ms?: number; voicemail_message?: string; voicemail_option?: { action: object | object | object | object; detection_prompt?: string; }; volume?: number; webhook_events?: string[]; webhook_timeout_ms?: number; webhook_url?: string; } | { agent_id: string; last_modification_timestamp: number; response_engine: { llm_id: string; type: 'retell-llm'; version?: number; } | { llm_websocket_url: string; type: 'custom-llm'; } | { conversation_flow_id: string; type: 'conversation-flow'; version?: number; }; agent_name?: string; analysis_successful_prompt?: string; analysis_summary_prompt?: string; analysis_user_sentiment_prompt?: string; assigned_tags?: string[]; auto_close_message?: string; base_version?: number; data_storage_retention_days?: number; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; end_chat_after_silence_ms?: number; guardrail_config?: { input_topics?: 'platform_integrity_jailbreaking'[]; output_topics?: string[]; }; handbook_config?: { ai_disclosure?: boolean; default_personality?: boolean; high_empathy?: boolean; scope_boundaries?: boolean; }; is_published?: boolean; language?: string | string[]; opt_in_signed_url?: boolean; pii_config?: { categories: string[]; mode: 'post_call'; }; post_chat_analysis_data?: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; } | { name: 'chat_summary' | 'chat_successful' | 'user_sentiment'; type: 'system-presets'; conditional_prompt?: string; description?: string; required?: boolean; }[]; post_chat_analysis_model?: string; signed_url_expiration_ms?: number; timezone?: string; version?: number; webhook_events?: 'chat_started' | 'chat_ended' | 'chat_analyzed' | 'transcript_updated'[]; webhook_timeout_ms?: number; webhook_url?: string; }`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst response = await client.chatAgent.createVersion('agent_xxx', { base_version: 12 });\n\nconsole.log(response);\n```",
1425
+ perLanguage: {
1426
+ typescript: {
1427
+ method: 'client.chatAgent.createVersion',
1428
+ example:
1429
+ "import Retell from 'retell-sdk';\n\nconst client = new Retell({\n apiKey: process.env['RETELL_API_KEY'], // This is the default and can be omitted\n});\n\nconst response = await client.chatAgent.createVersion('agent_xxx', { base_version: 12 });\n\nconsole.log(response);",
1430
+ },
1431
+ python: {
1432
+ method: 'chat_agent.create_version',
1433
+ example:
1434
+ 'import os\nfrom retell import Retell\n\nclient = Retell(\n api_key=os.environ.get("RETELL_API_KEY"), # This is the default and can be omitted\n)\nresponse = client.chat_agent.create_version(\n agent_id="agent_xxx",\n base_version=12,\n)\nprint(response)',
1435
+ },
1436
+ http: {
1437
+ example:
1438
+ 'curl https://api.retellai.com/create-agent-version/$AGENT_ID \\\n -H \'Content-Type: application/json\' \\\n -H "Authorization: Bearer $RETELL_API_KEY" \\\n -d \'{\n "base_version": 12\n }\'',
1439
+ },
1440
+ },
1441
+ },
1442
+ {
1443
+ name: 'delete-version',
1444
+ endpoint: '/delete-agent-version/{agent_id}',
1445
+ httpMethod: 'delete',
1446
+ summary: '',
1447
+ description: 'Delete a specific agent version.',
1448
+ stainlessPath: '(resource) chat_agent > (method) delete-version',
1449
+ qualified: 'client.chatAgent.deleteVersion',
1450
+ params: ['agent_id: string;', 'version: number;'],
1451
+ markdown:
1452
+ "## delete-version\n\n`client.chatAgent.deleteVersion(agent_id: string, version: number): void`\n\n**delete** `/delete-agent-version/{agent_id}`\n\nDelete a specific agent version.\n\n### Parameters\n\n- `agent_id: string`\n\n- `version: number`\n Version to delete.\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nawait client.chatAgent.deleteVersion('agent_xxx', { version: 1 })\n```",
1453
+ perLanguage: {
1454
+ typescript: {
1455
+ method: 'client.chatAgent.deleteVersion',
1456
+ example:
1457
+ "import Retell from 'retell-sdk';\n\nconst client = new Retell({\n apiKey: process.env['RETELL_API_KEY'], // This is the default and can be omitted\n});\n\nawait client.chatAgent.deleteVersion('agent_xxx', { version: 1 });",
1458
+ },
1459
+ python: {
1460
+ method: 'chat_agent.delete_version',
1461
+ example:
1462
+ 'import os\nfrom retell import Retell\n\nclient = Retell(\n api_key=os.environ.get("RETELL_API_KEY"), # This is the default and can be omitted\n)\nclient.chat_agent.delete_version(\n agent_id="agent_xxx",\n version=1,\n)',
1463
+ },
1464
+ http: {
1465
+ example:
1466
+ 'curl https://api.retellai.com/delete-agent-version/$AGENT_ID \\\n -X DELETE \\\n -H "Authorization: Bearer $RETELL_API_KEY"',
1467
+ },
1468
+ },
1469
+ },
1356
1470
  {
1357
1471
  name: 'get-versions',
1358
1472
  endpoint: '/get-chat-agent-versions/{agent_id}',
package/src/methods.ts CHANGED
@@ -172,6 +172,18 @@ export const sdkMethods: SdkMethod[] = [
172
172
  httpMethod: 'delete',
173
173
  httpPath: '/delete-agent/{agent_id}',
174
174
  },
175
+ {
176
+ clientCallName: 'client.agent.createVersion',
177
+ fullyQualifiedName: 'agent.createVersion',
178
+ httpMethod: 'post',
179
+ httpPath: '/create-agent-version/{agent_id}',
180
+ },
181
+ {
182
+ clientCallName: 'client.agent.deleteVersion',
183
+ fullyQualifiedName: 'agent.deleteVersion',
184
+ httpMethod: 'delete',
185
+ httpPath: '/delete-agent-version/{agent_id}',
186
+ },
175
187
  {
176
188
  clientCallName: 'client.agent.getVersions',
177
189
  fullyQualifiedName: 'agent.getVersions',
@@ -214,6 +226,18 @@ export const sdkMethods: SdkMethod[] = [
214
226
  httpMethod: 'delete',
215
227
  httpPath: '/delete-chat-agent/{agent_id}',
216
228
  },
229
+ {
230
+ clientCallName: 'client.chatAgent.createVersion',
231
+ fullyQualifiedName: 'chatAgent.createVersion',
232
+ httpMethod: 'post',
233
+ httpPath: '/create-agent-version/{agent_id}',
234
+ },
235
+ {
236
+ clientCallName: 'client.chatAgent.deleteVersion',
237
+ fullyQualifiedName: 'chatAgent.deleteVersion',
238
+ httpMethod: 'delete',
239
+ httpPath: '/delete-agent-version/{agent_id}',
240
+ },
217
241
  {
218
242
  clientCallName: 'client.chatAgent.getVersions',
219
243
  fullyQualifiedName: 'chatAgent.getVersions',
package/src/server.ts CHANGED
@@ -28,7 +28,7 @@ export const newMcpServer = async ({
28
28
  new McpServer(
29
29
  {
30
30
  name: 'retell_sdk_api',
31
- version: '5.26.1',
31
+ version: '5.27.0',
32
32
  },
33
33
  {
34
34
  instructions: await getInstructions({ stainlessApiKey, customInstructionsPath }),