ThunderPhone 2.0 באוויר.בשירות עצמי, החל מ-2¢/דקה.קראו את הודעת ההשקה

Connect tools & data

השתמשו ב-ThunderPhone כשרת MCP

בנו, בדקו, אמתו והפעילו סוכני קול של ThunderPhone מתוך Claude, ChatGPT, Claude Code, Codex, Cursor, VS Code או לקוח MCP אחר מסוג Streamable HTTP.

ThunderPhone חושפת שרת MCP באמצעות HTTP ניתן להזרמה בכתובת:

https://api.thunderphone.com/v1/mcp

זהו הכיוון ההפוך מ-חיבור שרת MCP מרוחק לסוכן קולי:

כיווןתוצאה
שרת MCP מרוחק → סוכן ThunderPhoneסוכן קולי יכול להפעיל את הכלים של השרת המרוחק.
ThunderPhone → לקוח MCP שלכםסוכן התכנות שלכם יכול לבנות, לבדוק ולהפעיל את ThunderPhone.

אימות

השתמשו ב-OAuth כברירת מחדל עבור לקוחות ספרייה: התחברו, בחרו ארגון ואשרו את ההרשאות המבוקשות. בטלו גישה תחת ארגון → מפתחות API → אפליקציות מורשות.

עבור לקוחות שהוגדרו עם מפתח API, צרו מפתח sk_live_ תחת ארגון → מפתחות והעבירו אותו ללקוח MCP שלכם כ-THUNDERPHONE_API_KEY. המפתח מקושר לארגון אחד; מזהה השייך לארגון אחר מתנהג כאילו לא נמצא.

חלופות CLI ו-stdio

ה-CLI של ThunderPhone יכול לכתוב את תצורת הלקוח תוך שמירה על שרתים שאינם קשורים:

npx -y @thunderphone/mcp setup --client cursor --api-key-env THUNDERPHONE_API_KEY
npx thunderphone mcp setup --client claude-desktop --scope user

לאחר התקנה כללית של @thunderphone/mcp, השתמשו ב-thunderphone-mcp setup עם אותן אפשרויות. ההגדרה תומכת ב-Claude Code, Codex, Cursor, VS Code, Gemini, Claude Desktop ו-Windsurf. עדיף להשתמש ב-HTTP ישיר; גרסת שולחן העבודה משתמשת ב-stdio.

לכל לקוח התומך ב-stdio, הגדירו את command: "npx" עם args: ["-y", "@thunderphone/mcp"]. המעטפת משתמשת תחילה ב-THUNDERPHONE_API_KEY, ולאחר מכן בפרטי הכניסה מ-thunderphone login, מרעננת אסימונים שפג תוקפם, ולאחר מכן ב-OAuth דרך mcp-remote. כניסה ממכשיר ו-OAuth דורשים את ההשקה המתאימה של OAuth ב-API. נתיב מפתח ה-API אינו דורש זאת. תצורות HTTP ישירות אינן קוראות את מאגר פרטי הכניסה של ה-CLI; השתמשו במעטפת stdio כדי לעשות שימוש חוזר בכניסה ממכשיר.

אלו חלופות לתצורות הלקוח הידניות שלהלן.

תצורת לקוח

Claude ו-ChatGPT מאפשרים לכם להתחבר באמצעות OAuth; אין צורך במפתח API. אם עדיין אין לכם חשבון ThunderPhone, בחרו יצירת חשבון בדף ההתחברות, ולאחר אימות כתובת האימייל תחזרו למסך האישור.

Claude (אינטרנט, שולחן עבודה ונייד)

  1. פתחו את התאמה אישית → מחברים (הגדרות → מחברים בגרסאות ישנות יותר). אם ThunderPhone מופיע בספריית המחברים, בחרו בו. אחרת, בחרו הוספת מחבר מותאם אישית, תנו לו את השם ThunderPhone, והזינו https://api.thunderphone.com/v1/mcp.
  2. בחרו התחברות, התחברו ל-ThunderPhone, בחרו את הארגון ואשרו את ההרשאות.
  3. בשיחה, הפעילו את ThunderPhone מתפריט הכלים ובקשו את מה שאתם צריכים, לדוגמה "הצג את הסוכנים שלי".

Claude מבקש אישור לפני השימוש הראשון בכל כלי. כדי לדלג על רוב הבקשות האלה, פתחו את התאמה אישית → מחברים → ThunderPhone והגדירו את כלים לקריאה בלבד כ-לאפשר תמיד. כלים אלה מבצעים רק חיפושים: סוכנים, שיחות, תמלילים, יתרות ותיעוד. השאירו את כלי כתיבה/מחיקה במצב אישור אם אתם רוצים לראות כל שינוי לפני שהוא מתבצע.

מחברים מותאמים אישית דורשים תוכנית Claude בתשלום. בתוכניות Team ו-Enterprise, בעלים מוסיף תחילה את המחבר בהגדרות המחברים של הארגון, ולאחר מכן כל חבר מחבר את חשבון ThunderPhone שלו.

ChatGPT

  1. אם ThunderPhone מופיע בספריית האפליקציות של ChatGPT, בחרו בו והתחברו.
  2. אחרת, פתחו את הגדרות → אפליקציות ומחברים → הגדרות מתקדמות, הפעילו את מצב מפתח, וצרו מחבר עם כתובת ה-URL https://api.thunderphone.com/v1/mcp ואימות OAuth.
  3. התחברו ל-ThunderPhone, בחרו את הארגון ואשרו את ההרשאות. הוסיפו את ThunderPhone לשיחה מתפריט הכלים.

מחיקת סוכן או מספר טלפון, ביטול טיוטה, הפעלת קמפיין ושליחת בקשת בדיקה שיכולה לכתוב למערכת חיצונית דורשים אישור נוסף בכל אחת מהאפליקציות; ראו אישור פעולות הרסניות.

Claude Code

claude mcp add --transport http thunderphone https://api.thunderphone.com/v1/mcp \
  --header "Authorization: Bearer $THUNDERPHONE_API_KEY"

Codex

הוסיפו את זה אל ~/.codex/config.toml:

[mcp_servers.thunderphone]
url = "https://api.thunderphone.com/v1/mcp"
bearer_token_env_var = "THUNDERPHONE_API_KEY"

Cursor

צרו את .cursor/mcp.json:

{
  "mcpServers": {
    "thunderphone": {
      "url": "https://api.thunderphone.com/v1/mcp",
      "headers": {
        "Authorization": "Bearer ${env:THUNDERPHONE_API_KEY}"
      }
    }
  }
}

Claude Desktop

הוסיפו גשר mcp-remote לתצורת Claude Desktop:

{
  "mcpServers": {
    "thunderphone": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://api.thunderphone.com/v1/mcp",
        "--header",
        "Authorization: Bearer ${THUNDERPHONE_API_KEY}"
      ],
      "env": {
        "THUNDERPHONE_API_KEY": "sk_live_YOUR_API_KEY"
      }
    }
  }
}

VS Code

צרו את .vscode/mcp.json והזינו את המפתח באמצעות בקשת הקלט של VS Code:

{
  "inputs": [
    {
      "type": "promptString",
      "id": "thunderphone-api-key",
      "description": "ThunderPhone organization API key",
      "password": true
    }
  ],
  "servers": {
    "thunderphone": {
      "type": "http",
      "url": "https://api.thunderphone.com/v1/mcp",
      "headers": {
        "Authorization": "Bearer ${input:thunderphone-api-key}"
      }
    }
  }
}

כלים

כל כלי כולל הערות MCP. בטבלאות, R מציין קריאה בלבד, D פעולה הרסנית, I פעולה אידמפוטנטית, ו-O אינטראקציה עם העולם החיצון/הרשת. מקף מציין שלא הוגדר רמז.

חיבור

כליארגומנטים עיקרייםהערותמה הוא עושה
get_connection_identity—R, Iמאמת את פרטי ההזדהות ומחזיר את הארגון ואת המטא-נתונים הבטוחים של פרטי ההזדהות.

סוכנים

כליארגומנטים עיקרייםהערותמה הוא עושה
list_agents—R, Iמציג רשימת סוכנים.
get_agentagent_idR, Iמקבל סוכן אחד.
create_agentתצורת סוכן—יוצר סוכן.
update_agentagent_id, שדות שהשתנוDמכין שדות בטיוטת הסוכן, ומחליף את מה שהיה בטיוטה. פועל ללא שלב אישור: הסוכן שפורסם אינו משתנה עד להפעלת deploy_agent, ו-discard_agent_draft מחזיר את הטיוטה למצבה הקודם.
deploy_agentagent_id, if_updated_at אופציונליD, Iמקדם את הטיוטה לייצור.
discard_agent_draftagent_id, if_updated_at אופציונלי, confirmation_token בבקשה השנייהD, Iמבטל שינויים שהוכנו. תהליך דו-שלבי, ראו אישור פעולות הרסניות.
duplicate_agentagent_id, name אופציונלי—מעתיק סוכן בתוך הארגון.
delete_agentagent_id, confirmation_token בבקשה השנייהD, Iמוחק סוכן לצמיתות. תהליך דו-שלבי.
list_agent_versionsagent_idR, Iמציג רשימת גרסאות תצורה שפורסמו.

מספרי טלפון וספקים

כליארגומנטים עיקרייםהערותמה הוא עושה
list_phone_numbers—R, Iמציג מספרי ארגון וניתוב.
get_phone_number_limits—R, Iמחזיר שימוש ומגבלות של מספרים מנוהלים.
provision_phone_numberאופציונליים: area_code, city, state, idempotency_keyD, Oרוכש מספר נכנס המנוהל על ידי ThunderPhone.
list_voip_connections—R, Iמציג ספקים מחוברים של לקוחות.
search_voip_numbersconnection_id, country, type, אופציונלי: area_codeR, I, Oמחפש במלאי הספק.
import_voip_numbersconnection_id, numbersD, Oמייבא מספרים שכבר בבעלותכם אצל הספק.
update_phone_numberphone_number_id, שדות ניתוב/תווית/webhookDמעדכן את ניתוב המספר, כולל הקצאת סוכן.
delete_phone_numberphone_number_id, confirm, אופציונלי: release_at_provider, confirmation_token בבקשה השנייהD, I, Oמשחרר מספר. תהליך דו-שלבי.

SMS

כליארגומנטים עיקרייםהערותמה הוא עושה
send_smsfrom_number, to, body, idempotency_keyD, I, Oשולח הודעת SMS אחת בטקסט פשוט דרך מספר Twilio או Telnyx מחובר.

שיחות

כליארגומנטים עיקרייםהערותמה הוא עושה
list_callsמסננים אופציונליים, limit, offsetR, Iמציג רשימת שיחות באמצעות מסנני היסטוריית השיחות של REST.
get_callcall_idR, Iמקבל את סטטוס השיחה והמטא-נתונים שלה.
get_call_transcriptcall_id, live אופציונליR, Iמקבל את תמלול השיחה.
get_call_audio_urlcall_id, download אופציונליR, I, Oמחזיר כתובת URL חתומה לאודיו; לעולם אינו מזרים אודיו דרך MCP.
get_call_gradecall_idR, Iמקבל את דירוג השיחה העדכני ביותר.
place_callagent_id, from_number, to_numberD, Oמבצע שיחה יוצאת אחת שאינה אידמפוטנטית.
export_callsמסנני שיחות, export_formatR, Iמייצא עד למגבלה של נקודת הקצה REST בפורמט JSON או CSV.

בדיקות ואימות

כליארגומנטים עיקרייםהערותמה הוא עושה
list_test_scenariosagent_idR, Iמציג תרחישי בדיקה.
create_test_scenarioagent_id, title, scenario_prompt, תנאים אופציונליים—יוצר תרחיש.
generate_test_scenariosagent_id, count אופציונלי, include_edge_cases, localeOיוצר תרחישים מתוך הנחיית הסוכן.
run_agent_testsagent_id, channel, consent_to_charge, בחירה/מערך אופציונלייםD, Oמפעיל תרחישים דרך האינטרנט או הטלפוניה.
get_test_runagent_id, batch_idR, Iמחזיר את מצב האצווה ואת התוצאות לכל תרחיש.
list_validation_runsagent_idR, Iמציג הרצות אימות אחרונות של טיוטות.
get_validation_statusagent_idR, Iמחזיר את מצב האימות העדכני ביותר ואת ההתאמה לטיוטה.

ידע

כליארגומנטים עיקרייםהערותמה הוא עושה
list_knowledge_bases—R, Iמציג מאגרי ידע.
create_knowledge_basename, description אופציונלי—יוצר מאגר ידע.
add_knowledge_documentknowledge_base_id, name, content—מוסיף טקסט או Markdown.
import_knowledge_urlurl, name אופציונליOמכניס דף ציבורי לתור לצורך קליטה בטוחה.
search_knowledgeknowledge_base_id, queryR, Iמחפש באמצעות אחזור בייצור.

אינטגרציות, webhooks ושרתי MCP מרוחקים

כליארגומנטים עיקרייםהערותמה הוא עושה
list_integrations—R, Iמציג אינטגרציות של פונקציות HTTP.
create_integrationdisplay_name, ‏spec של פונקציה, שדות אופציונליים של נקודת קצה—יוצר כלי HTTP. הוסיפו כותרות אימות בלוח הבקרה.
test_integrationurl, שיטה/גוף/זמן קצוב אופציונליים, integration_id עם header_names, ‏confirmation_token בבקשה השנייהD, Oשולח בקשת בדיקה מוגבלת המוגנת מפני SSRF. ערכי כותרות שמורים ממולאים מהאינטגרציה ונשלחים רק למארח שלה. POST (ברירת המחדל), PUT, PATCH ו-DELETE מתבצעים בשני שלבים; GET מופעל מיד.
list_webhook_endpoints—R, Iמציג נקודות קצה חתומות של וובהוקים.
list_webhook_deliveriesagent_id אופציונלי, endpoint_id אופציונליR, Iמציג תוצאות מסירה אחרונות של וובהוקים ללא מטענים.
create_webhook_endpointlabel, url, אירועים/סטטוס אופציונלייםOיוצר נקודת קצה חתומה של וובהוק.
test_webhook_endpointendpoint_idOשולח אירוע סינתטי באמצעות המסירה הרגילה.
list_mcp_servers—R, Iמציג שרתים מרוחקים שסוכנים קוליים יכולים לקרוא להם.
create_mcp_serverdisplay_name, urlOרושם ומסנכרן שרת מרוחק. שרתים הדורשים כותרות אימות מתווספים בלוח הבקרה.
sync_mcp_server_toolsserver_idD, Oמרענן את קטלוג הכלים של שרת מרוחק.

קמפיינים

כליארגומנטים עיקרייםהערותמה הוא עושה
list_campaigns—R, Iמציג קמפיינים יוצאים.
create_campaignשדות קמפיין—יוצר קמפיין טיוטה.
add_campaign_contactscampaign_id, contacts—מוסיף עד 5,000 אנשי קשר בפורמט JSON.
campaign_actioncampaign_id, action, consent_to_charge אופציונלי, confirmation_token בבקשה השנייהD, Oמפעיל את start, pause, resume או stop. הפעולות start ו-resume הן בשני שלבים; הפעולות pause ו-stop פועלות מיידית.
get_campaign_statscampaign_idR, Iמקבל מונים ותוצאות אחרונות.

קולות, חיוב ותיעוד

כליארגומנטים עיקרייםהערותמה הוא עושה
list_voices—R, Iמציג קולות ושפות נתמכות.
preview_voicevoice, language, textOיוצר דוגמה ומחזיר כתובת URL חתומה.
list_voice_clones—R, Iמציג שכפולי קול מותאמים אישית.
get_billing_summary—R, Iמחזיר את היתרה ואת מחירי הדרגות הקובעים; לא נחשפות פעולות שינוי תשלום.
search_docsquery, limit אופציונליR, I, Oמחפש באינדקס התיעוד הציבורי.
get_doc_pagepathR, I, Oמאחזר דף תיעוד ציבורי אחד בפורמט Markdown.

כל כלי המוצר משתמשים באותם נתיבי קוד REST כמו ה-API הציבורי. לכן אימות REST, הגדרת היקף ארגון, תפקידים, אישור חיוב, מכסות, אישור TCPA, בטיחות ספקים והתנהגות ביקורת חלים ללא שינוי.

אישור פעולות הרסניות

כלים המסומנים ב-D משנים או מסירים משהו, או מתחילים לחייג לאנשים אמיתיים. כלים שלא ניתן לבטל את פעולתם דורשים שתי בקשות. הבקשה הראשונה אינה משנה דבר ומחזירה:

{
  "status": "confirmation_required",
  "action": "Delete agent",
  "target": { "id": 195, "name": "Front Desk Receptionist" },
  "confirmation_token": "…",
  "expires_in_seconds": 600,
  "next_step": "…"
}

הסוכן מציג למשתמש מה יושפע ומבקש תשובת כן. לאחר מכן הוא חוזר על הבקשה עם אותם ארגומנטים בתוספת confirmation_token. אסימון תקף ל-10 דקות ומכסה ארגון אחד, כלי אחד ומערך מדויק אחד של ארגומנטים, לכן מחיקת שלושה סוכנים דורשת שלושה אישורים. campaign_action עם pause או stop מדלג על שלב זה, כדי שתמיד יהיה אפשר לעצור מיד קמפיין פעיל, וכך גם test_integration עם GET. חלק מהכלים המסומנים ב-D פועלים בבקשה אחת, משום שה-D מציין את השפעתם ולא אישור בצד השרת: update_agent מחליף את מה שהיה בטיוטה (discard_agent_draft מחזיר אותו), deploy_agent מחליף את התצורה הפעילה, update_phone_number מנתב מחדש שיחות פעילות, sync_mcp_server_tools מחליף את קטלוג הכלים של שרת מרוחק, import_voip_numbers מפנה מחדש מספרים אל המפעיל שלכם, run_agent_tests עשוי לצרוך אשראי, send_sms ו-place_call יוצרים קשר עם אדם אמיתי (place_call שומר אישור הסכמה משלו), ו-provision_phone_number רוכש מספר. ייתכן שלקוח ה-MCP שלכם עדיין יבקש מכם לאשר אותם.

הנחיות התחלה

prompts/list מפרסם חמישה תהליכי עבודה לשימוש חוזר:

  • create_inbound_receptionist
  • run_agent_tests
  • buy_and_attach_number
  • review_low_grade_calls
  • add_url_to_agent_knowledge

השתמשו ב-prompts/get עם שם ההנחיה המפורט והארגומנטים שהוצהרו עבורה כדי לקבל הודעת משתמש מוכנה להרצה.

משאבים

resources/list חושף הפניות ציבוריות המאוחסנות במטמון:

URIתוכן
thunderphone://docs/llms.txtאינדקס תיעוד ציבורי.
thunderphone://docs/quickstartMarkdown למדריך התחלה מהירה.
thunderphone://pricingMarkdown של התמחור הציבורי הנוכחי.

קראו משאב באמצעות resources/read. שליפות ציבוריות משתמשות בפסק זמן קצר, במגבלה של 2 MiB ובמטמון בתוך התהליך למשך עשר דקות.

פרוטוקול ושגיאות

השרת תומך בגרסאות הפרוטוקול 2025-06-18 ו-2025-03-26; הוא מחזיר בהד את גרסת הלקוח הנתמכת, ובמקרים אחרים בוחר ב-2025-06-18. הוא מממש את initialize, ping, כלים, הנחיות, משאבים והתראות. התראות מחזירות 202 Accepted. שרת חסר מצב זה אינו חושף מאזין SSE או מחיקת הפעלה, לכן GET ו-DELETE מחזירים 405 Method Not Allowed עם Allow: POST.

כשלים בכלים נשארים תגובות JSON-RPC מוצלחות עם isError: true. הטקסט שלהן כולל משפט קצר ולאחריו בלוק JSON:

{
  "code": "insufficient_balance",
  "detail": "There is not enough prepaid balance.",
  "next_step": "Call get_billing_summary, add funds in Organization > Billing, then retry."
}

הקידומת הייחודית outbound_tcpa_confirmation_required: נשמרת עבור place_call. שיטות JSON-RPC לא מוכרות מחזירות -32601 בתגובת HTTP 200. אצוות JSON-RPC אינן נתמכות על ידי MCP 2025-06-18 ומחזירות שגיאת בקשה לא תקפה -32600 נקייה.