digitalsamba/embedded-api-mcp-server
If you are the rightful owner of embedded-api-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
The Digital Samba Embedded API MCP Server is a comprehensive Model Context Protocol server that enables AI assistants to interact with Digital Samba's Embedded API, providing control over rooms, sessions, recordings, analytics, and more.
create-room
Create a new room
update-room
Update room settings
delete-room
Delete a room
generate-token
Generate access token
list-rooms
List all rooms
Digital Samba Embedded API MCP Server
Use your AI assistant to interact with the Digital Samba Embedded API
Installation ⢠Quick Start ⢠Features ⢠API Reference
Overview
The Digital Samba Embedded API MCP Server is a comprehensive Model Context Protocol server that enables AI assistants like Claude to interact with Digital Samba's Embedded API. With support for 102 tools and 38 resources covering 100+ API endpoints, it provides complete control over rooms, sessions, recordings, analytics, and more.
Features
š Room Management
- Create, update, and delete rooms
- Generate secure access tokens
- Manage default room settings
š Analytics & Reporting
- Team-wide usage statistics
- Room and session analytics
- Participant analytics and tracking
- Custom period reporting
š„ Recording Management
- List and manage recordings
- Archive and unarchive recordings
- Download recording links
- Bulk recording operations
š„ Live Session Control
- Monitor rooms with active participants
- View real-time participant lists
- Check participant counts and session duration
- Start/stop recording sessions
- Start/stop transcription
- End active sessions
- Real-time session monitoring
- Phone participant integration
š¬ Communication Tools
- Poll creation and management
- Session data deletion (chat, Q&A, transcripts, summaries)
š Content Library
- Create and manage libraries
- Upload files and documents
- Organize with folders
- Create webapps and whiteboards
- Bulk file operations
- Move and copy operations
š Role & Permission Management
- Create custom roles
- Update role permissions
- Delete roles
- List available permissions
š Webhook Management
- List available webhook events
- Create and configure webhooks
- Update webhook settings
- Delete webhooks
- View webhook details
š¤ Export Capabilities
- Export chat history
- Export Q&A sessions
- Export transcripts
- Export poll results
Installation
# Install globally
npm install -g @digitalsamba/embedded-api-mcp-server
# Or use directly with npx (recommended)
npx @digitalsamba/embedded-api-mcp-server@latest --developer-key YOUR_DEVELOPER_KEY
Quick Start
1. Get Your Developer Key
Sign up at Digital Samba and get your developer key from the dashboard.
2. Configure Claude Desktop
Add to your Claude Desktop configuration (~/Library/Application Support/Claude/claude_desktop_config.json
on Mac):
{
"mcpServers": {
"digital-samba": {
"command": "npx",
"args": ["@digitalsamba/embedded-api-mcp-server@latest", "--developer-key", "YOUR_DEVELOPER_KEY"]
}
}
}
3. Start Using
Restart Claude Desktop and you can now:
"Create a meeting room for our team standup"
"Show me analytics for yesterday's meetings"
"List all recordings from last week"
"Generate a join link for john@example.com"
"Create a poll asking about meeting preferences"
"Export the chat transcript from today's session"
"Upload our presentation to the content library"
Available MCP Resources & Tools
The MCP server exposes Digital Samba API functionality through two types of interfaces: Resources provide read-only access to data (like listing rooms or viewing analytics), while Tools enable actions that modify data (like creating rooms or starting recordings). These are accessed via MCP URIs, not direct API endpoints. For more details on MCP resources and tools, see the official MCP documentation.
Note on AI Assistant Compatibility: While the MCP protocol supports both resources and tools, current AI assistants (like Claude Desktop) can only access tools, not resources. To work around this limitation, we've implemented a hybrid approach with reader tools: all read-only resources also have equivalent tool versions that provide the same data. For example, the
digitalsamba://rooms
resource can also be accessed via thelist-rooms
tool. Reader tools are clearly marked with "mirrors digitalsamba://..." in their descriptions. This ensures full functionality in AI assistants while maintaining compatibility with future MCP client improvements.
Resources (Read-Only) - 32 Available
Room Resources
digitalsamba://rooms
- List all roomsdigitalsamba://rooms/{id}
- Get room detailsdigitalsamba://rooms/live
- List rooms with active participantsdigitalsamba://rooms/live/participants
- List rooms with participant detailsdigitalsamba://rooms/{id}/live
- Get live session info for a roomdigitalsamba://rooms/{id}/live/participants
- Get participant list for a room
Session Resources
digitalsamba://sessions
- List all sessionsdigitalsamba://sessions/{id}
- Get session summarydigitalsamba://sessions/{id}/participants
- List session participantsdigitalsamba://sessions/{id}/statistics
- Get session statisticsdigitalsamba://rooms/{id}/sessions
- List sessions for a room
Recording Resources
digitalsamba://recordings
- List all recordingsdigitalsamba://recordings/{id}
- Get recording detailsdigitalsamba://recordings/archived
- List archived recordingsdigitalsamba://rooms/{id}/recordings
- List recordings for a room
Analytics Resources
digitalsamba://analytics/team
- Team-wide statisticsdigitalsamba://analytics/rooms
- Room analyticsdigitalsamba://analytics/sessions/{id}
- Session analyticsdigitalsamba://analytics/participants
- Participant analyticsdigitalsamba://analytics/participants/{id}
- Specific participant statsdigitalsamba://analytics/usage
- Usage statisticsdigitalsamba://analytics/live
- Live session analyticsdigitalsamba://analytics/live/{roomId}
- Live analytics for specific room
Content Library Resources
digitalsamba://libraries
- List all librariesdigitalsamba://libraries/{id}
- Library detailsdigitalsamba://libraries/{id}/hierarchy
- Library folder structuredigitalsamba://libraries/{id}/folders
- List foldersdigitalsamba://libraries/{id}/folders/{folderId}
- Folder detailsdigitalsamba://libraries/{id}/files
- List filesdigitalsamba://libraries/{id}/files/{fileId}
- File details
Export Resources
digitalsamba://exports/communications/{roomId}/chat
- Export chatdigitalsamba://exports/communications/{roomId}/qa
- Export Q&Adigitalsamba://exports/communications/{sessionId}/transcripts
- Export transcriptsdigitalsamba://exports/polls/{roomId}
- Export pollsdigitalsamba://exports/recordings/{recordingId}
- Export recording metadatadigitalsamba://exports/sessions/{sessionId}/summary
- Export session summarydigitalsamba://exports/sessions/{sessionId}/metadata
- Export session metadata
Tools (Actions) - 99 Available
Room Management
create-room
- Create a new roomupdate-room
- Update room settingsdelete-room
- Delete a roomgenerate-token
- Generate access tokenget-default-room-settings
- Get default settings for new roomsupdate-default-room-settings
- Update default settings for new roomslist-rooms
- List all rooms (mirrors digitalsamba://rooms)get-room-details
- Get specific room details (mirrors digitalsamba://rooms/{id})list-live-rooms
- List rooms with active participantslist-live-participants
- List all live participants across rooms
Session Management
end-session
- End a live sessionget-session-summary
- Get session detailsget-all-room-sessions
- List all sessions for a roomhard-delete-session-resources
- Permanently delete session databulk-delete-session-data
- Delete multiple session data typesget-session-statistics
- Get detailed session statisticslist-sessions
- List all sessions (mirrors digitalsamba://sessions)get-session-details
- Get specific session details (mirrors digitalsamba://sessions/{id})list-session-participants
- List participants for a sessionlist-room-sessions
- List sessions for a specific room
Recording Management
get-recordings
- List recordings with filtersdelete-recording
- Delete a recordingget-recording
- Get recording detailsget-recording-download-link
- Get download URLarchive-recording
- Archive a recordingunarchive-recording
- Unarchive a recording
Live Session Controls
start-recording
- Start recording a sessionstop-recording
- Stop recordingstart-transcription
- Start live transcriptionstop-transcription
- Stop transcriptionphone-participants-joined
- Register phone participants joiningphone-participants-left
- Register phone participants leaving
Analytics Tools
get-participant-statistics
- Participant analyticsget-room-analytics
- Room usage analyticsget-usage-statistics
- Overall usage metricsget-usage-analytics
- Usage analytics (mirrors digitalsamba://analytics/usage)get-live-analytics
- Live session analytics (mirrors digitalsamba://analytics/live)get-live-room-analytics
- Live analytics for specific roomget-session-analytics
- Session analytics (mirrors digitalsamba://analytics/sessions/{id})get-participant-analytics
- Specific participant analytics
Communication Management
delete-session-chats
- Delete chat messages for a sessiondelete-room-chats
- Delete all chats for a roomdelete-session-qa
- Delete Q&A for a sessiondelete-room-qa
- Delete all Q&A for a roomdelete-session-transcripts
- Delete transcriptsdelete-room-transcripts
- Delete all transcripts for a roomdelete-session-summaries
- Delete AI summariesdelete-room-summaries
- Delete all summaries for a room
Poll Management
create-poll
- Create a new pollupdate-poll
- Update poll settingsdelete-poll
- Delete a polldelete-session-polls
- Delete all polls for a sessiondelete-room-polls
- Delete all polls for a roompublish-poll-results
- Publish results to participants
Content Library Management
create-library
- Create content libraryupdate-library
- Update library detailsdelete-library
- Delete a librarycreate-library-folder
- Create folderupdate-library-folder
- Update folderdelete-library-folder
- Delete foldercreate-library-file
- Upload fileupdate-library-file
- Update file detailsdelete-library-file
- Delete fileget-file-links
- Get file viewing linkscreate-webapp
- Create webappcreate-whiteboard
- Create whiteboardmove-library-file
- Move file between foldersmove-library-folder
- Move folderbulk-delete-library-files
- Delete multiple filesbulk-upload-library-files
- Upload multiple filescopy-library-content
- Copy files/folderslist-libraries
- List all libraries (mirrors digitalsamba://libraries)get-library-details
- Get library details (mirrors digitalsamba://libraries/{id})get-library-hierarchy
- Get folder structure (mirrors digitalsamba://libraries/{id}/hierarchy)list-library-folders
- List all folders (mirrors digitalsamba://libraries/{id}/folders)get-library-folder-details
- Get folder detailslist-library-files
- List all files (mirrors digitalsamba://libraries/{id}/files)get-library-file-details
- Get file details
Role & Permission Management
create-role
- Create custom roleupdate-role
- Update role settingsdelete-role
- Delete a roleget-roles
- List all rolesget-role
- Get role detailsget-permissions
- List available permissions
Webhook Management
list-webhook-events
- List available events to subscribe tolist-webhooks
- List all configured webhookscreate-webhook
- Create a new webhookget-webhook
- Get webhook detailsupdate-webhook
- Update webhook configurationdelete-webhook
- Delete a webhook
Export Tools
export-chat-messages
- Export chat messages from a room (mirrors digitalsamba://exports/communications/{roomId}/chat)export-qa-data
- Export Q&A data from a room (mirrors digitalsamba://exports/communications/{roomId}/qa)export-session-transcripts
- Export transcripts from a session (mirrors digitalsamba://exports/communications/{sessionId}/transcripts)export-poll-results
- Export poll results from a room (mirrors digitalsamba://exports/polls/{roomId})export-recording-metadata
- Export recording metadata (mirrors digitalsamba://exports/recordings/{recordingId})export-session-summary
- Export session summary (mirrors digitalsamba://exports/sessions/{sessionId}/summary)export-session-metadata
- Export session metadata (mirrors digitalsamba://exports/sessions/{sessionId}/metadata)
Environment Variables
DIGITAL_SAMBA_DEVELOPER_KEY
- Your Digital Samba developer key (optional if using --developer-key or -k flag)DIGITAL_SAMBA_API_URL
- API base URL (optional, defaults to production)DS_LOG_LEVEL
- Logging level (error, warn, info, debug)
Examples
Basic Room Creation
"Create a private room called 'Executive Meeting' with space for 10 people"
Generate Access Token
"Generate a moderator token for sarah@company.com to join the executive meeting"
Manage Content Library
"Create a library for our training materials and upload the onboarding presentation"
Analytics and Reporting
"Show me participant statistics for last month's sessions"
Development
# Clone the repository
git clone https://github.com/digitalsamba/embedded-api-mcp-server.git
cd embedded-api-mcp-server
# Install dependencies
npm install
# Run in development mode
npm run dev -- --developer-key YOUR_DEVELOPER_KEY # or -k YOUR_DEVELOPER_KEY
# Build for production
npm run build
# Run tests
npm test
# Run tests with coverage
npm run test:coverage
Architecture
The server follows a modular architecture:
src/
āāā index.ts # Main MCP server entry
āāā digital-samba-api.ts # API client wrapper
āāā resources/ # Read-only MCP resources
ā āāā rooms/ # Room listings
ā āāā sessions/ # Session data
ā āāā analytics/ # Analytics data
ā āāā recordings/ # Recording listings
ā āāā content/ # Content libraries
ā āāā exports/ # Export functionality
āāā tools/ # MCP tools (actions)
āāā room-management/
āāā session-management/
āāā recording-management/
āāā analytics-tools/
āāā live-session-controls/
āāā communication-management/
āāā poll-management/
āāā library-management/
āāā role-management/
Contributing
We welcome contributions! Please see our for details.
License
MIT License - see for details.
Support
- š§ Email:
- š API Documentation
- š Issue Tracker
Built with ā¤ļø by the Digital Samba team