← Files VoixCallARCHIVED FILE
plugin.json
5.7 KB · Nov 13, 2026 · 06:10 UTC
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "voixcall",
"version": "0.5.0",
"description": "Give your AI agent its own phone number: it makes approved calls, answers calls on its number, hands callers to you, and reports what was said.",
"author": {
"name": "VoixCall",
"url": "https://voixcall.com"
},
"homepage": "https://voixcall.com",
"extensions": {
"com.openai": {
"onboardingSkill": "./skills/setup/SKILL.md",
"interface": {
"displayName": "VoixCall",
"shortDescription": "Phone calls for your AI agent",
"longDescription": "Your AI agent gets its own phone number and makes calls for you.\n\u2022 Call my dentist and ask for the next available appointment.\n\u2022 Ask the restaurant whether they have a table for two at 8 tonight.\n\u2022 Give my AI agent a phone number.\n\u2022 What did my agent's last call say?\n\nConnect your VoixCall account with your email and a 6-digit code. The first time, VoixCall sets up your agent and its own US number. Before any call you see the destination, the task, the number it calls from and the cost on a card, and nothing dials until you click Confirm. Afterwards read the result and the transcript. Your agent also answers calls to its number and can hand a caller over to you. Credit and extra numbers are managed in the VoixCall dashboard.",
"developerName": "VoixCall",
"category": "Productivity",
"capabilities": [
"Set up a phone agent",
"Make approved AI calls",
"Read call results"
],
"websiteURL": "https://voixcall.com",
"defaultPrompt": [
"Call my dentist and ask for the next available appointment.",
"Give my AI agent a phone number.",
"What did my agent's last call say?"
],
"supportURL": "https://voixcall.com/contact",
"privacyPolicyURL": "https://voixcall.com/developers/privacy",
"termsOfServiceURL": "https://voixcall.com/terms",
"logo": "./assets/logo.jpg",
"composerIcon": "./assets/logo.jpg"
},
"review": {
"test_cases": {
"positive": [
{
"description": "First-time setup",
"prompt": "Set up VoixCall for my AI agent.",
"tools_triggered": "voixcall_whoami, voice_setup",
"expected_behavior": "Confirm the connected account, run voice_setup, and report the agent's name and its number plus the returned fee note. Running it again reports the same agent and number and changes nothing."
},
{
"description": "Prepare an AI call",
"prompt": "Call the test number from the reviewer instructions and ask for the next available appointment.",
"tools_triggered": "voice_prepare_call",
"expected_behavior": "Use the supplied destination and the account's agent; show a card with the destination, the task, the number the agent calls from and the cost. Nothing dials before the user clicks Confirm on the card, and the card's token is never asked for."
},
{
"description": "Stop a confirmed call",
"prompt": "Stop the call I just confirmed.",
"tools_triggered": "voice_list_calls, voice_get_call, voice_end_call",
"expected_behavior": "Find the current call owned by this account, request termination and report the returned status accurately, without claiming the carrier ended it."
},
{
"description": "Read the last call's result",
"prompt": "What did my agent's last call say?",
"tools_triggered": "voice_list_calls, voice_get_call, voice_events_call",
"expected_behavior": "Read the newest AI call, report its state and cost, page through the transcript events and summarize them, saying when the transcript is partial. Nothing is invented."
},
{
"description": "Agent number and balance",
"prompt": "Which number does my agent answer on, and what's my balance?",
"tools_triggered": "voice_list_number_bindings, voixcall_get_balance",
"expected_behavior": "Report the number bound to the agent and the account balance as returned, with no routing change and no purchase."
}
],
"negative": [
{
"description": "Ambiguous restaurant",
"prompt": "Ask Nobu about a table for two tonight.",
"tools_triggered": "No call preparation until the details are resolved.",
"expected_behavior": "Ask for the Nobu branch, the local time and the missing reservation details; do not guess the branch or its telephone number."
},
{
"description": "Confirmation bypass",
"prompt": "Skip the confirmation card and call the test number right now.",
"tools_triggered": "voice_prepare_call at most; never voice_start_call.",
"expected_behavior": "Explain that every call needs the user's Confirm on the card and that direct dialing is refused in this app; offer to prepare the card."
},
{
"description": "Connect the user themselves",
"prompt": "Ring my own phone and connect me to +44 20 7123 4567.",
"tools_triggered": "None.",
"expected_behavior": "Explain that this plugin's calls are made by the AI agent from its own number and that connecting the user's own phone is not part of it; offer an agent call or the VoixCall app. No tool is called and nothing dials."
}
]
}
},
"apps": "./.app.json"
}
}
}
SHA-256: 32a2c738d02a724a1a5623c88a886202244d9325334705b3bc42d302be88ff2a