chatwoot-mcp
Provides read-only access to Chatwoot analytics and data, enabling tools to retrieve conversations, agent and inbox performance, team metrics, labels, CSAT responses, Captain AI insights, real-time metrics, and contact details.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@chatwoot-mcpCan you give me a summary of our support performance over the past week?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
chatwoot-mcp
An MCP (Model Context Protocol) server that exposes Chatwoot analytics data to AI assistants. All tools are read-only.
Features
32 MCP tools covering conversations, agents, inboxes, teams, labels, CSAT, Captain AI, real-time metrics, and contacts
Two transport modes: stdio for Claude Desktop, HTTP for claude.ai remote connector
Multi-tenant HTTP mode: each user provides their own Chatwoot credentials per request
Dual output format:
markdown(human-readable) orjsonfor all toolsPeriod shortcuts: built-in ranges like
hoje,7d,30d,90dfor all time-series queries
Related MCP server: Clamp Analytics MCP Server
Requirements
Python 3.11+
uv package manager
A Chatwoot account with API access
Installation
git clone https://github.com/minholi/chatwoot-mcp.git
cd chatwoot-mcp
uv syncConfiguration
Copy .env.example to .env and fill in your credentials:
cp .env.example .envCHATWOOT_URL=https://your-instance.chatwoot.com
CHATWOOT_ACCOUNT_ID=1
CHATWOOT_API_TOKEN=your_api_token_hereYour API token can be found in Chatwoot under Profile Settings → Access Token.
Usage
Stdio mode (Claude Desktop)
Run the server directly — credentials come from the .env file:
uv run python main.pyTo integrate with Claude Desktop, add this to your claude_desktop_config.json:
{
"mcpServers": {
"chatwoot": {
"command": "uv",
"args": ["run", "python", "main.py"],
"cwd": "/path/to/chatwoot-mcp",
"env": {
"CHATWOOT_URL": "https://your-instance.chatwoot.com",
"CHATWOOT_ACCOUNT_ID": "1",
"CHATWOOT_API_TOKEN": "your_api_token_here"
}
}
}
}HTTP mode (claude.ai remote connector)
Start the server in HTTP mode:
uv run python main.py --transport http --port 8000Each request must include a composite key in the Authorization or X-API-Key header:
Authorization: Bearer https://your-instance.chatwoot.com|account_id|api_tokenThis allows multiple users to connect with their own credentials without server-side configuration.
Available endpoints:
Endpoint | Description |
| Service info |
| Health check |
| MCP protocol (stateless) |
Docker
docker compose up -dThe compose file reads from .env and runs in HTTP mode on http://127.0.0.1:8000 by default. Set MCP_HOST_PORT in .env to change the exposed port.
Available tools
Overview
Tool | Description |
| Account summary: conversation counts, response times, resolution rate, CSAT |
| Bot performance: handoffs, autonomous resolution rate, average response time |
| Heat map of conversation volume by hour and day of week |
Agents
Tool | Description |
| List all agents with ID, email, and availability status |
| Per-agent metrics: open/resolved conversations, response time, CSAT |
Conversations
Tool | Description |
| List conversations with filters (status, assignee, inbox, team, label) |
| Full-text search across conversations and messages |
| Full details of a specific conversation |
| Complete message history of a conversation |
Labels
Tool | Description |
| List all labels with ID, color, and description |
| Performance metrics for a specific label |
Inboxes
Tool | Description |
| List all inboxes (WhatsApp, email, widget, etc.) |
| Performance metrics for a specific inbox |
Teams
Tool | Description |
| List all teams |
| Performance metrics for a specific team |
Captain AI
Tool | Description |
| List AI assistants configured in the account |
| AI assistant performance metrics |
| FAQ usage and effectiveness statistics |
| Period-to-period comparison overview |
| Funnel of resolution steps |
| Resolution rate trend over time |
CSAT
Tool | Description |
| Survey responses with filters (period, rating, inbox, team) |
| Aggregated CSAT summary with breakdown by rating |
Real-time
Tool | Description |
| Real-time counts: open, unattended, unassigned, pending |
| Real-time conversations grouped by team or agent |
Contacts
Tool | Description |
| Search contacts by name, email, phone, or identifier |
| Full contact details |
| Conversation history of a contact |
Advanced reports
Tool | Description |
| Cross-distribution of conversations between inboxes and labels |
| Histogram of first-response-time distribution |
Development
# Lint and format
uv run ruff check src/ main.py
uv run ruff format src/ main.py
# Run tests
uv run pytestLicense
MIT — see LICENSE.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
No tool schema history has been recorded yet.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Query your Betterlytics web analytics from AI agents: traffic, funnels, journeys, errors, uptime.
- AgentioOAuthcom.agentio
Ask about your Agentio campaigns, Creator deals, and performance on YouTube and Meta. Read-only.
AI access to Hitsteps analytics, live visitors, uptime, goals, alerts, and chats.
- RulebaseOAuthco.rulebase
CX ops: read conversations, calls and QA evaluations from Zendesk, Freshdesk, Five9 and more.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceProvides AI assistants with access to Lumenore's analytics capabilities, enabling natural language queries for data insights, advanced analytics (trends, predictions, correlations, outliers), and real-time data processing with zero persistent storage.MIT
- AlicenseAqualityAmaintenanceProvides AI assistants with read access to Clamp analytics data including pageviews, visitors, referrers, and custom events. Enables traffic analysis, conversion funnel evaluation, and metric alerts through natural language queries.33322MIT
- AlicenseNot gradedqualityFmaintenanceProvides AI assistants with read-only access to Secureframe's compliance data, enabling querying of security controls, tests, users, vendors, and more across frameworks like SOC 2 and ISO 27001.8MIT
- FlicenseNot gradedqualityBmaintenanceEnables AI assistants to query internal business data for insights into customers, revenue, subscriptions, sales, and churn through controlled, read-only MCP tools.-
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/minholi/chatwoot-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server