# Vonage MCP MCP

> Vonage connects your AI agent to global communications, letting you send SMS, WhatsApp, and Viber messages from one place. It also handles identity verification codes, lets you check account balances, and manages all virtual phone numbers across different countries.

## Overview
- **Category:** talk-to-me
- **Price:** Free
- **Tags:** programmable-sms, whatsapp-api, 2fa, identity-verification, voice-api, multi-channel-messaging

## Description

Need to manage global messaging without opening ten separate dashboards? This MCP powers everything related to outbound communication—SMS, WhatsApp, and Viber. Your agent can handle the full customer lifecycle: starting a user's identity verification using an OTP code, sending that code via text, and then letting you check if the submitted code was correct. If your team manages numbers in multiple countries, you can list every virtual phone number and even update their specific inbound webhooks. It also gives you real-time financial oversight; you pull the current account credit balance or check the exact SMS cost for a new country before running a campaign. Because this connector handles sensitive credentials across so many channels, all your keys pass through Vinkius's zero-trust proxy, meaning they are used only in transit and never stored on disk. This allows your agent to act as one command center for every message you send.

## Tools

### cancel_verification_request
Stops an active identity verification request immediately.

### check_verification_code
Validates if a user's submitted OTP code is correct for an ongoing verification process.

### get_account_balance
Pulls the current remaining credit balance on your Vonage account.

### get_country_pricing
Retrieves the cost of sending an outbound SMS message to a specific country code.

### list_rented_numbers
Returns a list of every virtual phone number currently assigned to your account.

### send_sms
Sends a standard outbound SMS message using the target E.164 phone number and sender name.

### send_viber_message
Dispatches a service message to a recipient via the Viber messaging platform.

### send_whatsapp_message
Sends an outbound chat message using the verified WhatsApp Business API credentials.

### start_verification
Initiates a two-factor authentication check by sending a unique OTP code to a target number.

### update_number_webhook
Changes the URL that receives inbound SMS notifications for a specific virtual number.

## Prompt Examples

**Prompt:** 
```
Send an SMS to +123456789 saying 'Your order is ready for pickup!'.
```

**Response:** 
```
I've sent the SMS to +123456789 via Vonage. Message: 'Your order is ready for pickup!'. The message was successfully dispatched (Message ID: msg-abc).
```

**Prompt:** 
```
Start a verification for number +123456789 with brand 'MyCoolApp'.
```

**Response:** 
```
Identity verification started for +123456789. The OTP code has been sent. Your Request ID is 'req-xyz'. Please let me know the code when you receive it to complete the check.
```

**Prompt:** 
```
What is my current account balance and the SMS price for the UK?
```

**Response:** 
```
Your current Vonage balance is 42.50 EUR. For the United Kingdom (GB), the outbound SMS price is approximately 0.045 EUR per message. You have enough credit for roughly 944 messages.
```

## Capabilities

### undefined
undefined

### undefined
undefined

### undefined
undefined

### undefined
undefined

### undefined
undefined

### undefined
undefined

## Use Cases

### User needs immediate account verification.
A user signs up and your agent runs `start_verification` for their number. After receiving the code, the agent calls `check_verification_code`, confirming identity and completing onboarding without human intervention.

### Launching a new market campaign.
The marketing team needs to send 10,000 messages to Brazil. The agent first uses `get_country_pricing` for the country code, then estimates total spend and checks the balance with `get_account_balance` before calling `send_sms`.

### A critical number changes its routing.
The ops team notices a virtual number is misrouted. They use `list_rented_numbers` to find the ID and then immediately run `update_number_webhook`, ensuring all future messages land in the right queue.

### Handling multi-platform customer support.
A customer asks for help. The agent sends a confirmation link via `send_whatsapp_message` because that's where they prefer to communicate, keeping the whole interaction within your single chat interface.

## Benefits

- Don't guess campaign costs. Use `get_country_pricing` to check the exact SMS rate for any country before sending mass messages, saving time and money on planning.
- Keep users secure with integrated 2FA flows. Initiate a request using `start_verification`, then confirm identity by calling `check_verification_code`—all in one conversation.
- Manage your infrastructure without logging into portals. Use `list_rented_numbers` and immediately follow up with `update_number_webhook` to point all incoming messages to the right system.
- Handle diverse customer needs across channels. Send a status update via `send_whatsapp_message` if they prefer chat, or fall back to `send_sms` for critical alerts.
- Maintain financial control at all times. Before any large operation, run `get_account_balance` to confirm you have the necessary credit available.

## How It Works

The bottom line is that your AI agent becomes your single point of control for all global messaging needs, without you ever logging into the Vonage dashboard.

1. Subscribe to this MCP and input your Vonage API Key and Secret credentials into the platform.
2. Your AI client uses the exposed tools—for example, calling `list_rented_numbers`—to pull number details or check pricing using `get_country_pricing`.
3. The agent executes the communication flow (like sending a message via `send_whatsapp_message`) and returns confirmation data to your chat interface.

## Frequently Asked Questions

**How do I check the cost of sending an SMS using get_country_pricing?**
You provide the ISO 3166-1 alpha-2 country code to `get_country_pricing`. The tool returns the current outbound messaging rate for that specific region.

**Can I use send_whatsapp_message if my customer is only reachable by SMS?**
No, you must select the appropriate channel. If WhatsApp fails or isn't available, your agent can fall back to using `send_sms` for reliable communication.

**How does update_number_webhook work with my numbers?**
`update_number_webhook` lets you change the incoming callback URL for a specific number. This ensures that when Vonage sends an SMS, it hits your intended endpoint, not an old one.

**What if I need to stop a verification request?**
If a user starts a verification but then changes their mind, you can immediately use `cancel_verification_request` to abort the process and prevent further codes from being sent.

**How do I use the `check_verification_code` tool after running a verification request?**
You provide the user's entered code directly to `check_verification_code`. This tool confirms if the One-Time Password (OTP) is correct and completes the identity verification process for your account.

**What information does `list_rented_numbers` give me about my Vonage assets?**
It provides a comprehensive list of every virtual phone number tied to your account. This lets you easily audit all numbers, check their status, and confirm their associated capabilities.

**What happens if I try to `send_sms` when my balance is low?**
The system first checks your available credit using the `get_account_balance` tool. If funds are insufficient for the message, the sending attempt fails immediately and prevents any overspending.

**How do I send a service message to a user using `send_viber_message`?**
You provide your specific Viber Publisher ID when calling this tool. This allows you to manage communications through the Viber platform, complementing your SMS and WhatsApp efforts.