
Attendee MCP Server
A Model Context Protocol server that allows users to create and manage meeting bots capable of joining video calls, speaking, sending chat messages, and retrieving meeting transcripts.
Tools
create_meeting_bot
Create a bot to join a meeting and record/transcribe it
get_bot_status
Get the current status of a meeting bot
get_meeting_transcript
Get the transcript from a meeting bot
list_meeting_bots
List all active meeting bots
remove_meeting_bot
Remove a bot from a meeting
make_bot_speak
Make a bot speak text during a meeting using text-to-speech
send_chat_message
Send a chat message from the bot to the meeting
get_chat_messages
Get chat messages from the meeting
get_recording
Get the recording URL for a bot
send_image_to_meeting
Send an image to the meeting through the bot (Google Meet only)
send_video_to_meeting
Send a video to the meeting through the bot (Google Meet only)
delete_bot_data
Delete all data associated with a bot (recordings, transcripts, etc.)
README
Attendee MCP Server
A Model Context Protocol (MCP) server for managing Attendee meeting bots. This server allows you to create, manage, and retrieve transcripts from meeting bots through Claude Desktop.
What can you do with this MCP?
- You can send the bot to a meeting with "Send a bot to this meeting: <meeting_url>"
- You can have the bot say something with "Have the bot say <text>", and I will say it in the meeting.
- You can have the bot send a chat message with "Have the bot send a chat message: <message>"
- You can have the bot leave the meeting with "Have the bot leave the meeting"
To-Do List
- [x] Bot joins meeting
- [x] Bot leaves meeting
- [x] Get bot status
- [x] Send speech message (sends audio through the bot)
- [x] Send chat message
- [ ] Get list of active bots
🎯 What you can do with Claude using this MCP
Basic Bot Management
- "Send a bot to this meeting:
<meeting_url>
" - Creates and sends an Attendee bot to join any meeting (Zoom, Google Meet, Teams) - "Get me the status of bot
<bot_id>
" - Returns current status, state, and transcription progress - "List all my active bots" - Shows all currently active meeting bots
- "Remove bot
<bot_id>
from the meeting" - Makes the bot leave the meeting
Advanced Bot Features
- "Make bot
<bot_id>
say 'Hello everyone!'" - Text-to-speech functionality - "Send chat message 'Hi there!' from bot
<bot_id>
" - Send chat messages through the bot - "Show this image in the meeting:
<image_url>
using bot<bot_id>
" - Display images (Google Meet only) - "Play this video in the meeting:
<video_url>
using bot<bot_id>
" - Play MP4 videos (Google Meet only)
Data Access
- "Get the transcript from bot
<bot_id>
" - Retrieve meeting transcripts - "Get chat messages from bot
<bot_id>
" - Retrieve all chat messages from the meeting - "Get the recording from bot
<bot_id>
" - Get download URL for meeting recording - "Delete all data for bot
<bot_id>
" - Permanently delete recordings, transcripts, etc.
Combining MCPs
Combining MCPs leads to powerful workflows. For example, I use the Brave Search MCP alongside the Attendee MCP. When I ask Claude, “Who won the last Roland Garros tournament?”, it:
- Uses the web MCP to find the answer online.
- Pipes the result to the Attendee bot, which speaks the answer back to me
🚀 Installation
We will use Claude as an example, but you can use any tool that works with MCPs.
Clone the repository
# Clone your fork or the main repo
git clone https://github.com/rexposadas/attendee-mcp.git
cd attendee-mcp
# Install dependencies
npm install
# Build the TypeScript
npm run build
# Link for global use
npm link
⚙️ Configuration
Environment Variables
Set these environment variables for your Attendee server:
export MEETING_BOT_API_URL="http://localhost:8000" # Your Attendee server URL
export MEETING_BOT_API_KEY="your-api-key-here" # Your Attendee API key
Add these to your shell profile (~/.zshrc
, ~/.bashrc
, etc.) to make them permanent.
Claude Desktop Configuration
Update your Claude Desktop configuration file at:
~/Library/Application Support/Claude/claude_desktop_config.json
. after you make the changes, restart Claude
Adjust the mcpServers
section to include the Attendee MCP server. Use the direct path for now since that's proving to be the most reliable.
{
"mcpServers": {
"attendee": {
"command": "node",
"args": [
"<path>/attendee-mcp/dist/index.js"
],
"env": {
"MEETING_BOT_API_URL": "<attendee-url-here>",
"MEETING_BOT_API_KEY": "your-api-key-here"
}
}
}
}
Replace /path/to/attendee-mcp
with the actual path where you cloned the repository.
🏃♂️ Quick Start if you want to run Attendee Locally.
- Start your Attendee server:
make build make up
- Test in Claude Desktop:
- Ask Claude: "What MCP tools are available?"
🎯 Usage Examples
Once configured, you can use natural language commands in Claude Desktop:
Creating Meeting Bots
- "Create a meeting bot for this Zoom: https://zoom.us/j/123456789"
- "Send a bot to this Google Meet: https://meet.google.com/abc-defg-hij"
- "Join this Teams meeting with a bot: https://teams.microsoft.com/..."
Managing Bots
- "What's the status of bot bot_abc123?"
- "Show me all my active bots"
- "List all meeting bots"
- "Remove bot bot_abc123 from the meeting"
🔧 Available MCP Tools
This server provides the following tools:
Core Bot Management
create_meeting_bot
- Create a bot to join and record a meetingget_bot_status
- Check the current status of a meeting botlist_meeting_bots
- List all active meeting botsremove_meeting_bot
- Remove a bot from a meeting
Communication & Media
make_bot_speak
- Make the bot speak using text-to-speechsend_chat_message
- Send chat messages from the botsend_image_to_meeting
- Display images through the bot (Google Meet only)send_video_to_meeting
- Play videos through the bot (Google Meet only)
Data Retrieval
get_meeting_transcript
- Retrieve the meeting transcriptget_chat_messages
- Get chat messages from the meetingget_recording
- Get the recording download URLdelete_bot_data
- Permanently delete all bot data
🐛 Troubleshooting
Common Issues
-
"Network error" or API connection issues:
- Ensure your Attendee server is running on the configured URL
- Check that your API key is correct
- Verify the
MEETING_BOT_API_URL
andMEETING_BOT_API_KEY
environment variables
-
MCP server not appearing in Claude Desktop:
- Restart Claude Desktop completely after config changes
- Check the Claude Desktop config file syntax is valid JSON
- Look at Claude Desktop logs for error messages
-
"Method not allowed" errors:
- Some API endpoints might not be fully implemented in your Attendee server
- Check your Attendee server logs for more details
📄 License
MIT License - see LICENSE file for details.
🤝 Contributing
- Fork the repository
- Create a feature branch:
git checkout -b feature-name
- Make your changes and test them
- Commit your changes:
git commit -m 'Add feature'
- Push to the branch:
git push origin feature-name
- Submit a pull request
🔗 Related Projects
- Attendee - The main meeting bot service
- Model Context Protocol - The MCP specification and SDK
Note: This MCP server requires a running Attendee backend service. Make sure you have the Attendee server set up and running before using this MCP server.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.