A production-grade remote MCP that pipes WhatsApp, Telegram, Instagram, email, livechat, and voice calls into a single inbox your AI can read from and write to. You get 156 tools covering message history, sending, search, contact sync, and workspace knowledge graph queries. It also orchestrates AI agents, so you can trigger workflows, simulate inbound messages, or approve drafts programmatically. Authentication is OAuth 2.0 with dynamic client registration, and every tool ships with proper MCP hints for read-only, destructive, and open-world operations. Reach for this when you need Claude or another MCP client to manage real customer conversations across channels or tap into a team's unified communication history without building integrations yourself.
Public tool metadata for what this MCP can expose to an agent.
contacts_find👤 Search for contacts in your address book by name or username. When to use: - User asks 'find contact X' or 'who is Y?' - User wants to know someone's username or ID - Before sending a message to verify contact exists - To get contact's channel reference for messaging Exampl...3 params👤 Search for contacts in your address book by name or username. When to use: - User asks 'find contact X' or 'who is Y?' - User wants to know someone's username or ID - Before sending a message to verify contact exists - To get contact's channel reference for messaging Exampl...
limitintegerquerystringchannelstringtelegram · email · whatsapp · sms · slackcontacts_discoverSearch for a contact on a live channel (Telegram, WhatsApp, etc.) before adding them. Use this to look up a person by username or phone number before calling contacts.sync.2 paramsSearch for a contact on a live channel (Telegram, WhatsApp, etc.) before adding them. Use this to look up a person by username or phone number before calling contacts.sync.
querystringchannelstringcontacts_syncAdd a discovered contact and open a conversation thread. Returns thread_id for the new conversation. Call contacts.discover first to verify the contact exists.2 paramsAdd a discovered contact and open a conversation thread. Returns thread_id for the new conversation. Call contacts.discover first to verify the contact exists.
channelstringidentifierstringfiles_ingestSave and index a file into the knowledge base. Use this when the user asks to save, store, or remember a document. The file will be processed (OCR if needed) and indexed for future search.5 paramsSave and index a file into the knowledge base. Use this when the user asks to save, store, or remember a document. The file will be processed (OCR if needed) and indexed for future search.
tagsarraytitlestringfile_idintegerthread_idintegerdescriptionstringfiles_readRead the contents of an attached file directly. Use this when the user asks 'what is in this file?' or 'read this document'. Works for text files (.txt, .md, .json, code files, etc.). For PDFs and images, suggests using knowledge.answer after indexing.4 paramsRead the contents of an attached file directly. Use this when the user asks 'what is in this file?' or 'read this document'. Works for text files (.txt, .md, .json, code files, etc.). For PDFs and images, suggests using knowledge.answer after indexing.
file_idintegerencodingstringmax_charsintegersummarizebooleanfiles_uploadUpload a file to DialogBrain and get a file_id for use in messages_send. When to use: - User wants to send a file/image to a contact - Before calling messages_send with an attachment Returns: file_id (integer) to pass to messages_send attachments parameter.5 paramsUpload a file to DialogBrain and get a file_id for use in messages_send. When to use: - User wants to send a file/image to a contact - Before calling messages_send with an attachment Returns: file_id (integer) to pass to messages_send attachments parameter.
titlestringcontentstringfilenamestringmime_typestringsource_urlstringfiles_infoGet metadata and download URLs for files by their IDs. When to use: - After messages_read_history returns attachment_file_ids - To get a presigned download URL to read a received file Returns: filename, mime_type, byte_size, download_url (1-hour presigned URL).1 paramsGet metadata and download URLs for files by their IDs. When to use: - After messages_read_history returns attachment_file_ids - To get a presigned download URL to read a received file Returns: filename, mime_type, byte_size, download_url (1-hour presigned URL).
file_idsarrayfiles_get_base64Download one or more files server-side and return their content as base64-encoded strings. Use this to inspect images, PDFs, or any binary file attached to messages when you cannot access presigned S3 URLs directly. Supports up to 5 files per call, max 5 MB each. For large fil...1 paramsDownload one or more files server-side and return their content as base64-encoded strings. Use this to inspect images, PDFs, or any binary file attached to messages when you cannot access presigned S3 URLs directly. Supports up to 5 files per call, max 5 MB each. For large fil...
file_idsarraymessages_read_historyRead messages from a conversation thread in chronological order. Returns the most recent messages, including sender info and timestamps. Usage: 1. Get thread_id from threads.list first, OR 2. Use contact_name to auto-resolve thread_id Examples: - User: 'show me messages from c...5 paramsRead messages from a conversation thread in chronological order. Returns the most recent messages, including sender info and timestamps. Usage: 1. Get thread_id from threads.list first, OR 2. Use contact_name to auto-resolve thread_id Examples: - User: 'show me messages from c...
limitintegeroffsetintegerthread_idstringcontact_namestringinclude_outgoingbooleanthreads_list💬 List conversation threads/chats with previews and metadata. When to use: - User asks 'show my chats' or 'list my conversations' - User asks 'who did I chat with recently?' - Before using messages.read_history to get thread_id - To discover available conversations Examples:...12 params💬 List conversation threads/chats with previews and metadata. When to use: - User asks 'show my chats' or 'list my conversations' - User asks 'who did I chat with recently?' - Before using messages.read_history to get thread_id - To discover available conversations Examples:...
kindstringdm · group · channellimitintegerorderstringdesc · ascdefault: descchannelstringtelegram · email · whatsapp · sms · slackorder_bystringlast_message_at · message_count · created_atdefault: last_message_atonly_unreadbooleaninclude_archivedbooleanparticipant_namestringmax_inactive_daysintegermin_inactive_daysintegeruser_sent_messagebooleanmin_last_message_daysintegermessages_sendSend a message to a thread, channel, or contact. Supports Telegram, Email, and other connected channels. Can automatically resolve recipients and channels when not specified.11 paramsSend a message to a thread, channel, or contact. Supports Telegram, Email, and other connected channels. Can automatically resolve recipients and channels when not specified.
ccarraybccarraytextstringformatstringtext · markdown · htmldefault: textsilentbooleansubjectstringthread_idstringattachmentsarrayrecipient_namestringrecipient_emailstringreply_to_message_idstringmessages_deleteDelete a message from a thread. Supports Telegram, WhatsApp, and other connected channels. Note: Some channels have time limits on message deletion.2 paramsDelete a message from a thread. Supports Telegram, WhatsApp, and other connected channels. Note: Some channels have time limits on message deletion.
thread_idstringmessage_idstringkg_find_entityFind an entity by name in the Knowledge Graph. USE WHEN user mentions a person, project, company by name and you need: - To resolve a name to entity_id for subsequent queries - 'Кто работает над X?' → find X first - 'Расскажи про Y' → find Y first RETURNS entity_id for use in...3 paramsFind an entity by name in the Knowledge Graph. USE WHEN user mentions a person, project, company by name and you need: - To resolve a name to entity_id for subsequent queries - 'Кто работает над X?' → find X first - 'Расскажи про Y' → find Y first RETURNS entity_id for use in...
namestringlimitintegerentity_typestringperson · project · organization · event · topic · workspacekg_get_relationshipsGet relationships for a specific entity from Knowledge Graph. USE WHEN: - 'Кто работает над X?' - filter by works_on - 'С кем общался Y?' - filter by discussed_with - 'Кто из компании Z?' - filter by member_of - 'Что связано с W?' - no filter, get all REQUIRES: entity_id from...4 paramsGet relationships for a specific entity from Knowledge Graph. USE WHEN: - 'Кто работает над X?' - filter by works_on - 'С кем общался Y?' - filter by discussed_with - 'Кто из компании Z?' - filter by member_of - 'Что связано с W?' - no filter, get all REQUIRES: entity_id from...
limitintegerdirectionstringincoming · outgoing · bothdefault: bothentity_idstringrelation_typesarrayweb_searchSearch the web for current information, news, facts, prices, or events. Use this when the user asks about something that requires up-to-date information from the internet, or when internal knowledge base doesn't have the answer. Examples: recent news, stock prices, weather, pr...3 paramsSearch the web for current information, news, facts, prices, or events. Use this when the user asks about something that requires up-to-date information from the internet, or when internal knowledge base doesn't have the answer. Examples: recent news, stock prices, weather, pr...
querystringnum_resultsintegersearch_typestringsearch · newsdefault: searchworkspace_searchUniversal multi-search across workspace: files, links, chats, messages. KEY FEATURE: Can search multiple types in parallel and return sectioned results. Usage options: 1. scope='auto' (default) - tool auto-detects what to search from query 2. scope=['files'] - search only file...28 paramsUniversal multi-search across workspace: files, links, chats, messages. KEY FEATURE: Can search multiple types in parallel and return sectioned results. Usage options: 1. scope='auto' (default) - tool auto-detects what to search from query 2. scope=['files'] - search only file...
goalstringlinks · messages · threads · fileskindstringdm · group · channellimitintegerownerstringself · contact · unknownquerystringscopearraychannelstringdate_tostringfile_idstringonly_dmsbooleandate_fromstringdays_backintegerlink_kindstringemail · calendly · twitter · telegram · linkedin · githubsummarizebooleanthread_idstringfile_originstringgenerated · received · uploadedonly_unreadbooleancontact_hintstringdocument_typestringinvoice · contract · presentation · report · proposal · resumeonly_incomingbooleanonly_outgoingbooleanattachment_extstringattachment_namestringonly_unansweredbooleanparticipant_namestringmin_inactive_daysintegerrequire_attachmentsbooleanmin_last_message_daysintegerRemote MCP server that connects your AI agent to a unified inbox spanning WhatsApp, Telegram, Instagram, Email, Livechat, and Voice calls — plus a workspace knowledge graph and AI agent orchestration.
https://api.dialogbrain.com/mcpmessages.read_history, threads.list, threads.searchmessages.send, messages.forward, messages.deletecontacts.find, contacts.discover, contacts.sync, contacts.profileworkspace.search, kg.find_entity, kg.get_relationshipsagents.ask, agents.simulate_inbound, agents.approve_draftAdd as a Custom Connector with URL https://api.dialogbrain.com/mcp. Sign in via OAuth when prompted.
In the ChatGPT Apps directory, search for "DialogBrain" (pending review). Or add as a Custom MCP Server with the same URL.
{
"mcpServers": {
"dialogbrain": {
"url": "https://api.dialogbrain.com/mcp",
"transport": "streamable-http",
"auth": "oauth2"
}
}
}
OAuth 2.0 with Dynamic Client Registration (RFC 7591). Your MCP client registers automatically and is granted an access token scoped to one DialogBrain workspace. Revoke at any time from Settings → Developer in app.dialogbrain.com.
Every tool exposes accurate MCP hint annotations:
readOnlyHint — true for read tools (threads.list, messages.read_history, kg.find_entity, …)destructiveHint — true for delete tools (messages.delete, widgets.delete, …)openWorldHint — true for tools that touch third-party APIs (messages.send, web.search, contacts.sync, …)idempotentHint — derived from read-only/delete-by-id semanticsSee server.json for the registry manifest and gemini-extension.json for Gemini CLI integration.
MIT — see LICENSE.
io.github.mindstone/mcp-server-microsoft-teams
com.mintmcp/outlook-email
helbertparanhos/resend-email-mcp
marlinjai/email-mcp
io.github.mindstone/mcp-server-email-imap
io.github.osamahassouna/email-playbook-mcp