mcpField
C
create-call

create-call

github.com/vapiaiその他671.1k 回インストール今日更新
リポジトリ

create-call について

Vapiで電話・ウェブ・予約・一時アシスタント・一括通話を作成するスキルです。API例を含み、通話を自動化する開発者向けです。

主な機能

  1. 01電話とウェブ通話の作成
  2. 02予約通話と一括通話
  3. 03一時アシスタントのインライン定義
  4. 04通話の一覧表示と取得
  5. 05任意の通話メタデータの付与

活用シーン

  1. 01ウェブ通話で音声アシスタントをテスト
  2. 02顧客への通話を予約
  3. 03複数の番号への一括発信

MCP 対応

READMEでは、対応するAIエージェントがVapiのドキュメントを検索できる、VapiのドキュメントMCPサーバーを紹介しています。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/vapiai/skills --skill create-call

インストール後、Claude Code で/create-callを入力して読み込まれたか確認します。

詳細

Vapi の通話作成

Vapi の API を使用して、発信電話、ウェブ通話、一括通話を開始します。音声アシスタントを実際の電話番号に接続し、プログラムからテストできます。

セットアップ: VAPI_API_KEY が設定されていることを確認してください。必要に応じて setup-api-key スキルを参照してください。

クイックスタート — 発信電話

cURL
curl -X POST https://api.vapi.ai/call \
  -H "Authorization: Bearer $VAPI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "assistantId": "your-assistant-id",
    "phoneNumberId": "your-phone-number-id",
    "customer": {
      "number": "+11234567890"
    }
  }'
TypeScript(サーバー SDK)
import { VapiClient } from "@vapi-ai/server-sdk";

const vapi = new VapiClient({ token: process.env.VAPI_API_KEY! });

const call = await vapi.calls.create({
  assistantId: "your-assistant-id",
  phoneNumberId: "your-phone-number-id",
  customer: {
    number: "+11234567890",
  },
});

console.log("Call created:", call.id);
Python
import requests
import os

response = requests.post(
    "https://api.vapi.ai/call",
    headers={
        "Authorization": f"Bearer {os.environ['VAPI_API_KEY']}",
        "Content-Type": "application/json",
    },
    json={
        "assistantId": "your-assistant-id",
        "phoneNumberId": "your-phone-number-id",
        "customer": {"number": "+11234567890"},
    },
)

call = response.json()
print(f"Call initiated: {call['id']}")

通話の種類

発信電話

アシスタント、Vapi の電話番号、顧客の電話番号が必要です。

{
  "assistantId": "assistant-id",
  "phoneNumberId": "phone-number-id",
  "customer": {
    "number": "+11234567890",
    "name": "John Doe",
    "numberE164CheckEnabled": true
  }
}
ウェブ通話

ブラウザーからの通話向けです。電話番号は不要です。クライアント側で Vapi Web SDK を使用します。

{
  "assistantId": "assistant-id"
}

クライアント側(JavaScript):

import Vapi from "@vapi-ai/web";

const vapi = new Vapi("your-public-key");
vapi.start("your-assistant-id");
一時的なアシスタントによる通話

保存済みのアシスタントを参照する代わりに、アシスタントをインラインで定義します。

{
  "assistant": {
    "name": "Quick Test",
    "firstMessage": "Hello! This is a test call.",
    "model": {
      "provider": "openai",
      "model": "gpt-4.1",
      "messages": [
        {
          "role": "system",
          "content": "You are a test assistant. Confirm the call is working and end politely."
        }
      ]
    },
    "voice": { "provider": "vapi", "voiceId": "Elliot", "version": 2 },
    "transcriber": { "provider": "deepgram", "model": "nova-3", "language": "en" }
  },
  "phoneNumberId": "phone-number-id",
  "customer": {
    "number": "+11234567890"
  }
}

通話のスケジュール設定

将来の時刻に通話をスケジュール設定します。

{
  "assistantId": "assistant-id",
  "phoneNumberId": "phone-number-id",
  "customer": {
    "number": "+11234567890"
  },
  "schedulePlan": {
    "earliestAt": "2025-06-15T14:00:00Z",
    "latestAt": "2025-06-15T15:00:00Z"
  }
}
  • earliestAt — 通話を試みる最も早い時刻(ISO 8601)
  • latestAt — 通話を試みる最も遅い時刻(任意)
  • assistantId を使用する場合、通話時点でのアシスタントの最新バージョンが使用されます
  • アシスタント設定を固定するには、代わりに assistant(一時的)を使用します

一括通話

1 つのリクエストで複数の番号に通話します。

{
  "assistantId": "assistant-id",
  "phoneNumberId": "phone-number-id",
  "customers": [
    { "number": "+11234567890", "name": "Alice" },
    { "number": "+10987654321", "name": "Bob" },
    { "number": "+15551234567", "name": "Carol" }
  ]
}

schedulePlan と組み合わせると、一括通話をスケジュール設定できます。

ユーザーが永続的な Campaign リソースを必要としない場合に限り、この /call 一括機能を使用してください。キャンペーンレベルのモニタリング、連絡先の結果、重複排除、キャンセル、同時実行、Webhook が必要な場合は、create-campaign スキルを使用してください。

メタデータ付きの通話

通話中に利用できるカスタムデータを渡します。

{
  "assistantId": "assistant-id",
  "phoneNumberId": "phone-number-id",
  "customer": {
    "number": "+11234567890"
  },
  "metadata": {
    "orderId": "ORD-12345",
    "department": "billing"
  }
}

通話の管理

# List calls
curl "https://api.vapi.ai/call?limit=10" \
  -H "Authorization: Bearer $VAPI_API_KEY"

# Get a specific call
curl https://api.vapi.ai/call/{id} \
  -H "Authorization: Bearer $VAPI_API_KEY"

# Get call with transcript and recording
curl https://api.vapi.ai/call/{id} \
  -H "Authorization: Bearer $VAPI_API_KEY"
# Response includes: artifact.transcript, artifact.recordingUrl,
# analysis.summary, and costBreakdown when those outputs are enabled

# Delete a call
curl -X DELETE https://api.vapi.ai/call/{id} \
  -H "Authorization: Bearer $VAPI_API_KEY"

通話レスポンス

通話の作成に成功すると、次の内容が返されます。

{
  "id": "call-uuid",
  "orgId": "org-uuid",
  "type": "outboundPhoneCall",
  "status": "queued",
  "assistantId": "assistant-id",
  "phoneNumberId": "phone-number-id",
  "customer": {
    "number": "+11234567890"
  },
  "createdAt": "2025-01-15T10:00:00Z"
}

通話ステータス:queued → ringing → in-progress → ended

コンプライアンスに関する警告

同意を得ずに電話番号へ自動発信することは、FCC 法違反です。自動通話キャンペーンを開始する前に、TCPA の同意要件を確認してください。

参考資料

追加リソース

Vapi は、互換性のある AI エージェントから Vapi のナレッジベースにアクセスできるドキュメント MCP サーバーを提供しています。このスキルの範囲を超える高度な設定、トラブルシューティング、SDK の詳細などについては、ドキュメント検索を使用してください。

手動セットアップ: エージェントが設定を自動検出しない場合は、次を実行してください。

claude mcp add vapi-docs -- npx -y mcp-remote https://docs.vapi.ai/_mcp/server

対応する各エージェントのセットアップ手順については、Vapi MCP 統合ガイドを参照してください。

コメント