Intercom MCP Server for Cloudflare Workers
81 tools available in the Intercom MCP server. Each tool can be called by AI assistants to perform specific actions.
intercom_create_tagCreate a new tag.
Args:
Returns: The created tag.
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Tag name"
}
}
}intercom_get_companyGet a single company by ID.
Args:
Returns: The company record.
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Company ID"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
}
}
}intercom_delete_contactDelete a contact from Intercom.
Args:
Returns: Confirmation of deletion.
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Contact ID to delete"
}
}
}intercom_get_company_by_company_idGet a single company by your external company_id.
Args:
Returns: The company record.
{
"type": "object",
"required": [
"company_id"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"company_id": {
"type": "string",
"description": "Your external company ID"
}
}
}intercom_get_meGet the currently authenticated admin.
Returns: The current admin record.
{
"type": "object",
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
}
}
}intercom_list_adminsList all admins/teammates in the workspace.
Returns: List of all admins.
{
"type": "object",
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
}
}
}intercom_get_adminGet a single admin by ID.
Args:
Returns: The admin record.
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Admin ID"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
}
}
}intercom_attach_contact_to_companyAttach a contact to a company.
Args:
Returns: The company record.
{
"type": "object",
"required": [
"contact_id",
"company_id"
],
"properties": {
"company_id": {
"type": "string",
"description": "Company ID to attach"
},
"contact_id": {
"type": "string",
"description": "Contact ID"
}
}
}intercom_set_admin_awaySet an admin's away status.
Args:
Returns: The updated admin record.
{
"type": "object",
"required": [
"admin_id",
"away_mode_enabled",
"away_mode_reassign"
],
"properties": {
"admin_id": {
"type": "string",
"description": "Admin ID"
},
"away_mode_enabled": {
"type": "boolean",
"description": "Whether away mode is enabled"
},
"away_mode_reassign": {
"type": "boolean",
"description": "Whether to reassign conversations"
}
}
}intercom_list_articlesList Help Center articles with pagination.
Args:
Returns: Paginated list of articles.
{
"type": "object",
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"per_page": {
"type": "integer",
"default": 20,
"maximum": 50,
"minimum": 1
},
"starting_after": {
"type": "string"
}
}
}intercom_get_articleGet a single article by ID.
Args:
Returns: The article record with content.
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Article ID"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
}
}
}intercom_create_articleCreate a new Help Center article.
Args:
Returns: The created article.
{
"type": "object",
"required": [
"title",
"author_id"
],
"properties": {
"body": {
"type": "string",
"description": "Article body content (HTML)"
},
"state": {
"enum": [
"published",
"draft"
],
"type": "string",
"default": "draft",
"description": "Article state"
},
"title": {
"type": "string",
"description": "Article title"
},
"author_id": {
"type": "string",
"description": "Admin ID of the author"
},
"parent_id": {
"type": "string",
"description": "Parent collection ID"
},
"description": {
"type": "string",
"description": "Article description"
},
"parent_type": {
"enum": [
"collection"
],
"type": "string",
"description": "Type of parent (must be collection)"
}
}
}intercom_update_articleUpdate an existing article.
Args:
Returns: The updated article.
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Article ID"
},
"body": {
"type": "string"
},
"state": {
"enum": [
"published",
"draft"
],
"type": "string"
},
"title": {
"type": "string"
},
"author_id": {
"type": "string"
},
"parent_id": {
"type": "string"
},
"description": {
"type": "string"
},
"parent_type": {
"enum": [
"collection"
],
"type": "string"
}
}
}intercom_delete_articleDelete an article.
Args:
Returns: Confirmation of deletion.
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Article ID to delete"
}
}
}intercom_search_articlesSearch for articles by phrase.
Args:
Returns: List of matching articles.
{
"type": "object",
"required": [
"phrase"
],
"properties": {
"state": {
"enum": [
"published",
"draft"
],
"type": "string"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"phrase": {
"type": "string",
"description": "Search phrase"
},
"help_center_id": {
"type": "string"
}
}
}intercom_list_collectionsList Help Center collections with pagination.
Args:
Returns: Paginated list of collections.
{
"type": "object",
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"per_page": {
"type": "integer",
"default": 20,
"maximum": 50,
"minimum": 1
},
"starting_after": {
"type": "string"
}
}
}intercom_get_collectionGet a single collection by ID.
Args:
Returns: The collection record.
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Collection ID"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
}
}
}intercom_create_collectionCreate a new Help Center collection.
Args:
Returns: The created collection.
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Collection name"
},
"description": {
"type": "string",
"description": "Collection description"
},
"help_center_id": {
"type": "string",
"description": "Help Center ID"
}
}
}intercom_update_collectionUpdate an existing collection.
Args:
Returns: The updated collection.
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Collection ID"
},
"name": {
"type": "string"
},
"description": {
"type": "string"
}
}
}intercom_delete_collectionDelete a collection.
Args:
Returns: Confirmation of deletion.
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Collection ID to delete"
}
}
}intercom_archive_contactArchive a contact in Intercom.
Args:
Returns: The archived contact.
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Contact ID to archive"
}
}
}intercom_unarchive_contactUnarchive a contact in Intercom.
Args:
Returns: The unarchived contact.
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Contact ID to unarchive"
}
}
}intercom_list_companiesList companies from Intercom with pagination.
Args:
Returns: Paginated list of companies.
{
"type": "object",
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string",
"default": "json",
"description": "Response format"
},
"per_page": {
"type": "integer",
"default": 50,
"maximum": 60,
"minimum": 1,
"description": "Number of companies to return"
},
"starting_after": {
"type": "string",
"description": "Pagination cursor"
}
}
}intercom_scroll_companiesScroll through all companies using cursor-based pagination.
Args:
Returns: List of companies with scroll_param for next page.
{
"type": "object",
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"scroll_param": {
"type": "string",
"description": "Scroll cursor from previous response"
}
}
}intercom_create_or_update_companyCreate a new company or update an existing one.
Args:
Returns: The created or updated company.
{
"type": "object",
"required": [
"company_id"
],
"properties": {
"name": {
"type": "string",
"description": "Company name"
},
"plan": {
"type": "string",
"description": "Plan name"
},
"size": {
"type": "integer",
"description": "Number of employees"
},
"website": {
"type": "string",
"description": "Company website URL"
},
"industry": {
"type": "string",
"description": "Industry"
},
"company_id": {
"type": "string",
"description": "Your external company ID (required)"
},
"monthly_spend": {
"type": "number",
"description": "Monthly spend amount"
},
"custom_attributes": {
"type": "object",
"description": "Custom attributes"
}
}
}intercom_update_companyUpdate an existing company by Intercom ID.
Args:
Returns: The updated company.
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Intercom company ID"
},
"name": {
"type": "string"
},
"plan": {
"type": "string"
},
"size": {
"type": "integer"
},
"website": {
"type": "string"
},
"industry": {
"type": "string"
},
"monthly_spend": {
"type": "number"
},
"custom_attributes": {
"type": "object"
}
}
}intercom_delete_companyDelete a company from Intercom.
Args:
Returns: Confirmation of deletion.
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Company ID to delete"
}
}
}intercom_list_company_contactsList all contacts attached to a company.
Args:
Returns: Paginated list of contacts.
{
"type": "object",
"required": [
"company_id"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"per_page": {
"type": "integer",
"default": 20,
"maximum": 50,
"minimum": 1
},
"company_id": {
"type": "string",
"description": "Company ID"
}
}
}intercom_list_company_segmentsList all segments a company belongs to.
Args:
Returns: List of segments.
{
"type": "object",
"required": [
"company_id"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"company_id": {
"type": "string",
"description": "Company ID"
}
}
}intercom_list_contactsList contacts from Intercom with pagination.
Args:
Returns: Paginated list of contacts.
{
"type": "object",
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string",
"default": "json",
"description": "Response format"
},
"per_page": {
"type": "integer",
"default": 50,
"maximum": 150,
"minimum": 1,
"description": "Number of contacts to return"
},
"starting_after": {
"type": "string",
"description": "Pagination cursor from previous response"
}
}
}intercom_get_contactGet a single contact by ID.
Args:
Returns: The contact record.
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Contact ID"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
}
}
}intercom_create_contactCreate a new contact in Intercom.
Args:
Returns: The created contact.
{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Full name"
},
"role": {
"enum": [
"user",
"lead"
],
"type": "string",
"description": "Contact role"
},
"email": {
"type": "string",
"description": "Email address"
},
"phone": {
"type": "string",
"description": "Phone number"
},
"external_id": {
"type": "string",
"description": "External ID from your system"
},
"custom_attributes": {
"type": "object",
"description": "Custom attributes"
}
}
}intercom_update_contactUpdate an existing contact.
Args:
Returns: The updated contact.
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Contact ID to update"
},
"name": {
"type": "string"
},
"email": {
"type": "string"
},
"phone": {
"type": "string"
},
"custom_attributes": {
"type": "object"
}
}
}intercom_merge_contactsMerge a lead contact into a user contact.
Args:
Returns: The merged contact.
{
"type": "object",
"required": [
"lead_id",
"user_id"
],
"properties": {
"lead_id": {
"type": "string",
"description": "Lead contact ID to merge from"
},
"user_id": {
"type": "string",
"description": "User contact ID to merge into"
}
}
}intercom_search_contactsSearch for contacts using Intercom's search API.
Args:
Returns: Paginated list of matching contacts.
{
"type": "object",
"required": [
"field",
"operator",
"value"
],
"properties": {
"field": {
"type": "string",
"description": "Field to search on"
},
"value": {
"type": "string",
"description": "Value to search for"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"operator": {
"enum": [
"=",
"!=",
"IN",
"NIN",
">",
"<",
"~",
"!~",
"^",
"$"
],
"type": "string",
"description": "Search operator"
},
"per_page": {
"type": "integer",
"default": 50,
"maximum": 150,
"minimum": 1
}
}
}intercom_detach_contact_from_companyDetach a contact from a company.
Args:
Returns: The company record.
{
"type": "object",
"required": [
"contact_id",
"company_id"
],
"properties": {
"company_id": {
"type": "string",
"description": "Company ID to detach"
},
"contact_id": {
"type": "string",
"description": "Contact ID"
}
}
}intercom_list_contact_companiesList all companies attached to a contact.
Args:
Returns: List of companies attached to the contact.
{
"type": "object",
"required": [
"contact_id"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"contact_id": {
"type": "string",
"description": "Contact ID"
}
}
}intercom_tag_contactAdd a tag to a contact.
Args:
Returns: The tag that was added.
{
"type": "object",
"required": [
"contact_id",
"tag_id"
],
"properties": {
"tag_id": {
"type": "string",
"description": "Tag ID to add"
},
"contact_id": {
"type": "string",
"description": "Contact ID"
}
}
}intercom_untag_contactRemove a tag from a contact.
Args:
Returns: The tag that was removed.
{
"type": "object",
"required": [
"contact_id",
"tag_id"
],
"properties": {
"tag_id": {
"type": "string",
"description": "Tag ID to remove"
},
"contact_id": {
"type": "string",
"description": "Contact ID"
}
}
}intercom_list_contact_notesList all notes for a contact.
Args:
Returns: Paginated list of notes.
{
"type": "object",
"required": [
"contact_id"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"per_page": {
"type": "integer",
"default": 20,
"maximum": 50,
"minimum": 1
},
"contact_id": {
"type": "string",
"description": "Contact ID"
}
}
}intercom_create_contact_noteCreate a note for a contact.
Args:
Returns: The created note.
{
"type": "object",
"required": [
"contact_id",
"body"
],
"properties": {
"body": {
"type": "string",
"description": "Note body content"
},
"admin_id": {
"type": "string",
"description": "Admin ID creating the note"
},
"contact_id": {
"type": "string",
"description": "Contact ID"
}
}
}intercom_list_contact_segmentsList all segments a contact belongs to.
Args:
Returns: List of segments.
{
"type": "object",
"required": [
"contact_id"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"contact_id": {
"type": "string",
"description": "Contact ID"
}
}
}intercom_list_contact_subscriptionsList all subscription types for a contact.
Args:
Returns: List of subscription types.
{
"type": "object",
"required": [
"contact_id"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"contact_id": {
"type": "string",
"description": "Contact ID"
}
}
}intercom_attach_subscription_to_contactSubscribe a contact to a subscription type.
Args:
Returns: The subscription type.
{
"type": "object",
"required": [
"contact_id",
"subscription_id",
"consent_type"
],
"properties": {
"contact_id": {
"type": "string",
"description": "Contact ID"
},
"consent_type": {
"enum": [
"opt_in",
"opt_out"
],
"type": "string",
"description": "Type of consent"
},
"subscription_id": {
"type": "string",
"description": "Subscription type ID"
}
}
}intercom_detach_subscription_from_contactUnsubscribe a contact from a subscription type.
Args:
Returns: The subscription type.
{
"type": "object",
"required": [
"contact_id",
"subscription_id"
],
"properties": {
"contact_id": {
"type": "string",
"description": "Contact ID"
},
"subscription_id": {
"type": "string",
"description": "Subscription type ID"
}
}
}intercom_list_conversationsList conversations from Intercom with pagination.
Args:
Returns: Paginated list of conversations.
{
"type": "object",
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string",
"default": "json",
"description": "Response format"
},
"per_page": {
"type": "integer",
"default": 20,
"maximum": 150,
"minimum": 1,
"description": "Number of conversations to return"
},
"starting_after": {
"type": "string",
"description": "Pagination cursor from previous response"
}
}
}intercom_list_tagsList all tags in the workspace.
Returns: List of all tags.
{
"type": "object",
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
}
}
}intercom_get_conversationGet a single conversation by ID.
Args:
Returns: The conversation record with all messages.
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Conversation ID"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
}
}
}intercom_create_conversationCreate a new conversation.
Args:
Returns: The created conversation.
{
"type": "object",
"required": [
"user_id",
"body"
],
"properties": {
"body": {
"type": "string",
"description": "Message body content"
},
"user_id": {
"type": "string",
"description": "ID of the user"
}
}
}intercom_reply_to_conversationReply to an existing conversation.
Args:
Returns: The updated conversation.
{
"type": "object",
"required": [
"conversation_id",
"message_type",
"body"
],
"properties": {
"body": {
"type": "string",
"description": "Reply body content"
},
"admin_id": {
"type": "string",
"description": "Admin ID if replying as admin"
},
"message_type": {
"enum": [
"comment",
"note"
],
"type": "string",
"description": "Type of reply"
},
"attachment_urls": {
"type": "array",
"items": {
"type": "string"
},
"description": "Attachment URLs"
},
"conversation_id": {
"type": "string",
"description": "Conversation ID"
}
}
}intercom_assign_conversationAssign a conversation to an admin or team.
Args:
Returns: The updated conversation.
{
"type": "object",
"required": [
"conversation_id",
"admin_id",
"assignee_id"
],
"properties": {
"body": {
"type": "string",
"description": "Assignment message"
},
"admin_id": {
"type": "string",
"description": "Admin ID performing the assignment"
},
"assignee_id": {
"type": "string",
"description": "Admin ID to assign to"
},
"conversation_id": {
"type": "string",
"description": "Conversation ID"
}
}
}intercom_snooze_conversationSnooze a conversation until a specific time.
Args:
Returns: The snoozed conversation.
{
"type": "object",
"required": [
"conversation_id",
"admin_id",
"snoozed_until"
],
"properties": {
"admin_id": {
"type": "string",
"description": "Admin ID"
},
"snoozed_until": {
"type": "integer",
"description": "Unix timestamp when to unsnooze"
},
"conversation_id": {
"type": "string",
"description": "Conversation ID"
}
}
}intercom_open_conversationOpen a closed conversation.
Args:
Returns: The opened conversation.
{
"type": "object",
"required": [
"conversation_id",
"admin_id"
],
"properties": {
"admin_id": {
"type": "string",
"description": "Admin ID"
},
"conversation_id": {
"type": "string",
"description": "Conversation ID"
}
}
}intercom_close_conversationClose an open conversation.
Args:
Returns: The closed conversation.
{
"type": "object",
"required": [
"conversation_id",
"admin_id"
],
"properties": {
"body": {
"type": "string",
"description": "Closing message"
},
"admin_id": {
"type": "string",
"description": "Admin ID"
},
"conversation_id": {
"type": "string",
"description": "Conversation ID"
}
}
}intercom_search_conversationsSearch for conversations using Intercom's search API.
Args:
Returns: Paginated list of matching conversations.
{
"type": "object",
"required": [
"field",
"operator",
"value"
],
"properties": {
"field": {
"type": "string",
"description": "Field to search on"
},
"value": {
"type": "string",
"description": "Value to search for"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"operator": {
"enum": [
"=",
"!=",
"IN",
"NIN",
">",
"<",
"~",
"!~"
],
"type": "string",
"description": "Search operator"
},
"per_page": {
"type": "integer",
"default": 20,
"maximum": 150,
"minimum": 1
}
}
}intercom_tag_conversationAdd a tag to a conversation.
Args:
Returns: The tag that was added.
{
"type": "object",
"required": [
"conversation_id",
"tag_id",
"admin_id"
],
"properties": {
"tag_id": {
"type": "string",
"description": "Tag ID to add"
},
"admin_id": {
"type": "string",
"description": "Admin ID adding the tag"
},
"conversation_id": {
"type": "string",
"description": "Conversation ID"
}
}
}intercom_untag_conversationRemove a tag from a conversation.
Args:
Returns: The tag that was removed.
{
"type": "object",
"required": [
"conversation_id",
"tag_id",
"admin_id"
],
"properties": {
"tag_id": {
"type": "string",
"description": "Tag ID to remove"
},
"admin_id": {
"type": "string",
"description": "Admin ID removing the tag"
},
"conversation_id": {
"type": "string",
"description": "Conversation ID"
}
}
}intercom_get_tagGet a single tag by ID.
Args:
Returns: The tag record.
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Tag ID"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
}
}
}intercom_list_data_attributesList data attributes for a specific model.
Args:
Returns: List of data attributes.
{
"type": "object",
"properties": {
"model": {
"enum": [
"contact",
"company",
"conversation"
],
"type": "string",
"description": "Model type"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
}
}
}intercom_get_data_attributeGet a single data attribute by ID.
Args:
Returns: The data attribute record.
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Data attribute ID"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
}
}
}intercom_create_data_attributeCreate a new data attribute.
Args:
Returns: The created data attribute.
{
"type": "object",
"required": [
"name",
"model",
"data_type"
],
"properties": {
"name": {
"type": "string",
"description": "Attribute name"
},
"model": {
"enum": [
"contact",
"company",
"conversation"
],
"type": "string",
"description": "Model type"
},
"options": {
"type": "array",
"items": {
"type": "string"
},
"description": "Options for list type"
},
"data_type": {
"enum": [
"string",
"integer",
"float",
"boolean",
"date"
],
"type": "string",
"description": "Data type"
},
"description": {
"type": "string",
"description": "Attribute description"
}
}
}intercom_update_data_attributeUpdate an existing data attribute.
Args:
Returns: The updated data attribute.
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Data attribute ID"
},
"options": {
"type": "array",
"items": {
"type": "string"
}
},
"archived": {
"type": "boolean"
},
"description": {
"type": "string"
}
}
}intercom_list_data_eventsList data events for a user.
Args:
Returns: List of data events.
{
"type": "object",
"properties": {
"type": {
"enum": [
"user"
],
"type": "string",
"default": "user",
"description": "Filter type"
},
"email": {
"type": "string",
"description": "User email"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"user_id": {
"type": "string",
"description": "User ID"
},
"intercom_user_id": {
"type": "string",
"description": "Intercom user ID"
}
}
}intercom_create_data_eventCreate a new data event.
Args:
Returns: Confirmation of event creation.
{
"type": "object",
"required": [
"event_name"
],
"properties": {
"email": {
"type": "string",
"description": "User email"
},
"user_id": {
"type": "string",
"description": "User ID"
},
"metadata": {
"type": "object",
"description": "Event metadata"
},
"created_at": {
"type": "integer",
"description": "Unix timestamp"
},
"event_name": {
"type": "string",
"description": "Event name"
},
"intercom_user_id": {
"type": "string",
"description": "Intercom user ID"
}
}
}intercom_list_help_centersList all Help Centers in the workspace.
Returns: List of all Help Centers.
{
"type": "object",
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
}
}
}intercom_get_help_centerGet a single Help Center by ID.
Args:
Returns: The Help Center record.
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Help Center ID"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
}
}
}intercom_create_messageCreate and send a new message.
This can be used to send in-app messages or emails to users.
Args:
Returns: The created message.
{
"type": "object",
"required": [
"message_type",
"body",
"from_admin_id",
"to_type",
"to_id"
],
"properties": {
"body": {
"type": "string",
"description": "Message body content"
},
"to_id": {
"type": "string",
"description": "Recipient ID"
},
"subject": {
"type": "string",
"description": "Message subject (required for email)"
},
"to_type": {
"enum": [
"user",
"lead"
],
"type": "string",
"description": "Recipient type"
},
"template": {
"enum": [
"plain",
"personal"
],
"type": "string",
"default": "plain",
"description": "Message template"
},
"message_type": {
"enum": [
"inapp",
"email"
],
"type": "string",
"description": "Type of message"
},
"from_admin_id": {
"type": "string",
"description": "Admin ID to send from"
}
}
}intercom_list_segmentsList all segments in the workspace.
Args:
Returns: List of all segments.
{
"type": "object",
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
}
}
}intercom_get_segmentGet a single segment by ID.
Args:
Returns: The segment record.
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Segment ID"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
}
}
}intercom_list_subscription_typesList all subscription types in the workspace.
Returns: List of all subscription types.
{
"type": "object",
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
}
}
}intercom_update_tagUpdate an existing tag.
Args:
Returns: The updated tag.
{
"type": "object",
"required": [
"id",
"name"
],
"properties": {
"id": {
"type": "string",
"description": "Tag ID"
},
"name": {
"type": "string",
"description": "New tag name"
}
}
}intercom_delete_tagDelete a tag.
Args:
Returns: Confirmation of deletion.
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Tag ID to delete"
}
}
}intercom_list_teamsList all teams in the workspace.
Returns: List of all teams.
{
"type": "object",
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
}
}
}intercom_get_teamGet a single team by ID.
Args:
Returns: The team record.
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Team ID"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
}
}
}intercom_get_ticketGet a single ticket by ID.
Args:
Returns: The ticket record.
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Ticket ID"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
}
}
}intercom_update_ticketUpdate an existing ticket.
Args:
Returns: The updated ticket.
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Ticket ID"
},
"state": {
"type": "string"
},
"is_shared": {
"type": "boolean"
},
"ticket_attributes": {
"type": "object",
"description": "Ticket attributes"
},
"assignment_admin_id": {
"type": "string",
"description": "Admin ID to assign to"
}
}
}intercom_reply_to_ticketReply to a ticket.
Args:
Returns: The ticket part (reply).
{
"type": "object",
"required": [
"ticket_id",
"message_type",
"body"
],
"properties": {
"body": {
"type": "string",
"description": "Reply body content"
},
"admin_id": {
"type": "string",
"description": "Admin ID"
},
"ticket_id": {
"type": "string",
"description": "Ticket ID"
},
"message_type": {
"enum": [
"comment",
"note"
],
"type": "string",
"description": "Type of reply"
}
}
}intercom_search_ticketsSearch for tickets using Intercom's search API.
Args:
Returns: Paginated list of matching tickets.
{
"type": "object",
"required": [
"field",
"operator",
"value"
],
"properties": {
"field": {
"type": "string",
"description": "Field to search on"
},
"value": {
"type": "string",
"description": "Value to search for"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"operator": {
"enum": [
"=",
"!=",
"IN",
"NIN",
">",
"<"
],
"type": "string",
"description": "Search operator"
},
"per_page": {
"type": "integer",
"default": 20,
"maximum": 150,
"minimum": 1
}
}
}intercom_get_visitorGet a visitor by ID.
Args:
Returns: The visitor record.
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Visitor ID"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
}
}
}intercom_update_visitorUpdate a visitor's attributes.
Args:
Returns: The updated visitor.
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Visitor ID"
},
"name": {
"type": "string",
"description": "Visitor name"
},
"custom_attributes": {
"type": "object",
"description": "Custom attributes"
}
}
}intercom_convert_visitor_to_contactConvert a visitor to a user or lead contact.
Args:
Returns: The new contact.
{
"type": "object",
"required": [
"visitor_id",
"type"
],
"properties": {
"type": {
"enum": [
"user",
"lead"
],
"type": "string",
"description": "Type to convert to"
},
"email": {
"type": "string",
"description": "Email address"
},
"user_id": {
"type": "string",
"description": "User ID to merge with"
},
"visitor_id": {
"type": "string",
"description": "Visitor ID to convert"
}
}
}