intercom-mcp-server
intercom-mcp-server
MCP server for the Intercom REST API (v2.11).
102 tools covering every Intercom resource:
Module | Tools |
Admins | 5 |
Articles | 6 |
Companies | 12 |
Contacts | 17 |
Conversations | 12 |
Data Attributes | 3 |
Data Events | 3 |
Help Center | 7 |
Messages | 1 |
News | 8 |
Segments | 3 |
Tags | 9 |
Teams | 2 |
Tickets | 11 |
Visitors | 3 |
Setup
The server has three modes, in priority order:
Option A: Proxy mode (no credentials needed)
If you already use the official Intercom MCP (mcp.intercom.com) via mcp-remote in Claude Code, this server will automatically proxy through that existing authenticated session. No tokens, no developer app required — just a regular Intercom workspace account.
Add both to ~/.claude.json:
{
"mcpServers": {
"intercom": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://mcp.intercom.com/mcp"]
},
"intercom-local": {
"command": "node",
"args": ["/path/to/intercom-mcp-server/dist/index.js"]
}
}
}When intercom-local starts with no token set, it detects this and connects to mcp.intercom.com as a sub-process, reusing the mcp-remote session that is already authenticated. mcp-remote will prompt for browser login on first use.
Option B: Direct access token
If you have a workspace access token (from Intercom Settings → Developers → Access tokens):
{
"mcpServers": {
"intercom-local": {
"command": "node",
"args": ["/path/to/intercom-mcp-server/dist/index.js"],
"env": {
"INTERCOM_ACCESS_TOKEN": "your_token_here"
}
}
}
}Option C: OAuth app
If you have an Intercom developer account and want to register your own OAuth app, set INTERCOM_CLIENT_ID and INTERCOM_CLIENT_SECRET, then call the auth_start tool. It opens a local callback server, redirects your browser through Intercom's OAuth consent screen, and stores the token at ~/.intercom-mcp/token.json.
Build from source
git clone <repo>
cd intercom-mcp-server
npm install # also runs tscTools reference
Auth (OAuth)
auth_start— Begin OAuth login; returns a browser URL to openauth_status— Check if a token is stored and which source it came fromauth_logout— Remove the stored token
Admins
admin_identify— Get the current authenticated adminadmin_list— List all adminsadmin_get— Get a specific adminadmin_set_away— Set away mode for an adminadmin_list_activity_logs— List admin activity logs
Articles
article_list— List all articlesarticle_create— Create an articlearticle_get— Get an articlearticle_update— Update an articlearticle_delete— Delete an articlearticle_search— Search articles by phrase
Companies
company_list— List/filter companiescompany_create_or_update— Create or update a companycompany_get— Get a company by Intercom IDcompany_update— Update a companycompany_delete— Delete a companycompany_list_all— List all companies (paginated POST)company_scroll— Scroll through all companiescompany_list_contacts— List contacts for a companycompany_list_segments— List segments for a companyattach_contact_to_company— Attach a contact to a companylist_contact_companies— List companies for a contactdetach_contact_from_company— Detach a contact from a company
Contacts
contact_list— List all contactscontact_create— Create a contactcontact_get— Get a contactcontact_update— Update a contactcontact_delete— Delete a contactcontact_archive/contact_unarchive— Archive/unarchive a contactmerge_contacts— Merge two contactssearch_contacts— Search contacts with filterscontact_list_notes/contact_create_note— Notescontact_list_tags/contact_attach_tag/contact_detach_tag— Tagscontact_list_subscriptions/contact_attach_subscription/contact_detach_subscription— Subscriptions
Conversations
conversation_list— List conversationsconversation_create— Start a conversationconversation_get— Get a conversationconversation_update— Update a conversationsearch_conversations— Search conversationsconversation_reply— Reply to a conversationconversation_manage— Close, open, snooze, or assign a conversationconversation_run_assignment_rules— Run assignment rulesconversation_attach_contact/conversation_detach_contact— Manage contactsconversation_redact— Redact a part or sourceconversation_convert_to_ticket— Convert to a ticket
Data Attributes
data_attribute_list— List data attributesdata_attribute_create— Create a data attributedata_attribute_update— Update a data attribute
Data Events
data_event_list— List events for a userdata_event_create— Track an eventdata_event_summaries— Submit event summaries
Help Center
help_center_list/help_center_get— Help centerscollection_list/collection_create/collection_get/collection_update/collection_delete— Collections
Messages
create_message— Send an email or in-app message
News
news_list_items/news_create_item/news_get_item/news_update_item/news_delete_item— News itemsnews_list_newsfeeds/news_get_newsfeed/news_list_newsfeed_items— Newsfeeds
Segments
segment_list— List segmentssegment_get— Get a segmentsegment_list_for_contact— List segments for a contact
Tags
tag_list/tag_get/tag_create_or_update/tag_delete— Tag CRUDtag_companies— Tag companiestag_conversation/tag_detach_conversation— Tag conversationstag_ticket/tag_detach_ticket— Tag tickets
Teams
team_list— List teamsteam_get— Get a team
Tickets
ticket_create/ticket_get/ticket_update/ticket_search/ticket_reply— Ticketsticket_type_list/ticket_type_create/ticket_type_get/ticket_type_update— Ticket typesticket_type_attribute_create/ticket_type_attribute_update— Ticket type attributes
Visitors
visitor_get— Get a visitorvisitor_update— Update a visitorvisitor_convert— Convert a visitor to lead or user
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/OtakuXavier/intercom-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server