# LiveKit Real-Time Rooms Alternative MCP for AI Agents MCP

> LiveKit Real-Time Rooms Alternative MCP lets you manage live audio and video sessions through your AI agent. You can create rooms, control participants, moderate tracks, and broadcast data directly to connected clients.

## Overview
- **Category:** communication
- **Price:** Free
- **Endpoint:** https://edge.vinkius.com/vk_preview_nlZBaJ0GlGMCFllXCArNFWJJOBrHb4gCZhVb9hEY/mcp
- **Tags:** livekit, voice-chat, video-rooms, webrtc, real-time, twirp, ai-agents, open-source

## Description

This MCP connects your AI agents to the LiveKit framework for real-time communication. Instead of manually toggling settings in a dashboard, you can instruct your agent to spin up new voice or video rooms on demand. It handles everything from managing participant lists to muting audio tracks during a live session. You can even send data payloads to everyone in a room to sync game states or update UI elements. By connecting this through the Vinkius catalog, you get a direct line of control over your media infrastructure without writing custom integration code for every new agent. It's about turning your AI from a passive observer into an active moderator and participant in live streams.

## Tools

### create_ttvoice_room
Starts a new LiveKit room with your chosen settings. Use this to launch new sessions for users.

### delete_ttvoice_room
Shuts down a room and disconnects everyone inside. It's the quickest way to end a session.

### get_ttvoice_participant
Pulls detailed info about a specific person in a room. Great for checking user status.

### list_ttvoice_participants
Shows every person currently connected to a specific room. Use this to audit active users.

### list_ttvoice_rooms
Returns a list of all active rooms on your server. Perfect for seeing what's running.

### mute_ttvoice_track
Stops audio or video from playing for a specific track. Essential for real-time moderation.

### remove_ttvoice_participant
Kicks a user out of a room and revokes their access token. Use this to enforce room limits.

### send_ttvoice_data
Sends a message or payload to everyone in the room. It works for both reliable and low-latency needs.

### update_ttvoice_participant_metadata
Changes the metadata attached to a participant. Useful for updating user roles or status.

### update_ttvoice_room_metadata
Updates information at the room level. Use this to change settings visible to all clients.

## Prompt Examples

**Prompt:** 
```
Are there any active rooms right now?
```

**Response:** 
```
I've checked your LiveKit server. Here are the currently active sessions:

| Room Name | Participants |
| :--- | :--- |
| **support-call-42** | 2 |
| **team-standup** | 5 |
| **demo-room** | 0 |

Which one would you like to manage?
```

**Prompt:** 
```
Mute the user 'bad_audio_user' in the support room.
```

**Response:** 
```
Done. I have successfully muted the audio track for **bad_audio_user** in the `support-call-42` room to prevent disruption.
```

**Prompt:** 
```
undefined
```

**Response:** 
```
undefined
```

**Prompt:** 
```
undefined
```

**Response:** 
```
undefined
```

## Capabilities

### Spin up new rooms
Create voice or video sessions with specific participant limits.

### Moderate live audio
Mute or unmute tracks to keep the conversation clean.

### Manage attendees
Add or remove people from active media streams.

### Broadcast updates
Send data messages to all connected users at once.

### Control room info
Update metadata for rooms and participants dynamically.

## Use Cases

### Automating event moderation
An operator asks the agent to mute a disruptive user in an active room.

### Dynamic game matchmaking
A developer uses the agent to create new voice channels as players join a lobby.

### AI-driven customer support
A support bot joins a video call and updates its metadata when it starts helping a client.

### Live data broadcasting
An agent sends real-time score updates to all participants in a sports streaming room.

## Benefits

- Automate room creation: Use your agent to launch new audio or video sessions instantly.
- Hands-free moderation: Instruct your agent to mute noisy tracks using mute_ttvoice_track.
- Real-time data sync: Send updates to all participants by triggering send_ttvoice_data.
- Dynamic participant management: Let your agent handle removals or metadata updates via remove_ttvoice_participant.
- Centralized control: Manage your entire LiveKit infrastructure from a single AI interface.

## How It Works

The bottom line is you get programmatic control over LiveKit media sessions via natural language.

1. Get your LiveKit API Key, Secret, and Host URL from your project settings.
2. Enter these credentials into the MCP configuration.
3. Ask your AI agent to perform actions like creating a room or muting a user.

## Frequently Asked Questions

**How can I use LiveKit Real-Time Rooms Alternative to moderate my live streams?**
You can instruct your agent to mute or unmute specific audio and video tracks. This allows you to handle disruptive users instantly through natural language commands.

**Can an AI agent create new video sessions using LiveKit Real-Time Rooms Alternative?**
Yes. Your agent can spin up new rooms with custom settings, such as participant limits and timeouts, without any manual configuration.

**Is it possible to send messages to all users with LiveKit Real-Time Rooms Alternative?**
Absolutely. You can use the data broadcasting feature to send real-time updates or game state changes to every person connected to a room.

**How do I see who is currently in a room using LiveKit Real-Time Rooms Alternative?**
You can simply ask your agent to list the participants. It will retrieve and display everyone currently active in that specific session.

**Can I update user information during a live call with LiveKit Real-Time Rooms Alternative?**
Yes, you can dynamically update participant metadata. This is useful for changing user roles or status updates visible to all clients.

**Can I list all active rooms on my LiveKit server?**
Yes! Use the `list_ttvoice_rooms` tool. It calls the LiveKit RoomService ListRooms endpoint and returns all currently open rooms with their participant count, metadata, and creation time.

**How do I mute a participant's microphone?**
First use `list_ttvoice_participants` to get the track SID for the participant's audio track. Then call `mute_ttvoice_track` with the room name, participant identity, track SID, and muted set to 'true'.

**Does this work with self-hosted LiveKit servers?**
Yes! Just provide your self-hosted server's URL (e.g., https://livekit.yourserver.com) as the Host URL, along with the API Key and Secret from your server's config.yaml.