Chatwoot MCP by usefulapi

Read conversations and contacts; add replies or notes, set status and assign in Chatwoot.

¿Debería usar esto?

Calidad y seguridad

B
Calidad de la descripción
98%
Integridad del esquema
69%
Calidad de los nombres
76%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Hallazgos (5)

  • LOWTool 'chatwoot_assign_conversation' description lacks action verben chatwoot_assign_conversation
  • LOWTool 'chatwoot_get_conversation_counts' name length outside 3-30 rangeen chatwoot_get_conversation_counts
  • LOWTool 'chatwoot_list_contact_conversations' name length outside 3-30 rangeen chatwoot_list_contact_conversations
  • LOWTool 'chatwoot_set_conversation_status' name length outside 3-30 rangeen chatwoot_set_conversation_status
  • LOWTool 'chatwoot_set_conversation_priority' name length outside 3-30 rangeen chatwoot_set_conversation_priority

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~2,473Tokens (definiciones de herramientas)
~879 BTamaño de respuesta típico
Impacto moderado en la atención (1.93% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "chatwoot": {
      "url": "https://chatwoot.usefulapi.io/mcp"
    }
  }
}

Puntos de conexión remotos

https://chatwoot.usefulapi.io/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (18)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢chatwoot_get_account

Get the configured Chatwoot account: name, locale, features and plan. Chatwoot API: GET /api/v1/accounts/{account_id}.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢chatwoot_list_conversations(status, assignee_type, inbox_id, team_id, labels, ...)

List conversations, 25 per page, filtered by status, assignee, inbox, team, labels or a text query. Chatwoot API: GET /api/v1/accounts/{account_id}/conversations.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "status": {
      "description": "Default open.",
      "type": "string",
      "enum": [
        "all",
        "open",
        "resolved",
        "pending",
        "snoozed"
      ]
    },
    "assignee_type": {
      "description": "Default all.",
      "type": "string",
      "enum": [
        "all",
        "assigned",
        "unassigned",
        "me"
      ]
    },
    "inbox_id": {
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "team_id": {
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "labels": {
      "description": "Only conversations with all these label titles.",
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "q": {
      "description": "Free-text search.",
      "type": "string"
    },
    "page": {
      "description": "Page number, starting at 1.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢chatwoot_get_conversation_counts(status, inbox_id, team_id, q)

Get the open, unassigned and total conversation counts for a status, inbox or team. Chatwoot API: GET /api/v1/accounts/{account_id}/conversations/meta.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "all",
        "open",
        "resolved",
        "pending",
        "snoozed"
      ]
    },
    "inbox_id": {
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "team_id": {
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "q": {
      "type": "string"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢chatwoot_get_conversation(conversation_id)

Get one conversation with its status, priority, assignee, team, labels and contact. Chatwoot API: GET .../conversations/{conversation_id}.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "conversation_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Conversation id (from chatwoot_list_conversations)."
    }
  },
  "required": [
    "conversation_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢chatwoot_list_messages(conversation_id, before, after)

List the messages of one conversation, oldest first. Chatwoot API: GET .../conversations/{conversation_id}/messages.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "conversation_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "before": {
      "description": "Only messages with an id below this value.",
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "after": {
      "description": "Only messages with an id above this value.",
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    }
  },
  "required": [
    "conversation_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢chatwoot_list_contacts(page, sort)

List resolved contacts (those with an email, phone number or identifier), 15 per page. Chatwoot API: GET .../contacts.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "page": {
      "description": "Page number, starting at 1.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "sort": {
      "type": "string",
      "enum": [
        "name",
        "email",
        "phone_number",
        "last_activity_at",
        "-name",
        "-email",
        "-phone_number",
        "-last_activity_at"
      ]
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢chatwoot_search_contacts(q, page, sort)

Search resolved contacts by a text key (name, email or phone). Chatwoot API: GET .../contacts/search.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "q": {
      "type": "string",
      "minLength": 1,
      "description": "Search text."
    },
    "page": {
      "description": "Page number, starting at 1.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "sort": {
      "type": "string",
      "enum": [
        "name",
        "email",
        "phone_number",
        "last_activity_at",
        "-name",
        "-email",
        "-phone_number",
        "-last_activity_at"
      ]
    }
  },
  "required": [
    "q"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢chatwoot_get_contact(contact_id)

Get one contact with its attributes, labels and custom attributes. Chatwoot API: GET .../contacts/{id}.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "contact_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Contact id (from chatwoot_list_contacts or chatwoot_search_contacts)."
    }
  },
  "required": [
    "contact_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢chatwoot_list_contact_conversations(contact_id)

List all conversations of one contact. Chatwoot API: GET .../contacts/{id}/conversations.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "contact_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    }
  },
  "required": [
    "contact_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢chatwoot_list_labels

List all labels of the account. Chatwoot API: GET .../labels.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢chatwoot_list_inboxes

List the inboxes (channels) of the account. Chatwoot API: GET .../inboxes.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢chatwoot_list_agents

List the agents of the account with their roles. Chatwoot API: GET .../agents.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢chatwoot_list_teams

List the teams of the account. Chatwoot API: GET .../teams.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢chatwoot_list_canned_responses

List the saved reply templates (canned responses) of the account. Chatwoot API: GET .../canned_responses.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴chatwoot_send_message(conversation_id, content, private)

Add a message to a conversation. Default: a private note that the customer never sees. Set private to false to send a reply that the customer receives by email or chat. Chatwoot API: POST .../conversations/{conversation_id}/messages.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "conversation_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "content": {
      "type": "string",
      "minLength": 1,
      "description": "The message text."
    },
    "private": {
      "description": "true (default) = internal note; false = customer-visible reply.",
      "type": "boolean"
    }
  },
  "required": [
    "conversation_id",
    "content"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟡chatwoot_set_conversation_status(conversation_id, status, snoozed_until)

Set a conversation to open, resolved, pending or snoozed. For snoozed, snoozed_until is a Unix time in seconds (optional). Chatwoot API: POST .../conversations/{conversation_id}/toggle_status.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "conversation_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "status": {
      "type": "string",
      "enum": [
        "open",
        "resolved",
        "pending",
        "snoozed"
      ]
    },
    "snoozed_until": {
      "description": "Unix time in seconds; only with status snoozed.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    }
  },
  "required": [
    "conversation_id",
    "status"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟡chatwoot_set_conversation_priority(conversation_id, priority)

Set a conversation priority: urgent, high, medium, low, or none (clears it). Chatwoot API: PATCH .../conversations/{conversation_id}.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "conversation_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "priority": {
      "type": "string",
      "enum": [
        "urgent",
        "high",
        "medium",
        "low",
        "none"
      ]
    }
  },
  "required": [
    "conversation_id",
    "priority"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟡chatwoot_assign_conversation(conversation_id, assignee_id, team_id)

Assign a conversation to an agent (assignee_id) or to a team (team_id). Give exactly one. Chatwoot API: POST .../conversations/{conversation_id}/assignments.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "conversation_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "assignee_id": {
      "description": "Agent user id (from chatwoot_list_agents).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "team_id": {
      "description": "Team id (from chatwoot_list_teams).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    }
  },
  "required": [
    "conversation_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada18 herramientas