# Plivo MCP

> Plivo MCP Server gives your AI client full access to global telephony and messaging tools. It lets you send bulk SMS messages, pull call logs, check message delivery statuses, and manage all your rented phone numbers—all from a chat window. Forget logging into the Plivo dashboard; just ask your agent for the data.

## Overview
- **Category:** industry-titans
- **Price:** Free
- **Tags:** sms-api, voice-api, telephony-automation, global-messaging, call-logs

## Description

You're gonna connect your Plivo account right to your AI client, and suddenly you can handle global SMS and voice logs just by talking to your agent. This setup takes all those complicated Plivo APIs and turns them into simple commands for your workflow. Forget logging into the dashboard; you just ask your agent for what you need.

**Sending and Tracking Messages:** When you send a text, you use `send_sms` to dispatch new messages anywhere in the world using E.164 format. You can track old texts too: running `list_messages` gives you a log of every message that came in or went out. If you need the full story on one specific exchange, `get_message_details` pulls all the context for that single text, showing its status and exact content.

**Reviewing Call History and Recordings:** You can pull call history using `list_calls`, which generates a list of recent calls, giving you the caller's number and how long they talked. Need more detail on one specific call? `get_call_details` grabs specifics like the cost, duration, and status for that single log entry. For recordings, running `list_recordings` gives you a full inventory of all available recorded calls along with their metadata. You can then retrieve the actual info and link to a recording by calling `get_recording`. 

**Managing Numbers and Accounts:** To check your setup, you'll use `list_numbers` to see every single phone number you've rented through Plivo. If you need to know what one of those numbers can do or how it's configured, `get_number_details` provides that capability information immediately. You can also check the books: `get_account_info` pulls your current account details, including exactly how many credits and money you got left. To keep tabs on system setup, `list_applications` displays all the XML applications you've set up in your Plivo account.

**The whole operation is designed for direct access:** You don't have to jump between screens or remember complex API calls. If you need a quick count of credits, you ask for it and get the data. If you want to see if a message went through, you check the status using `get_message_details`. If you wanna know what numbers are active, you call `list_numbers`.

**How It Works in Practice:** Imagine your agent needs to send out 100 alerts. You don't copy/paste anything; you just tell it to run `send_sms`, and it handles the dispatching of all those texts globally. If one of those messages fails, you can check the failure reason by running a specific query against `get_message_details`. 

When your company needs to review customer interactions, you don't sift through PDFs. You use `list_calls` to see who called and for how long. Then, if they left a recording, calling `list_recordings` gives you the list, and `get_recording` pulls the link and metadata so you can access it instantly.

**It's all about efficiency:** If your team needs to verify which number is best for international outreach, you run `get_number_details`. You don't have to guess; the tool tells you what that number can handle. And if you wanna know how much juice you got left before sending out a massive campaign, running `get_account_info` gives you the balance right off the bat.

You'll find that all these tools—from checking your credits with **`get_account_info`** to listing every single available number with **`list_numbers`**, and from tracking historical calls using **`list_calls`** down through getting the specific data points on one call log entry with **`get_call_details`**—all work together in a conversation. It keeps your entire communication stack visible, actionable, and right where you are talking to your agent.

## Tools

### get_number_details
Provides configuration and capability information for a single phone number.

### get_recording
Retrieves the metadata and link for a specific recorded call file.

### list_recordings
Generates a list of all available recorded calls and their metadata.

### get_account_info
Pulls current Plivo account details, including credits and balance information.

### get_call_details
Retrieves specific data points for a single recorded call log entry.

### get_message_details
Gets the full details, status, and content of one specific text message.

### list_applications
Lists all XML applications you have configured in your Plivo account.

### list_calls
Retrieves a list of recent call logs, including caller and duration data.

### list_messages
Generates a log of all messages sent or received by your account.

### list_numbers
Lists every rented phone number associated with your Plivo account.

### send_sms
Sends a new SMS message to a specified recipient number in E.164 format.

## Prompt Examples

**Prompt:** 
```
List my last 5 SMS messages on Plivo.
```

**Response:** 
```
I've retrieved your messages. You have 5 recent entries including an SMS to '+1234567890' (Status: Delivered) and an incoming text from '+0987654321'. Which one would you like to see details for?
```

**Prompt:** 
```
Send an SMS notification to all customers in the delivery queue with their tracking numbers.
```

**Response:** 
```
Bulk SMS sent successfully. 47 messages dispatched from your Plivo number +1-555-0142. Delivery status: 44 delivered, 2 queued, 1 failed (invalid number). Average delivery time: 1.3 seconds. Message template: "Your order is on its way! Track it here: [tracking_url]". Cost: $0.0075 per message, total: $0.35. 3 recipients opted out of future messages.
```

**Prompt:** 
```
Show me all phone numbers in my Plivo account with their capabilities and monthly costs.
```

**Response:** 
```
You have 6 active phone numbers. +1-555-0142 (US): Voice + SMS, $1.00/mo, used for transactional alerts. +44-20-7946-0958 (UK): Voice + SMS, $1.50/mo, customer support line. +1-555-0187 (US toll-free): Voice only, $2.00/mo, sales hotline. +91-22-4000-1234 (India): SMS only, $0.50/mo, OTP verification. 2 additional numbers in Canada and Germany. Total monthly cost: $8.50.
```

## Capabilities

### Send and track SMS messages
Dispatch new text messages globally or check the delivery status of old ones.

### Review call history and recordings
List all past calls, get specific call details, and retrieve metadata for recorded conversations.

### Manage phone numbers and accounts
See a list of every active number, check its capabilities, or pull your account balance and credits in one go.

### View message logs
List all incoming and outgoing text messages, retrieving detailed data on any single entry.

### Monitor system settings
List configured Plivo applications to understand how automated call handling is set up.

## Use Cases

### Investigating a missed appointment
A support agent knows a customer called but can't find the details. They ask their agent: 'What was the last call from +1234567890?' The agent runs `list_calls` and provides the log ID. The agent then uses `get_call_details` to show the duration and status, immediately solving the customer's query.

### Auditing campaign communications
The marketing team needs to verify if a bulk SMS sent yesterday actually reached all targets. They ask their agent to `list_messages`. The agent pulls the log, and they use `get_message_details` on a few entries to confirm 'Delivered' status and total cost.

### Verifying number capabilities
An ops lead is setting up a new regional campaign. They run `list_numbers` to see all available lines, then use `get_number_details` on the candidate line to confirm if it supports international calling or specific messaging features.

### Reviewing customer support interactions
A manager needs to review a complex support interaction. They ask their agent for call recordings related to the user ID. The agent runs `list_recordings` and provides the link, while also pulling relevant message history via `get_message_details`.

## Benefits

- Check message delivery status instantly. Instead of guessing if a text went through, use `get_message_details` to confirm the exact status (delivered, failed, etc.).
- Never miss a key detail again. Need context on a call? Use `list_calls` and then drill down with `get_call_details` to see cost, duration, and timestamps.
- Keep track of your phone inventory easily. Run `list_numbers` to see every active number across different regions and check their capabilities using `get_number_details`.
- Automate communication alerts without API code. Use the `send_sms` tool to dispatch bulk notifications or transactional alerts directly through your agent's conversation flow.
- Keep account costs visible. Always start by running `get_account_info`. This confirms your current balance and credits before any major operation, preventing overspending.

## How It Works

The bottom line is that your AI client acts as a dedicated communication administrator, allowing you to manage all Plivo functions without opening the web dashboard.

1. Subscribe to the server and enter your Plivo Auth ID and Auth Token from your console dashboard.
2. Your AI client connects, authenticating with Plivo's APIs via the MCP standard.
3. You issue a natural language command (e.g., 'List my last 10 call logs'). Your agent executes the appropriate tool (`list_calls`) and returns structured data.

## Frequently Asked Questions

**How do I check my Plivo account balance using `get_account_info`?**
You simply ask the agent to run `get_account_info`. It returns a structured JSON object containing your current credit amount and overall billing status, so you always know if you can afford another message.

**Can I use `list_numbers` to see all my phone numbers?**
Yes. `list_numbers` provides a clear list of every number associated with your account. If you need more details on one specific line, like its region or cost, run `get_number_details` next.

**What is the difference between `list_calls` and `list_messages`?**
`list_calls` tracks voice conversations (duration, caller ID), while `list_messages` handles all text-based communication. They track different media types but both are critical for full customer context.

**How do I send an SMS using the `send_sms` tool?**
You must provide the recipient number in E.164 format and confirm that you have a verified Plivo source number or Sender ID. The agent executes this, sending the text immediately.

**Do I need `list_recordings` to check call transcripts?**
`list_recordings` gives you the metadata and access link for a recording. If you need the actual content or transcript, you'll use `get_recording` after obtaining the ID.

**When I use `get_call_details`, what specific information do I retrieve about a single call?**
It gives you full metadata for one specific call ID. You must provide the unique identifier to get details like duration, final status (e.g., completed or failed), and associated cost metrics.

**What does `list_applications` let me see about my Plivo account?**
This tool lists all configured XML applications for your account. It helps you track the automated logic that handles incoming calls and messages, giving oversight without logging into the web dashboard.

**How do I check the capabilities of a single phone number using `get_number_details`?**
Provide the specific number to get its detailed profile. The response shows key info like its geographical region, supported services (Voice/SMS), and current monthly cost.

**Can my AI automatically find the details of a specific message by its UUID?**
Yes! Use the `get_message` tool with the Message UUID. Your agent will respond with complete metadata, including delivery status, timestamps, and cost in seconds.

**How do I find my Plivo Auth ID and Auth Token?**
Log in to your [**Plivo Console Dashboard**](https://console.plivo.com/dashboard/), and you will find your unique Auth ID and Auth Token displayed prominently on the main page.

**Does this work for international messaging?**
Absolutely. Plivo supports global SMS and Voice services. As long as your account has the required credits and permissions, the AI can trigger communications to any supported destination.