Re:amaze MCP by usefulapi
Manage Re:amaze conversations, messages, contacts and help articles.
Should I use this
Quality & Safety
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"re-amaze": {
"url": "https://re-amaze.usefulapi.io/mcp"
}
}
}Remote endpoints
https://re-amaze.usefulapi.io/mcpstreamable-httpWhat it can do
Tool inventory
Tools (17)
🟢reamaze_list_conversations(filter, for, for_id, sort, tag, ...)
List/search conversations (support tickets). All filters optional; returns a page of conversations. Re:amaze REST: GET /conversations.
Input Schema
{
"type": "object",
"properties": {
"filter": {
"description": "Restrict to a set of conversations.",
"type": "string",
"enum": [
"open",
"unassigned",
"archived",
"all"
]
},
"for": {
"description": "Filter to conversations for this customer email.",
"type": "string"
},
"for_id": {
"description": "Filter to conversations for this SSO user id.",
"type": "string"
},
"sort": {
"description": "Sort order.",
"type": "string",
"enum": [
"updated",
"changed"
]
},
"tag": {
"description": "Filter by tag(s) — comma-separated.",
"type": "string"
},
"category": {
"description": "Filter by channel slug.",
"type": "string"
},
"start_date": {
"description": "Filter to items on/after this ISO8601 date, e.g. 2026-01-31.",
"type": "string"
},
"end_date": {
"description": "Filter to items on/before this ISO8601 date, e.g. 2026-01-31.",
"type": "string"
},
"origin": {
"description": "Filter by conversation origin/channel type.",
"type": "string",
"enum": [
"native",
"email",
"twitter",
"facebook",
"chat",
"api",
"instagram",
"sms",
"voice",
"custom",
"staff",
"form",
"instagram_dm"
]
},
"page": {
"description": "1-based page number to fetch (responses report page_size/page_count/total_count).",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢reamaze_get_conversation(slug)
Get a single conversation by its slug. Re:amaze REST: GET /conversations/{slug}.
Input Schema
{
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "The conversation slug."
}
},
"required": [
"slug"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢reamaze_list_messages(conversation, filter, tag, origin, page, ...)
List messages. If `conversation` (a slug) is given, list that conversation's messages (GET /conversations/{slug}/messages); otherwise list messages across the brand (GET /messages). All other filters optional. Re:amaze REST.
Input Schema
{
"type": "object",
"properties": {
"conversation": {
"description": "Conversation slug — scopes to GET /conversations/{slug}/messages (goes in the PATH, not the query).",
"type": "string"
},
"filter": {
"description": "Restrict to staff or customer messages.",
"type": "string",
"enum": [
"staff",
"customer"
]
},
"tag": {
"description": "Filter by tag(s) — comma-separated.",
"type": "string"
},
"origin": {
"description": "Filter by numeric message origin.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"page": {
"description": "1-based page number to fetch (responses report page_size/page_count/total_count).",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"sent_by": {
"description": "Filter to messages sent by this email.",
"type": "string"
},
"category": {
"description": "Filter by channel slug.",
"type": "string"
},
"start_date": {
"description": "Filter to items on/after this ISO8601 date, e.g. 2026-01-31.",
"type": "string"
},
"end_date": {
"description": "Filter to items on/before this ISO8601 date, e.g. 2026-01-31.",
"type": "string"
},
"include": {
"description": "Include extra fields, e.g. 'original_body'.",
"type": "string",
"enum": [
"original_body"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢reamaze_list_contacts(filter, page)
List/search contacts (customers). All filters optional; returns a page of contacts. Re:amaze REST: GET /contacts.
Input Schema
{
"type": "object",
"properties": {
"filter": {
"description": "Free-text filter, e.g. an email or name substring.",
"type": "string"
},
"page": {
"description": "1-based page number to fetch (responses report page_size/page_count/total_count).",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢reamaze_get_contact(identifier)
Get a single contact (customer) by identifier (email or id). Re:amaze REST: GET /contacts/{identifier}.
Input Schema
{
"type": "object",
"properties": {
"identifier": {
"type": "string",
"description": "A contact email or id."
}
},
"required": [
"identifier"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢reamaze_list_articles(filter, page)
List/search help-center (knowledge-base) articles. All filters optional. Re:amaze REST: GET /articles.
Input Schema
{
"type": "object",
"properties": {
"filter": {
"description": "Free-text filter, e.g. a title/body substring.",
"type": "string"
},
"page": {
"description": "1-based page number to fetch (responses report page_size/page_count/total_count).",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢reamaze_get_article(slug)
Get a single help-center article by its slug. Re:amaze REST: GET /articles/{slug}.
Input Schema
{
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "The article slug."
}
},
"required": [
"slug"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢reamaze_list_staff(page)
List staff (agent) accounts on the brand. Re:amaze REST: GET /staff.
Input Schema
{
"type": "object",
"properties": {
"page": {
"description": "1-based page number to fetch (responses report page_size/page_count/total_count).",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢reamaze_list_channels(page)
List channels (inboxes: email, chat, social, etc.). Channel slugs are used as `category` filters. Re:amaze REST: GET /channels.
Input Schema
{
"type": "object",
"properties": {
"page": {
"description": "1-based page number to fetch (responses report page_size/page_count/total_count).",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢reamaze_get_channel(slug)
Get a single channel by its slug. Re:amaze REST: GET /channels/{slug}.
Input Schema
{
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "The channel slug."
}
},
"required": [
"slug"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢reamaze_report_volume(start_date, end_date)
Get the conversation-volume report (counts over time). Both dates optional. Re:amaze REST: GET /reports/volume.
Input Schema
{
"type": "object",
"properties": {
"start_date": {
"description": "Filter to items on/after this ISO8601 date, e.g. 2026-01-31.",
"type": "string"
},
"end_date": {
"description": "Filter to items on/before this ISO8601 date, e.g. 2026-01-31.",
"type": "string"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢reamaze_report_response_time(start_date, end_date)
Get the response-time report (how quickly conversations were answered). Both dates optional. Re:amaze REST: GET /reports/response_time.
Input Schema
{
"type": "object",
"properties": {
"start_date": {
"description": "Filter to items on/after this ISO8601 date, e.g. 2026-01-31.",
"type": "string"
},
"end_date": {
"description": "Filter to items on/before this ISO8601 date, e.g. 2026-01-31.",
"type": "string"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴reamaze_create_conversation(subject, category, message_body, user_name, user_email, ...)
Create a new conversation (support ticket) with its first message. Re:amaze REST: POST /conversations.
Input Schema
{
"type": "object",
"properties": {
"subject": {
"type": "string",
"description": "The conversation subject (required)."
},
"category": {
"type": "string",
"description": "The channel slug to open the conversation in (required)."
},
"message_body": {
"type": "string",
"description": "The first message body — markdown ok (required)."
},
"user_name": {
"type": "string",
"description": "The customer's display name (required)."
},
"user_email": {
"type": "string",
"description": "The customer's email (required)."
},
"recipients": {
"description": "Additional recipients (emails/phones) for the message.",
"type": "array",
"items": {
"type": "string"
}
},
"tag_list": {
"description": "Tags to apply to the conversation.",
"type": "array",
"items": {
"type": "string"
}
},
"status": {
"description": "Initial status. Status integer: 0=Open, 1=Responded, 2=Done, 3=Spam, 4=Archived, 5=On Hold, 6=Auto-Done, 7=AI Agent Assigned, 8=AI Agent Done, 9=Spam (AI).",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"assignee": {
"description": "Staff email to assign the conversation to.",
"type": "string"
}
},
"required": [
"subject",
"category",
"message_body",
"user_name",
"user_email"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴reamaze_reply_conversation(slug, body, visibility, user_email, user_name, ...)
Add a message to an existing conversation — a customer-facing reply or an internal note. Re:amaze REST: POST /conversations/{slug}/messages.
Input Schema
{
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "The conversation slug to reply to."
},
"body": {
"type": "string",
"description": "The message body — markdown ok (required)."
},
"visibility": {
"description": "0 = Regular reply (customer-facing), 1 = Internal Note. Default 0.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"user_email": {
"description": "Email of the author (customer or staff).",
"type": "string"
},
"user_name": {
"description": "Display name of the author.",
"type": "string"
},
"recipients": {
"description": "Additional recipients (emails/phones).",
"type": "array",
"items": {
"type": "string"
}
},
"attachment": {
"description": "URL of a file to attach.",
"type": "string"
},
"suppress_notifications": {
"description": "If true, do not send notification emails for this message.",
"type": "boolean"
}
},
"required": [
"slug",
"body"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴reamaze_update_conversation(slug, subject, status, tag_list, assignee, ...)
Update fields on an existing conversation (subject, status, tags, assignee). Only provided fields change. Re:amaze REST: PUT /conversations/{slug}.
Input Schema
{
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "The conversation slug to update."
},
"subject": {
"description": "New subject.",
"type": "string"
},
"status": {
"description": "New status. Status integer: 0=Open, 1=Responded, 2=Done, 3=Spam, 4=Archived, 5=On Hold, 6=Auto-Done, 7=AI Agent Assigned, 8=AI Agent Done, 9=Spam (AI).",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"tag_list": {
"description": "Replace the conversation's tags.",
"type": "array",
"items": {
"type": "string"
}
},
"assignee": {
"description": "Staff email to assign the conversation to.",
"type": "string"
},
"hold_until": {
"description": "ISO8601 DateTime to hold the conversation until (used when status=5 On Hold).",
"type": "string"
}
},
"required": [
"slug"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴reamaze_create_contact(name, email, data)
Create a new contact (customer). Re:amaze REST: POST /contacts.
Input Schema
{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The contact's display name (required)."
},
"email": {
"type": "string",
"description": "The contact's email (required)."
},
"data": {
"description": "Arbitrary key/value custom attributes for the contact.",
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
},
"required": [
"name",
"email"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴reamaze_update_contact(id, name, email, data)
Update fields on an existing contact. Only provided fields change. Re:amaze REST: PUT /contacts/{id}.
Input Schema
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The contact id to update (goes in the path, never the body)."
},
"name": {
"description": "New display name.",
"type": "string"
},
"email": {
"description": "New email.",
"type": "string"
},
"data": {
"description": "Arbitrary key/value custom attributes for the contact.",
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
},
"required": [
"id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Community
Evidence