# LiveKit MCP for AI Agents AI Agent Connect

> LiveKit MCP lets you manage real-time video, audio, and data sessions directly through your AI agent. You can create rooms, handle participant permissions, mute tracks, and trigger recordings without leaving your chat interface. It connects your LiveKit infrastructure to your agent so you can orchestrate live communication environments using natural language.

## Overview
- **Category:** communication-messaging
- **Price:** Free
- **Endpoint:** https://edge.vinkius.com/vk_preview_4uxLOatgtvJyaigQtiYOMWFntnvDipZI6XFcq5Bo/ai-agent-connect
- **Tags:** webrtc, real-time-audio, real-time-video, media-streaming, participant-management, session-recording

## Description

This Connector connects your LiveKit infrastructure to your AI agent so you can orchestrate real-time communication environments using natural language. Instead of jumping into a dashboard to check who's in a room or manually adjusting permissions, you can just tell your agent to do it. It handles the heavy lifting of WebRTC sessions, letting you manage room lifecycles, mute specific audio or video tracks, and send data packets to users in real time. If you need to record a session, you can trigger room-wide recordings or specific web page captures on the fly. It also handles the complexity of SIP trunks and phone number management, making it much easier to bring phone calls into your live rooms. You'll find it's a lot faster to manage participant metadata or update permissions through a conversation than by clicking through a console. Vinkius makes it easy to get this connected so your agent can act as a real-time session administrator for your communication app.

## Tools

### create_room
Create a room with specific settings. You can define participant limits and timeouts for new sessions.

### create_sip_dispatch_rule
Map incoming calls to specific rooms based on phone numbers or pins. This automates your telephony routing.

### create_sip_inbound_trunk
Define how incoming SIP calls are handled. Use this to set up your primary phone system.

### release_phone_numbers
Release a number back to the inventory. Use this to free up numbers you no longer need.

### remove_participant
Kick a participant from a room. Use this to remove inactive or unauthorized users.

### search_phone_numbers
Search for available numbers by country/area code. This helps you find new numbers for your app.

### start_track_egress
Export a single track without transcoding. Use this for high-quality individual stream exports.

### stop_egress
Stop an active egress. Use this to end a recording or export job immediately.

### create_dispatch
Explicitly trigger a named agent to join a specific room. This helps automate how your bots enter sessions.

### create_ingress
Provision an ingress point for RTMP, WHIP, or URL pull. Use this to bring external streams into your room.

### create_sip_outbound_trunk
Define a trunk for dialing out. This is necessary for making calls from your application.

### create_sip_participant
Dial a SIP number and bring them into a LiveKit room. This bridges phone calls into your video sessions.

### delete_dispatch
Remove a dispatch rule. Use this to clean up old agent routing logic.

### delete_ingress
Remove an ingress point. This cleans up unused RTMP or WHIP connections.

### delete_room
Forcibly disconnect all participants and delete the room. Use this for immediate session termination.

### delete_sip_dispatch_rule
Remove a SIP dispatch rule. This removes a specific number-to-room mapping.

### delete_sip_trunk
Remove a SIP trunk configuration. Use this to delete old telephony connections.

### get_participant
Get info for a specific participant. This lets your agent see detailed user data in a room.

### list_dispatch
List dispatches for a room. Use this to see how agents are mapped to specific sessions.

### list_egress
List active egress jobs. This shows you what recordings are currently in progress.

### list_ingress
List provisioned ingresses. Use this to see all your active RTMP or WHIP points.

### list_participants
List participants in a room. This lets your agent see everyone currently connected.

### list_phone_numbers
List numbers owned by the project. Use this to see all your active telephony assets.

### list_rooms
List active/open rooms. This gives your agent a bird's-eye view of your entire instance.

### list_sip_inbound_trunk
List configured SIP inbound trunks. Use this to check your current phone receiving rules.

### list_sip_outbound_trunk
List configured SIP outbound trunks. Use this to check your current phone dialing rules.

### mute_published_track
Mute/unmute a participant's track. This allows your agent to silence noisy users instantly.

### purchase_phone_number
Buy a number and optionally assign a SIP dispatch rule. This automates your telephony expansion.

### send_data
Send data packets to participants. Use this for custom signaling or real-time updates.

### start_participant_egress
Record a specific participant's audio and video. Use this for individual user captures.

### start_room_composite_egress
Record an entire room using a web layout. This captures the full session view.

### start_track_composite_egress
Record one audio and one video track together. This is useful for specific multi-track captures.

### start_web_egress
Record any web page. This lets your agent capture specific URLs as a video feed.

### transfer_sip_participant
Transfer an active SIP call to another number or URI. This allows for dynamic call routing.

### update_ingress
Update room or participant settings for a reusable ingress. Use this to change stream inputs.

### update_layout
Change the web layout of an active RoomComposite egress. This lets your agent adjust the recording view.

### update_participant
Update metadata or permissions for a participant. Use this to change user roles on the fly.

### update_phone_number
Change the dispatch rule for a number. This updates how a phone call is routed.

### update_room_metadata
Update room-wide metadata. This lets your agent change room info like titles or tags.

### update_stream
Add/remove RTMP/SRT output URLs from an active stream. This manages your live broadcast destinations.

### update_subscriptions
Subscribe/unsubscribe a participant from specific tracks. Use this to manage what users can see.

## Prompt Examples

**Prompt:** 
```
Can you see who is currently in the 'Support' room?
```

**Response:** 
```
I've checked the 'Support' room for you. There are currently 4 participants:

| Participant | Role | Status |
| :--- | :--- | :--- |
| user_88 | Agent | Active |
| user_21 | Customer | Active |
| user_99 | Agent | Active |
| user_04 | Customer | Muted |

Would you like me to take any action with these users?
```

**Prompt:** 
```
Mute the audio for the customer in the Support room.
```

**Response:** 
```
I've successfully muted the audio track for **user_04** in the **Support** room. They will still be visible, but their audio is now silenced.
```

**Prompt:** 
```
Start a recording of the main lobby.
```

**Response:** 
```
I've initiated a room-wide recording for the **Main Lobby**. 

**Recording Details:**
- **Type:** Room Composite Egress
- **Layout:** Default Web Layout
- **Status:** Started

I'll let you know if you need me to stop it or change the layout.
```

## Capabilities

### Manage room lifecycles
Create, list, and delete rooms with custom timeouts and participant limits.

### Control audio and video tracks
Mute or unmute specific tracks for any participant in a session.

### Transmit real-time data
Send data packets to specific participants or entire rooms for custom signaling.

### Trigger live recordings
Start room-wide recordings, specific track exports, or web page captures.

### Handle SIP telephony
Manage SIP trunks, phone numbers, and bridge incoming calls into live rooms.

### Update participant permissions
Modify individual participant metadata and subscriptions on the fly.

## Use Cases

### Muting a noisy bot
An AI agent is creating too much noise during a call. The user tells the agent to 'Mute the bot's audio track' using `mute_published_track` to restore order.

### Bridging a phone call
A customer wants to join a video meeting via phone. The user asks the agent to 'Bring in the number 555-0199' which uses `create_sip_participant` to bridge the call.

### Recording a webinar
A user wants to archive a live stream. They ask the agent to 'Start recording the lobby' which triggers `start_room_composite_egress` to capture the layout.

### Managing a busy lobby
A room is getting crowded. The user asks the agent to 'List everyone in the room' using `list_participants` and then 'Kick the inactive users' using `remove_participant`.

## Benefits

- Automated session management: Use create_room and delete_room to handle your live room lifecycles without manual dashboard clicks.
- Instant track control: Use mute_published_track to let your agent silence noisy participants or manage audio levels on the fly.
- Automated recordings: Trigger start_room_composite_egress or start_web_egress to capture sessions and web pages automatically.
- Simplified telephony: Use create_sip_participant to bridge phone calls into your live video rooms without manual routing.
- Dynamic data signaling: Use send_data to push real-time updates or custom signaling to all participants in a room instantly.
- Live permission updates: Use update_participant to change user roles and metadata during a live session without refreshing.

## How It Works

The bottom line is your AI agent becomes a real-time administrator for your video and audio infrastructure.

1. Subscribe to the LiveKit MCP on Vinkius.
2. Enter your LiveKit Server URL and API Token/Secret.
3. Start giving commands like 'mute user X' or 'create a new room' to your agent.

## Frequently Asked Questions

**Can the LiveKit MCP help my AI bot manage video rooms?**
Yes, it allows your AI agent to create, list, and delete rooms instantly. Your agent can manage the entire lifecycle of a session without you having to touch a dashboard.

**How does the LiveKit MCP handle phone calls?**
It connects SIP trunks and allows your agent to dial numbers into live rooms. This makes it easy to bridge traditional phone calls into your modern video infrastructure.

**Can I use the LiveKit MCP to record live streams?**
Yes, it can trigger recordings for rooms, specific audio or video tracks, and even entire web pages. Your agent can start and stop these recordings on command.

**Does the LiveKit MCP allow my agent to mute people?**
Yes, it can mute or unmute specific audio and video tracks instantly. This is perfect for bots that need to manage participant noise levels in real time.

**Can I manage participant permissions with the LiveKit MCP?**
Yes, your agent can update metadata and permissions for any user in a room. You can change roles or access rights through a simple conversation with your agent.

**How do I connect LiveKit to my AI agent?**
Once you subscribe on Vinkius, you just need to provide your LiveKit Server URL and API keys. Your agent can then start managing your communication infrastructure immediately.

**Can I remotely mute a participant who has background noise?**
Yes. Use the `mute_published_track` tool by providing the room name, participant identity, and the specific track SID. You can set the `muted` boolean to true to silence them immediately.

**Is it possible to record a session for later viewing?**
Absolutely. You can use `start_room_composite_egress` to record an entire room using a web layout, or `start_web_egress` to record a specific URL. These tools leverage LiveKit's Egress service.

**How do I kick a disruptive user from a room?**
You can use the `remove_participant` tool. Simply provide the room name and the identity of the participant you wish to disconnect.