Skip to main content
Glama
vivernet

Chatwoot MCP Server

by vivernet

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
CHATWOOT_EMAILNoYour Chatwoot account email, used for JWT authentication (alternative to API token).
CHATWOOT_BASE_URLYesThe base URL of your Chatwoot instance, e.g. https://your-chatwoot-instance.com
CHATWOOT_PASSWORDNoYour Chatwoot account password, used for JWT authentication and automatic token refresh (alternative to API token).
CHATWOOT_API_TOKENNoYour Chatwoot API access token (recommended, no expiration). Found in Profile Settings → Access Token.

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
chatwoot_list_conversationsA

List conversations from a Chatwoot account with filtering options.

This tool retrieves conversations from Chatwoot, allowing you to filter by status, assignee, and inbox. Supports pagination for large result sets.

Args:

  • account_id (number): The numeric ID of the Chatwoot account (required)

  • page (number): Page number for pagination, starts at 1 (default: 1)

  • status (string): Filter by conversation status - "open", "resolved", "pending", "snoozed", or "all" (default: "open")

  • assignee_type (string): Filter by assignee - "me", "unassigned", or "all" (optional)

  • inbox_id (number): Filter by specific inbox ID (optional)

  • response_format (string): Output format - "markdown" or "json" (default: "markdown")

Returns: A list of conversations with details including:

  • Conversation ID, status, and inbox

  • Contact information (name, email)

  • Assignee details

  • Message count and unread count

  • Last activity timestamp

Examples:

  • List all open conversations: { account_id: 1, status: "open" }

  • List unassigned conversations: { account_id: 1, assignee_type: "unassigned" }

  • List conversations in specific inbox: { account_id: 1, inbox_id: 5 }

chatwoot_get_conversationA

Get detailed information about a specific Chatwoot conversation.

This tool retrieves full details for a single conversation including contact info, assignee, labels, and custom attributes.

Args:

  • account_id (number): The numeric ID of the Chatwoot account (required)

  • conversation_id (number): The ID of the conversation to retrieve (required)

  • response_format (string): Output format - "markdown" or "json" (default: "markdown")

Returns: Full conversation details including:

  • Status, inbox, and metadata

  • Complete contact information

  • Assignee details

  • Labels and custom attributes

  • Message statistics

Examples:

  • Get conversation details: { account_id: 1, conversation_id: 123 }

chatwoot_toggle_statusA

Change the status of a Chatwoot conversation (open/resolved/pending/snoozed).

This tool updates the conversation status. Use "snoozed" together with snoozed_until to schedule a reopen.

Args:

  • account_id (number): The numeric ID of the Chatwoot account (required)

  • conversation_id (number): The ID of the conversation (required)

  • status (string): Target status: open, resolved, pending or snoozed (required)

  • snoozed_until (number): Optional Unix timestamp (seconds) when a snoozed conversation reopens

chatwoot_list_messagesA

List all messages in a Chatwoot conversation.

This tool retrieves all messages from a specific conversation, including message content, sender information, timestamps, and attachments.

Args:

  • account_id (number): The numeric ID of the Chatwoot account (required)

  • conversation_id (number): The ID of the conversation (required)

  • response_format (string): Output format - "markdown" or "json" (default: "markdown")

Returns: List of messages with:

  • Message ID and content

  • Message type (incoming/outgoing)

  • Sender information (name, type)

  • Timestamp

  • Attachment information

  • Private flag (for internal notes)

Examples:

  • List all messages: { account_id: 1, conversation_id: 123 }

chatwoot_create_messageA

Create a new message in a Chatwoot conversation.

This tool sends a message in an existing conversation. Can be used for outgoing messages to customers or private internal notes.

Args:

  • account_id (number): The numeric ID of the Chatwoot account (required)

  • conversation_id (number): The ID of the conversation (required)

  • content (string): The message content (required)

  • message_type (string): Type of message - "outgoing" or "incoming" (default: "outgoing")

  • private (boolean): Whether this is a private internal note (default: false)

Returns: Created message details including ID and confirmation

Examples:

  • Send a reply: { account_id: 1, conversation_id: 123, content: "Thank you for contacting us!" }

  • Add internal note: { account_id: 1, conversation_id: 123, content: "Customer called for follow-up", private: true }

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.9/5.0

Scored across 5 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: listing conversations, getting one conversation, changing status, listing messages, and creating a message. The list/get and message read/write pairs are cleanly separated by scope and action.

Naming Consistency5/5

All tools use the same chatwoot_ prefix and snake_case verb_noun pattern. The convention is predictable throughout, with only minor semantic looseness in 'toggle_status' since it sets rather than toggles.

Tool Count5/5

Five tools is a compact, well-scoped set for conversation-centric Chatwoot workflows. Each tool earns its place without redundancy or excessive surface area.

Completeness3/5

The core conversation read/reply/status workflow is covered, but notable Chatwoot operations are absent: creating conversations, assigning agents, managing labels, and listing contacts or inboxes. These gaps will limit common support workflows.

Maintenance

ActivityMaintained
ResponsivenessNo issues