chamade-io avatar

Chamade

chamade-io/mcp-server

Bridges AI agents into real meetings and DMs across Discord, Teams, Meet, Slack, Zoom, Telegram, WhatsApp, Nextcloud Talk, and SIP. You get tools to join calls, speak via TTS, send chat messages, read transcripts, and handle DMs with file attachments. The recommended path is hosted STT/TTS with your own ElevenLabs, Deepgram, OpenAI, or Cartesia key. If you already run a voice pipeline, Chamade exposes raw PCM over WebSocket and handles transport. File uploads work through pre-signed URLs to keep tool calls small. Push events for transcripts and incoming messages work in Claude Code with the channel flag, otherwise poll the inbox and call status tools. Currently free during early access.

tools
15
auth
Secret needed
transport
STDIO, HTTP
last updated
Jul 23, 2026

Tools

15 tools

Public tool metadata for what this MCP can expose to an agent.

chamade_call_joinJoin a voice meeting. The platform is auto-detected from the URL (Discord, Teams, Meet, Telegram, SIP, NC Talk, Zoom, WhatsApp). Returns a call_id, capabilities, and — for voice calls — an `audio` block with the raw-PCM WebSocket URL you can wire to your own stack as the alter...4 params

Join a voice meeting. The platform is auto-detected from the URL (Discord, Teams, Meet, Telegram, SIP, NC Talk, Zoom, WhatsApp). Returns a call_id, capabilities, and — for voice calls — an `audio` block with the raw-PCM WebSocket URL you can wire to your own stack as the alter...

Parameters* required
agent_namestring
default: AI Agent
meeting_urlstring
platformvalue
transcriptsboolean
default: false
chamade_call_acceptAnswer a ringing inbound call. Use this when chamade_call_list or a call_invite event shows a call in 'ringing' state (incoming phone call). The call transitions to 'active' and you can start speaking.1 params

Answer a ringing inbound call. Use this when chamade_call_list or a call_invite event shows a call in 'ringing' state (incoming phone call). The call transitions to 'active' and you can start speaking.

Parameters* required
call_idstring
chamade_call_refuseRefuse (reject) a ringing inbound call. The call is ended and the caller hears a disconnect.1 params

Refuse (reject) a ringing inbound call. The call is ended and the caller hears a disconnect.

Parameters* required
call_idstring
chamade_call_saySpeak text aloud in the meeting via Chamade's hosted TTS. Only works when the call was created by a user who has a TTS preset configured in the dashboard (/dashboard → Voice providers). Returns 400 otherwise — in that case synthesize locally and send PCM on the call's audio We...2 params

Speak text aloud in the meeting via Chamade's hosted TTS. Only works when the call was created by a user who has a TTS preset configured in the dashboard (/dashboard → Voice providers). Returns 400 otherwise — in that case synthesize locally and send PCM on the call's audio We...

Parameters* required
call_idstring
textstring
chamade_call_stop_speakingCancel any in-flight TTS utterance on this call — agent self-interrupt. Use when you changed your mind mid-sentence (new information arrived, the user asked you to stop, a faster downstream answer is ready). Flushes the TTS pipeline buffer immediately; the utterance stops with...1 params

Cancel any in-flight TTS utterance on this call — agent self-interrupt. Use when you changed your mind mid-sentence (new information arrived, the user asked you to stop, a faster downstream answer is ready). Flushes the TTS pipeline buffer immediately; the utterance stops with...

Parameters* required
call_idstring
chamade_call_chatSend a text chat message in the meeting. Set sender_name to identify yourself (e.g. your name or 'AI Assistant'). Optional `attachments` to send files in the meeting chat. Prefer file_id (upload once via POST /api/files multipart, then pass the token) or url over bytes_b64 — i...4 params

Send a text chat message in the meeting. Set sender_name to identify yourself (e.g. your name or 'AI Assistant'). Optional `attachments` to send files in the meeting chat. Prefer file_id (upload once via POST /api/files multipart, then pass the token) or url over bytes_b64 — i...

Parameters* required
attachmentsvalue
call_idstring
sender_namevalue
textstring
default:
chamade_call_typingSend a typing indicator in the call's chat. Only works on platforms with 'typing' in capabilities.1 params

Send a typing indicator in the call's chat. Only works on platforms with 'typing' in capabilities.

Parameters* required
call_idstring
chamade_call_statusGet call status and new transcript lines since last check (delta pattern — only new lines each call). Call this in a loop to drive the call.1 params

Get call status and new transcript lines since last check (delta pattern — only new lines each call). Call this in a loop to drive the call.

Parameters* required
call_idstring
chamade_call_leaveTerminate the call: removes the agent from the meeting, releases the room, and ends the audio bridge. This is the only tool that actually ends a call — a farewell spoken with `chamade_call_say` is audible to participants but leaves the call connected until this tool (or a time...1 params

Terminate the call: removes the agent from the meeting, releases the room, and ends the audio bridge. This is the only tool that actually ends a call — a farewell spoken with `chamade_call_say` is audible to participants but leaves the call connected until this tool (or a time...

Parameters* required
call_idstring
chamade_call_listList all active calls for the current user.

List all active calls for the current user.

No parameter schema in public metadata yet.

chamade_dm_chatSend a message to the active DM conversation on a platform. The message is delivered to the user on their platform (Discord, Telegram, Teams, etc.). Respect platform character limits: discord 2000, telegram 4096, whatsapp 1600, slack 3000, teams ~28000, nctalk 32000. Set keep_...4 params

Send a message to the active DM conversation on a platform. The message is delivered to the user on their platform (Discord, Telegram, Teams, etc.). Respect platform character limits: discord 2000, telegram 4096, whatsapp 1600, slack 3000, teams ~28000, nctalk 32000. Set keep_...

Parameters* required
attachmentsvalue
keep_typingboolean
default: false
platformstring
textstring
default:
chamade_file_upload_urlReserve a file_id and return a short-lived (5 min) pre-signed URL that accepts a multipart POST with **no auth header**. After uploading the bytes, pass the returned `file_id` in `attachments` on chamade_dm_chat or chamade_call_chat. **This is the correct pattern for sending a...2 params

Reserve a file_id and return a short-lived (5 min) pre-signed URL that accepts a multipart POST with **no auth header**. After uploading the bytes, pass the returned `file_id` in `attachments` on chamade_dm_chat or chamade_call_chat. **This is the correct pattern for sending a...

Parameters* required
mimestring
default: application/octet-stream
namestring
default: file
chamade_dm_typingSend a typing indicator on a DM conversation. Use this before composing a reply so the user sees you are working on it. Only works on platforms with 'typing' in capabilities (Discord, Teams, Telegram, NC Talk).1 params

Send a typing indicator on a DM conversation. Use this before composing a reply so the user sees you are working on it. Only works on platforms with 'typing' in capabilities (Discord, Teams, Telegram, NC Talk).

Parameters* required
platformstring
chamade_inboxCheck inbox for DM/group conversations across all platforms. Perspective: this tool operates from the `agent` identity configured on each platform. The human operator may also appear as a `peer` when they message their own agent (self-chat). Never assume 'you' means the operat...5 params

Check inbox for DM/group conversations across all platforms. Perspective: this tool operates from the `agent` identity configured on each platform. The human operator may also appear as a `peer` when they message their own agent (self-chat). Never assume 'you' means the operat...

Parameters* required
call_event_cursorvalue
last_message_cursorvalue
limitinteger
default: 20
platformvalue
waitvalue
chamade_accountCheck account status: plan, credit/quota remaining, per-platform readiness, and the identity map (agent handle + operator handle per platform). Use this as your cold-start bootstrap: it returns last_message_cursor for the polling loop of chamade_inbox and anchors which handle...

Check account status: plan, credit/quota remaining, per-platform readiness, and the identity map (agent handle + operator handle per platform). Use this as your cold-start bootstrap: it returns last_message_cursor for the polling loop of chamade_inbox and anchors which handle...

No parameter schema in public metadata yet.

Sponsors

Readme

@chamade/mcp-server

npm version npm downloads License: MIT

MCP (Model Context Protocol) server for Chamade — a voice and chat gateway that lets your AI agent join meetings and DMs on Discord, Microsoft Teams, Google Meet, Telegram, SIP, Zoom, Nextcloud Talk, Slack, and WhatsApp.

The recommended voice path is hosted STT/TTS with bring-your-own-key. Drop your own ElevenLabs / Deepgram / OpenAI / Cartesia API key in your dashboard once — Chamade runs the full speech pipeline on its side using that key. Transcripts flow in as call_transcript events, chamade_call_say speaks into the meeting. Free on Chamade's side; you only pay your provider. Your agent stays fully text-driven.


View the full README on GitHub

Details

Repository
github.com/chamade-io/mcp-server
Website
chamade.io
Category
Communication & Messaging
Package
@chamade/mcp-server
Transport
STDIO, HTTP
Auth
Required
Registry
MCP registry, active

Related Communication & Messaging MCP servers

View all
1evozim avatarDocDigestio.github.evozim/docdigestCorporate email and chat thread summarization parser.0stars
2fieldcure avatarOutboxfieldcure/fieldcure-mcp-outboxMulti-channel messaging MCP server for Slack, Telegram, Email, KakaoTalk, and Discord.0stars
3studiomeyer-io avatarStudioMeyer Personal Suitestudiomeyer-io/mcp-personal-suiteLocal-first productivity: email, calendar, messaging, search, image gen. 49 tools. BYOK.0stars
4kenwea-protocol avatarKenwea AgentIRCkenwea-protocol/agentircIRC-style chat server where AI agents and people talk: channels, DMs, claims, approvals.0stars
5noriget avatarAgentPingnoriget/agentpingLet your AI agent notify you by email, Slack, Discord, or webhook. One tool: send_notification.0stars
6supermarco74 avatarWebVoicesupermarco74/webvoice-mcpWebVoice MCP: chat, TTS, STT, translate, images. Email signup, welcome credits, optional Solana.0stars