CAT
/MCP
SkillsMCPMarketplacesDigestToolsAdvertise

This week in Claude

Every Monday: Claude Code, Agent SDK, MCP, and the Anthropic platform moves worth your time.

Skills by Category
Frontend DevelopmentBackend & APIsTesting & QASecurityDevOps & CI/CDGit & Pull RequestsDocumentationCode Review & QualityAI & Agent BuildingSkill Development
MCP Servers by Category
Sales & MarketingWeb & Browser AutomationDatabasesAI & LLM ToolsCloud & InfrastructureCommunication & MessagingDeveloper ToolsDesign & CreativeDocuments & KnowledgeSearch & Web Crawling
Marketplaces by Category
AI Agents & OrchestrationLLM IntegrationDevelopment ToolsFrontend & UIBackend & APIsDatabasesTesting & Code QualityDevOps & CloudSecurity & ComplianceGit & Version Control

Cross AI Tools

Discover Claude Code plugins, extensions, and tools. Automatically updated directory of Anthropic Claude AI marketplaces with development tools, productivity plugins, and integrations.

Resources

  • Browse Skills
  • Browse MCP Servers
  • Browse Marketplaces
  • Plugins Reference

Community

  • About
  • Tools
  • Feedback
  • Privacy Policy
  • Advertise

Built for the Claude Code community with Claude Code by @mertduzgun

Independent project, not affiliated with Anthropic

Dialogbrain

saloprj/dialogbrain-mcp
116 toolsHTTPregistry active
Summary

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.

CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
Keep your Mac awake
Keep your Mac awake
Keep your Mac awake while Claude Code and 40+ AI agents run. Sleeps when they're idle.
One time payment $9 →
Context.devContext.dev
Context.dev
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Make money from your Skills
Make money from your Skills
On Capafy, your Skill runs online 24/7 as an agent product, and you get paid every time someone uses it.
Start earning →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
Keep your Mac awake
Keep your Mac awake
Keep your Mac awake while Claude Code and 40+ AI agents run. Sleeps when they're idle.
One time payment $9 →
Context.devContext.dev
Context.dev
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Make money from your Skills
Make money from your Skills
On Capafy, your Skill runs online 24/7 as an agent product, and you get paid every time someone uses it.
Start earning →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →

Tools

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

16 tools
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...

Parameters* required
limitinteger
Maximum number of results to returndefault: 10
querystring
Name or username to search for (supports partial matches)
channelstring
Filter by channel (telegram, email, whatsapp, sms, slack)one of telegram · email · whatsapp · sms · slack
contacts_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 params

Search 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.

Parameters* required
querystring
Username, phone, or name to search for
channelstring
Channel name: telegram, whatsapp, etc.
contacts_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 params

Add a discovered contact and open a conversation thread. Returns thread_id for the new conversation. Call contacts.discover first to verify the contact exists.

Parameters* required
channelstring
Channel name: telegram, whatsapp, etc.
identifierstring
Username or phone number to add
files_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 params

Save 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.

Parameters* required
tagsarray
Optional list of tags for categorization (e.g., ['presentation', 'dextrade']).
titlestring
Human-readable title for the file (e.g., 'Project Presentation', 'Q1 Report'). If not provided, uses original filename.
file_idinteger
ID of the file to ingest (from attachment_file_ids in context).
thread_idinteger
Optional thread ID to associate the file with. If not provided, uses context thread.
descriptionstring
Optional description of the file contents.
files_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 params

Read 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.

Parameters* required
file_idinteger
ID of the file to read (from attachment_file_ids in context).
encodingstring
Text encoding to use (default: utf-8).default: utf-8
max_charsinteger
Maximum characters to return (default: 10000). Use smaller values for large files.default: 10000
summarizeboolean
If true, generate AI summary instead of returning raw content. Use for 'summary', 'summarize', 'краткое содержание' requests.default: false
files_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 params

Upload 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.

Parameters* required
titlestring
Optional display title
contentstring
Base64-encoded file bytes. Either content OR source_url is required.
filenamestring
Filename with extension (e.g. 'photo.png')default: upload
mime_typestring
MIME type (e.g. 'image/png', 'application/pdf')default: application/octet-stream
source_urlstring
Public URL to fetch file from. Either content OR source_url is required.
files_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 params

Get 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).

Parameters* required
file_idsarray
List of file IDs (max 20)
files_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 params

Download 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...

Parameters* required
file_idsarray
List of file IDs to fetch as base64 (max 5). Get IDs from files.info or message attachment_file_ids.
messages_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 params

Read 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...

Parameters* required
limitinteger
Maximum number of messages to return (default: 10, max: 100)default: 10
offsetinteger
Number of messages to skip (for pagination, default: 0)default: 0
thread_idstring
Thread ID to read messages from (e.g., '571' or 'telegram:571'). Optional if contact_name provided.
contact_namestring
Contact/thread name to search for (optional if thread_id provided). Example: 'Jane Smith', 'John Doe'
include_outgoingboolean
Include messages sent by you (default: true)default: true
threads_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:...

Parameters* required
kindstring
Filter by conversation type: 'dm' (direct message), 'group', 'channel'one of dm · group · channel
limitinteger
Maximum number of threads to returndefault: 20
orderstring
Sort order: 'desc' (newest first, default) or 'asc' (oldest first)one of desc · ascdefault: desc
channelstring
Filter by channel typeone of telegram · email · whatsapp · sms · slack
order_bystring
Sort results by: 'last_message_at' (default), 'message_count', 'created_at'one of last_message_at · message_count · created_atdefault: last_message_at
only_unreadboolean
Only return threads with unread messages (unread_count > 0)default: false
include_archivedboolean
Include archived threadsdefault: false
participant_namestring
Filter threads by participant name (optional)
max_inactive_daysinteger
Filter threads where YOUR last message is within N days. Use this for 'recently contacted', 'active conversations'. Example: max_inactive_days=7 means you sent a message within last 7 days.
min_inactive_daysinteger
Filter threads where YOUR last message is older than N days. Use this for 'not contacted in X days', 'dormant conversations', etc. Example: min_inactive_days=5 means you haven't sent a message in 5+ days.
user_sent_messageboolean
Filter: only threads where you have sent at least one message. Use this to exclude threads where you never participated.
min_last_message_daysinteger
Filter threads where the LAST MESSAGE (from anyone) is older than N days. Use this for 'chats where last message was more than X days ago'. Example: min_last_message_days=5 means no messages in 5+ days.
messages_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 params

Send a message to a thread, channel, or contact. Supports Telegram, Email, and other connected channels. Can automatically resolve recipients and channels when not specified.

Parameters* required
ccarray
Email addresses to CC (carbon copy). Only for email channel.
bccarray
Email addresses to BCC (blind carbon copy). Only for email channel.
textstring
Message text to send. Optional if attachments provided.default:
formatstring
Message formatone of text · markdown · htmldefault: text
silentboolean
Send without notificationdefault: false
subjectstring
Email subject line. Required for new emails, optional for replies (auto-generates 'Re: ...').
thread_idstring
Thread/channel ID to send to (e.g., 'telegram:123456'). Optional if recipient_name provided.
attachmentsarray
Uploaded file IDs to attach (from /api/files)
recipient_namestring
Name of person to send to (e.g., 'Jane', 'John'). Tool will auto-resolve channel. Optional if thread_id provided.
recipient_emailstring
Email address to send to (e.g., 'john@example.com'). Creates new email thread. Only for email channel.
reply_to_message_idstring
ID of message to reply to (optional)
messages_deleteDelete a message from a thread. Supports Telegram, WhatsApp, and other connected channels. Note: Some channels have time limits on message deletion.2 params

Delete a message from a thread. Supports Telegram, WhatsApp, and other connected channels. Note: Some channels have time limits on message deletion.

Parameters* required
thread_idstring
Thread/channel ID containing the message
message_idstring
ID of the message to delete
kg_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 params

Find 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...

Parameters* required
namestring
Entity name to search for. Can be in any language (Russian, English, etc.) - transliteration is automatic.
limitinteger
Maximum results to return (1-10). Default: 5default: 5
entity_typestring
Filter by entity type: - 'person': People, contacts - 'project': Projects, tasks - 'organization': Companies, teams - 'event': Meetings, deadlines - 'topic': Discussion topics - 'workspace': User's own facts (my/our company)one of person · project · organization · event · topic · workspace
kg_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 params

Get 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...

Parameters* required
limitinteger
Maximum relationships to return (1-50). Default: 20default: 20
directionstring
Relationship direction: - 'outgoing': Entity → Others - 'incoming': Others → Entity - 'both': All relationships (default)one of incoming · outgoing · bothdefault: both
entity_idstring
Entity ID from kg.find_entity step. Use {{step_N.entity_id}} reference.
relation_typesarray
Filter by relationship types (optional): People: works_on, works_for, member_of, manages, knows, client_of, provides_service Communication: discussed_with, participated_in, mentioned_in Org/Project: developed_by, funded_by, partnered_with, integrates_with, depends_on, part_of Document: issued_by, issued_to, signed_by, authored_by Other: uses, located_in, about, follows, owns, related_to
web_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 params

Search 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...

Parameters* required
querystring
Search query - what to search for on the web.
num_resultsinteger
Number of results to return (1-10).default: 5
search_typestring
Type of search: 'search' for general web, 'news' for news articles.one of search · newsdefault: search
workspace_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 params

Universal 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...

Parameters* required
goalstring
[LEGACY - use scope instead] Single search target for backward compatibility. If both scope and goal provided, scope takes precedence.one of links · messages · threads · files
kindstring
Filter by thread type: 'dm' (direct message), 'group', or 'channel'.one of dm · group · channel
limitinteger
Maximum number of items to return.default: 10
ownerstring
Filter by link owner (for goal='links'): 'self' for user's own links (when user says 'мой', 'my', 'mine'), 'contact' for links from others.one of self · contact · unknown
querystring
Freeform search query for content/semantic search.
scopearray
Where to search. Can be: - 'auto' (default) - tool auto-detects from query keywords - ['files'] - search only files - ['links'] - search only links - ['files', 'links'] - search both in parallel - ['threads'] - search chat conversations - ['threads', 'messages'] - search chats + RAG messages Examples: - 'найди презентацию' -> 'auto' detects ['files', 'links'] - 'отправь файл' -> 'auto' detects ['files'] - 'найди ссылку notion' -> 'auto' detects ['links']default: auto
channelstring
Filter by channel (telegram, email, ...).
date_tostring
ISO8601 date string (YYYY-MM-DD) for time filtering end bound. Use with date_from for date ranges.
file_idstring
Find file by exact ID. Returns empty if file not found or not owned by user.
only_dmsboolean
Restrict to direct messages (shortcut for kind='dm').default: false
date_fromstring
ISO8601 date string (YYYY-MM-DD) for time filtering. Use context variables: {{context.yesterday}}, {{context.today}}, {{context.week_start}}, {{context.month_ago}}
days_backinteger
For unanswered threads: only include threads with activity in last N days (default: 90).default: 90
link_kindstring
Filter by link type (for goal='links'): email, calendly, twitter, telegram, linkedin, github, google_doc, google_sheet, google_slides, google_drive, google_meet, instagram, facebook, youtube, tiktok, whatsapp, vk, reddit, medium, discord, notion, figma, telegraph, luma, etherscan, website.one of email · calendly · twitter · telegram · linkedin · github
summarizeboolean
When true with goal='messages', synthesizes/summarizes the extracted messages using AI. Use for 'summarize messages from X', 'what did X write about', 'recap of conversation'. Returns both raw messages AND a synthesized summary.default: false
thread_idstring
Scope message search to a specific thread/chat by its ID. Use when user references a specific chat by name and planner resolves the thread ID.
file_originstring
Filter files by origin (for goal='files'): 'generated' for files I created (invoices from tools), 'received' for files from messages/attachments, 'uploaded' for files I manually uploaded. Use 'generated' when user asks for 'invoices I sent/created'.one of generated · received · uploaded
only_unreadboolean
Limit to threads with unread messages (unread_count > 0).default: false
contact_hintstring
Name hint to find links associated with a specific contact (for goal='links').
document_typestring
Filter files by document type (for goal='files'): invoice, contract, presentation, report, proposal, resume, letter, manual, spreadsheet.one of invoice · contract · presentation · report · proposal · resume
only_incomingboolean
Filter to incoming messages only (messages FROM others). Use for 'что писал X', 'сообщения от X'.default: false
only_outgoingboolean
Filter to outgoing messages only (messages YOU sent). Use for 'что я писал', 'мои сообщения'.default: false
attachment_extstring
Filter by attachment extension (pdf, md, ...).
attachment_namestring
Filter by attachment/file name (e.g., 'readme.md').
only_unansweredboolean
Limit to unanswered threads (last message incoming).default: false
participant_namestring
Filter by participant/contact name. Works with ALL goals: - goal='threads': Find chats WITH this participant - goal='messages': Find messages FROM this participant Use for 'что писал X', 'сообщения от X', 'messages from X', 'chats with X'
min_inactive_daysinteger
Only return threads where USER hasn't replied in N days (filters by user's last outgoing message).
require_attachmentsboolean
Only return hits that include attachments.default: false
min_last_message_daysinteger
Only return threads where LAST MESSAGE (from anyone) is older than N days (dormant/inactive chats).

DialogBrain MCP

Remote 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.

  • MCP URL: https://api.dialogbrain.com/mcp
  • Transport: Streamable HTTP
  • Auth: OAuth 2.0 (Dynamic Client Registration)
  • Tools: 156 (read/write across all channels)
  • Product: https://dialogbrain.com
  • Developer docs: https://docs.dialogbrain.com

What you can do

  • Read messages across channels: messages.read_history, threads.list, threads.search
  • Send messages: messages.send, messages.forward, messages.delete
  • Manage contacts: contacts.find, contacts.discover, contacts.sync, contacts.profile
  • Query workspace knowledge: workspace.search, kg.find_entity, kg.get_relationships
  • Trigger AI agents: agents.ask, agents.simulate_inbound, agents.approve_draft
  • Files, calendar, calls, voice, browser automation, YouTube — see full tool list in Developer Docs.

Quick start

Claude Desktop / Claude.ai (web)

Add as a Custom Connector with URL https://api.dialogbrain.com/mcp. Sign in via OAuth when prompted.

ChatGPT (Apps)

In the ChatGPT Apps directory, search for "DialogBrain" (pending review). Or add as a Custom MCP Server with the same URL.

Cursor / generic MCP clients

{
  "mcpServers": {
    "dialogbrain": {
      "url": "https://api.dialogbrain.com/mcp",
      "transport": "streamable-http",
      "auth": "oauth2"
    }
  }
}

Authentication

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.

Tool annotations

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 semantics

See server.json for the registry manifest and gemini-extension.json for Gemini CLI integration.

Privacy & support

  • Privacy policy: https://dialogbrain.com/privacy
  • Terms: https://dialogbrain.com/terms
  • Support: support@dialogbrain.com

License

MIT — see LICENSE.

Featured
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
Keep your Mac awake
Keep your Mac awake
Keep your Mac awake while Claude Code and 40+ AI agents run. Sleeps when they're idle.
One time payment $9 →
Context.devContext.dev
Context.dev
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Make money from your Skills
Make money from your Skills
On Capafy, your Skill runs online 24/7 as an agent product, and you get paid every time someone uses it.
Start earning →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →
Categories
Communication & MessagingSearch & Web Crawling
Registryactive
TransportHTTP
UpdatedMay 17, 2026
View on GitHub

Related Communication & Messaging MCP Servers

View all →
Microsoft 365 Teams

io.github.mindstone/mcp-server-microsoft-teams

Microsoft 365 Teams via Graph: list chats, read/send messages, list teams/channels, presence.
8
Outlook Email

com.mintmcp/outlook-email

A MCP server for Outlook email that lets you search, read, and draft emails and replies.
8
Resend Email MCP

helbertparanhos/resend-email-mcp

Complete Resend email MCP: full API coverage + debug layer (deliverability, DNS, bounces).
Email Mcp

marlinjai/email-mcp

Unified email MCP server for Gmail, Outlook, iCloud, and IMAP with batch operations
13
Email (IMAP/SMTP)

io.github.mindstone/mcp-server-email-imap

Email IMAP/SMTP MCP server: iCloud, Gmail, Yahoo, Outlook, and custom IMAP providers
8
HTML Email Playbook

io.github.osamahassouna/email-playbook-mcp

Teaches AI to write HTML email that renders in Outlook, Gmail, and Apple Mail. 19 rules, 6 comps.