Intercom Support Data
STDIOAI assistants can access and analyze customer support data from Intercom.
AI assistants can access and analyze customer support data from Intercom.
An MCP-compliant server that enables AI assistants to access and analyze customer support data from Intercom.
# Install the package globally npm install -g mcp-server-for-intercom # Set your Intercom API token export INTERCOM_ACCESS_TOKEN="your_token_here" # Run the server intercom-mcp
The default Docker configuration is optimized for Glama compatibility:
# Start Docker (if not already running) # On Windows: Start Docker Desktop application # On Linux: sudo systemctl start docker # Build the image docker build -t mcp-intercom . # Run the container with your API token and port mappings docker run --rm -it -p 3000:3000 -p 8080:8080 -e INTERCOM_ACCESS_TOKEN="your_token_here" mcp-intercom:latest
Validation Steps:
# Test the server status curl -v http://localhost:8080/.well-known/glama.json # Test the MCP endpoint curl -X POST -H "Content-Type: application/json" -d '{"jsonrpc":"2.0","id":1,"method":"mcp.capabilities"}' http://localhost:3000
If you prefer a lighter version without Glama-specific dependencies:
# Build the standard image docker build -t mcp-intercom-standard -f Dockerfile.standard . # Run the standard container docker run --rm -it -p 3000:3000 -p 8080:8080 -e INTERCOM_ACCESS_TOKEN="your_token_here" mcp-intercom-standard:latest
The default version includes specific dependencies and configurations required for integration with the Glama platform, while the standard version is more lightweight.
list_conversations
Retrieves all conversations within a date range with content filtering.
Parameters:
startDate
(DD/MM/YYYY) – Start date (required)endDate
(DD/MM/YYYY) – End date (required)keyword
(string) – Filter to include conversations with this textexclude
(string) – Filter to exclude conversations with this textNotes:
Example:
{ "startDate": "15/01/2025", "endDate": "21/01/2025", "keyword": "billing" }
search_conversations_by_customer
Finds conversations for a specific customer.
Parameters:
customerIdentifier
(string) – Customer email or Intercom ID (required)startDate
(DD/MM/YYYY) – Optional start dateendDate
(DD/MM/YYYY) – Optional end datekeywords
(array) – Optional keywords to filter by contentNotes:
Example:
{ "customerIdentifier": "[email protected]", "startDate": "15/01/2025", "endDate": "21/01/2025", "keywords": ["billing", "refund"] }
search_tickets_by_status
Retrieves tickets by their status.
Parameters:
status
(string) – "open", "pending", or "resolved" (required)startDate
(DD/MM/YYYY) – Optional start dateendDate
(DD/MM/YYYY) – Optional end dateExample:
{ "status": "open", "startDate": "15/01/2025", "endDate": "21/01/2025" }
search_tickets_by_customer
Finds tickets associated with a specific customer.
Parameters:
customerIdentifier
(string) – Customer email or Intercom ID (required)startDate
(DD/MM/YYYY) – Optional start dateendDate
(DD/MM/YYYY) – Optional end dateExample:
{ "customerIdentifier": "[email protected]", "startDate": "15/01/2025", "endDate": "21/01/2025" }
Add to your claude_desktop_config.json
:
{ "mcpServers": { "intercom-mcp": { "command": "intercom-mcp", "args": [], "env": { "INTERCOM_ACCESS_TOKEN": "your_intercom_api_token" } } } }
For detailed technical information about how this server integrates with Intercom's API, see src/services/INTERCOM_API_NOTES.md
. This document explains our parameter mapping, Intercom endpoint usage, and implementation details for developers.
# Clone and install dependencies git clone https://github.com/raoulbia-ai/mcp-server-for-intercom.git cd mcp-server-for-intercom npm install # Build and run for development npm run build npm run dev # Run tests npm test
This project is an independent integration and is not affiliated with, officially connected to, or endorsed by Intercom Inc. "Intercom" is a registered trademark of Intercom Inc.
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.