# Intercom MCP

> Intercom MCP Server gives your AI agent direct access to your customer communication data. Manage support conversations, search contacts, and pull company details without leaving your agent interface. You can list conversations, find specific contacts by email or name, and even reply to threads. It handles the full spectrum of customer support data, from initial lead enrichment to final resolution metrics.

## Overview
- **Category:** talk-to-me
- **Price:** Free
- **Tags:** helpdesk, conversational-support, customer-data, sla-tracking, contact-management, proactive-support

## Description

Your AI agent gets direct access to your customer communication data via the Intercom MCP Server. You can manage support conversations, search contacts, and pull company details without leaving your agent interface. You'll get the full picture of your customer base, from initial lead info to final resolution metrics.

**Searching and Retrieving Contacts**

You can use `list_contacts` to get a list of every contact or lead in the system. If you know who you're talking to, you can use `search_contacts` to narrow that down using specific criteria like name or email. To get all the juicy details on one person, you just hit up `get_contact`, which retrieves all the specific details for a single customer contact.

**Handling Conversations**

To see what's going on with customer support, you can use `list_conversations` to pull a list of all active and past threads. You can then drill down with `list_conversations` to get the full history and current status of a single conversation thread. You'll keep the support history current by sending a reply to an existing thread using `reply_to_conversation`.

**Company and Team Data**

When you need to know about the company behind the contact, you can hit up `list_companies` to pull a list of every company record. You can also get a full company profile, including their current plan, usage metrics, and key attributes. You'll see a list of all team members using the Intercom platform by running `list_admins`, and you can grab a list of predefined tags used to categorize data with `list_tags`.

## Tools

### assign_conversation
Assign a conversation to a team member

### close_conversation
Requires the admin ID who is closing it.

Close/resolve a support conversation

### create_contact
Pass role (user/lead), email, and optional name. Returns the new contact ID.

Create a new contact/lead in Intercom

### get_contact
Retrieves the specific details for one customer contact.

### get_conversation
Fetches the full history and current status of a single conversation thread.

### list_admins
Lists all team members who use the Intercom platform.

### list_articles
Retrieves a list of available help center articles.

### list_companies
Pulls a list of every company record in Intercom.

### list_contacts
Retrieves a list of all contacts or leads in the system.

### list_conversations
Retrieves a list of all active and past conversations.

### list_segments
List all user segments

### list_tags
Gets a list of predefined tags used to categorize data.

### reply_to_conversation
Sends a reply message into an existing conversation thread.

### search_contacts
Searches the contact database using specific criteria like name or email.

### update_contact
Pass the contact ID and a JSON body of fields to update.

Update an existing Intercom contact

## Prompt Examples

**Prompt:** 
```
Find the contact record for sarah@startup.io.
```

**Response:** 
```
Found: Sarah Chen (sarah@startup.io). Company: Startup.io (Growth plan). Last seen: 2 hours ago. Total conversations: 12 (3 open). Custom attributes: MRR $2,400, Account Manager: James.
```

**Prompt:** 
```
How many open conversations do we have right now?
```

**Response:** 
```
You currently have 23 open conversations. Breakdown: 8 unassigned, 10 assigned to support agents, and 5 snoozed. The oldest open conversation is 4 hours old (assigned to Maria).
```

**Prompt:** 
```
List all companies on our Enterprise plan.
```

**Response:** 
```
I found 14 companies on the Enterprise plan. Top 5 by user count: Acme Corp (250 users), GlobalTech (180 users), DataFlow Inc (95 users), CloudFirst (72 users), and SecureStack (45 users).
```

## Capabilities

### Search and retrieve specific customer contacts
You search the customer database by email, name, company, or custom attribute, getting back a specific contact record.

### View and manage conversation threads
You list or search conversation threads to get status, assignment, and the full history of customer interactions.

### Get detailed company profile data
You pull full company information, including their current plan, usage metrics, and key attributes.

### Review support team performance data
You pull metrics on response times and resolution counts to analyze team efficiency and support load.

### Reply to an active conversation
You write a reply to a specific conversation thread, keeping the support history current.

### List all available customer accounts
You pull a list of every company record in the system, which can be used for bulk data checks.

## Use Cases

### A support agent needs to know a customer's history.
A customer calls in. The support agent asks their agent, 'What's the history for sarah@startup.io?'. The agent runs `search_contacts` and `get_conversation`, pulling up Sarah's profile, her company's plan, and the last three support threads. The agent delivers this context instantly, and the agent drafts the reply using `reply_to_conversation`.

### A sales rep needs to qualify a lead quickly.
A sales rep is prepping for a call. They ask their agent, 'Pull all company details for Acme Corp.' The agent runs `list_companies` and `search_contacts`, finding Acme's user count and plan. The rep uses this data to adjust their pitch on the spot.

### A CSM needs to assess overall support load.
The CSM needs a quick snapshot of support status. They ask their agent, 'How many conversations are open right now?'. The agent runs `list_conversations`, providing a count, a breakdown of unassigned threads, and the oldest open conversation date.

### An ops manager needs to audit team performance.
The manager asks their agent, 'Show me the resolution metrics for the last month.' The agent runs the appropriate tools to pull conversation counts and response times, allowing the manager to identify bottlenecks in the support process.

## Benefits

- Instantly get contact context. Instead of opening a separate CRM tab, your agent uses `search_contacts` to find a user by email or name and provides details immediately.
- Stay in the chat. With `get_conversation` and `list_conversations`, your agent pulls the full support history, letting you respond without switching tools or screens.
- Understand account health. Use `list_companies` to pull company profiles and usage metrics, letting you quickly see if a customer is on the right plan or if they're slipping into churn.
- Improve team performance. Pull support analytics by calling tools like `list_conversations` to track resolution times and see which agents need coaching.
- Enrich outreach data. Before you call a prospect, run `search_contacts` to get the latest company details, making your pitch specific and relevant.
- Close the loop. Use `reply_to_conversation` to send a message directly from your agent, keeping the conversation thread active without manual copy/paste.

## How It Works

The bottom line is, your AI client talks directly to Intercom using the provided credentials, letting you run CRM commands without opening a browser.

1. Subscribe to the Intercom integration on the Vinkius Marketplace.
2. Create a private app in the Intercom Developer Hub and grab the Access Token.
3. Ask your AI agent to search contacts, list conversations, or pull customer data. The agent uses the token to connect and execute the tool call.

## Frequently Asked Questions

**How do I use the `search_contacts` tool with Intercom MCP Server?**
You tell your agent to search contacts by providing criteria like an email address or a name. The agent executes `search_contacts` and returns the contact record, including company and plan details.

**Can I use `list_companies` to see all my customer plans?**
Yes. Running `list_companies` pulls a list of every company record in Intercom, allowing you to review which plan tiers are in use across your entire customer base.

**What's the difference between `list_contacts` and `search_contacts`?**
Use `list_contacts` if you need a raw dump of every contact. Use `search_contacts` when you know specific criteria (like a name or email) and need the data for a specific person.

**How do I make the agent respond to a thread using `reply_to_conversation`?**
You instruct the agent to reply, providing the target conversation ID and the text you want to send. The agent executes the tool and sends the message on your behalf.

**Do I need to use `get_contact` for every user lookup?**
No. `get_contact` gets a specific record when you know the ID. If you're starting from scratch, `search_contacts` is usually better because it lets you search by name or email first.

**What parameters does `get_conversation` need to pull a specific chat thread?**
You need to provide the conversation ID. Once you have the ID, the tool returns the full transcript, including all messages, participants, and status updates for that specific thread.

**Can `list_conversations` filter by conversation status or date range?**
It allows filtering by status, so you can specify if you only want open, closed, or snoozed conversations. You can also filter by the last updated date to check for recent activity.

**How do I use `search_contacts` to find leads associated with a specific company?**
You pass the company name or ID as a criteria. The tool then filters the contact list, giving you all associated contacts and their specific details within that company structure.

**How do I get my Intercom Access Token?**
Go to the **Intercom Developer Hub** at **app.intercom.com/a/developer-hub/**. Click **New app**, give it a name, and select the workspace to install it in. Once created, click on your app, then navigate to **Authentication** in the left sidebar. Your **Access Token** will be displayed on this page. Configure the required permissions (scopes) — such as Read/Write People, Conversations, or Companies — and click **Save**. Copy the token and paste it below.

**Can I look up a customer's full conversation history instantly?**
Yes. Just ask your AI agent 'Show me all conversations with john@acme.com' and it retrieves every conversation — open, closed, and snoozed — including message content, agent assignments, tags, and resolution times. Perfect for getting full context before a customer call.

**Can I track support team performance metrics?**
Yes. Your AI agent can pull conversation counts, average response times, resolution rates, and open ticket volumes — giving managers instant visibility into team workload and SLA compliance without building custom reports or opening the Intercom analytics dashboard.

**Is my customer data secure?**
Your Access Token is a private app token that only accesses data in your own Intercom workspace. It respects your workspace's permission model — the token only has access to the scopes you explicitly grant. All API calls are made over HTTPS, and the token is never shared with third parties.