# LiveChat

```json
{
  "name": "LiveChat",
  "slug": "livechat",
  "url": "https://composio.dev/toolkits/livechat",
  "markdown_url": "https://composio.dev/toolkits/livechat.md",
  "logo_url": "https://logos.composio.dev/api/livechat",
  "categories": [
    "sales & customer support"
  ],
  "is_composio_managed": false,
  "updated_at": "2026-10-24T05:33:12.447Z"
}
```

![LiveChat logo](https://logos.composio.dev/api/livechat)

## Description

Securely connect your AI agents and chatbots (Claude, ChatGPT, Cursor, etc) with LiveChat MCP or direct API to manage conversations, query agents, configure groups, and handle webhooks through natural language.

## Summary

LiveChat is a customer messaging platform for managing support conversations, agents, groups, and bots.
It helps teams deliver faster, more organized customer support across live chat.

## Categories

- sales & customer support

## Toolkit Details

- Tools: 111

## Images

- Logo: https://logos.composio.dev/api/livechat

## Authentication

- **Oauth2**
  - Type: `oauth2`
  - Description: Oauth2 authentication for LiveChat.
  - Setup:
    - Configure Oauth2 credentials for LiveChat.
    - Use the credentials when creating an auth config in Composio.

## Suggested Prompts

- List all active LiveChat agents
- Show open customer conversations needing replies
- Create a webhook for new conversations

## Supported Tools

| Tool slug | Name | Description |
|---|---|---|
| `LIVECHAT_ACCEPT_GREETING` | Accept Greeting | Accept an incoming LiveChat greeting for an existing customer and mark that greeting as seen in the customer's live session. This changes greeting state. |
| `LIVECHAT_APPROVE_AGENT` | Approve Agent | Approve a licensed LiveChat agent so they can use the application. This non-public operation requires the private subscription.lc:rw grant and changes the agent's approval state; do not retry it automatically. |
| `LIVECHAT_CANCEL_GREETING` | Cancel Greeting | Cancel an incoming LiveChat invitation for an existing customer. This changes the greeting state in the customer's live session. |
| `LIVECHAT_CHECK_PRODUCT_LIMITS_FOR_PLAN` | Check Product Limits for Plan | Read which current organization resources exceed a selected LiveChat plan's limits. This action requires the private subscription.lc:rw grant, which cannot be configured for ordinary public OAuth clients. |
| `LIVECHAT_CREATE_AGENT` | Create Agent | Create a normal-role licensed LiveChat user who must await approval. This safe baseline may consume a paid seat and send an irreversible account or approval email. Do not retry after an uncertain outcome. Use Create Privileged Agent only for approval bypass or an elevated role. |
| `LIVECHAT_CREATE_AUTO_ACCESS` | Create Auto Access | Add an ordered LiveChat auto-access rule. The rule immediately changes which groups customers matching its conditions can access. |
| `LIVECHAT_CREATE_BOT` | Create Bot | Create a LiveChat bot and return its write-once secret. Treat the secret as a credential and never log or replay it. The bot does not receive chats until its routing status is set; clean up only through a controlled lifecycle. |
| `LIVECHAT_CREATE_BOT_TEMPLATE` | Create Bot Template | Create a bot template for an application client ID and return its write-once secret. Treat the secret as a credential. This affects only the template and future installations; it does not create bots on existing installations. |
| `LIVECHAT_CREATE_BOT_TEMPLATE_ACROSS_INSTALLATIONS` | Create Bot Template Across Installations | Create a LiveChat bot template and also create a bot from it on every license where the app is already installed. This is a cross-license bulk creation and returns a sensitive write-once template secret. |
| `LIVECHAT_CREATE_CANNED_RESPONSE` | Create Canned Response | Create a group-owned LiveChat canned response. LiveChat sanitizes its text, and is_private controls whether other users can see it. |
| `LIVECHAT_CREATE_GREETING` | Create Greeting | Create a LiveChat greeting with trigger rules and optional rich content. An active greeting can immediately appear to matching visitors; use active=false while safely preparing it. |
| `LIVECHAT_CREATE_GROUP` | Create Group | Create a LiveChat routing group with its initial language and agent-priority map. |
| `LIVECHAT_CREATE_PRIVILEGED_AGENT` | Create Privileged Agent | Create a licensed LiveChat agent while explicitly bypassing approval and/or assigning an elevated administrator or viceowner role. This may consume a paid seat, send an irreversible account or approval email, and uses stronger or private grants than Create Agent. Do not retry after an uncertain outcome. |
| `LIVECHAT_CREATE_TAG` | Create Tag | Create a LiveChat tag and optionally assign it to groups. Tag-name duplicate matching is case insensitive. |
| `LIVECHAT_DEACTIVATE_CHAT` | Deactivate Chat | Deactivate a LiveChat chat by closing its currently open thread. This takes effect immediately and prevents further messages to that thread. Use only for an explicitly selected chat; do not repeat after an uncertain outcome. |
| `LIVECHAT_DELETE_AGENT` | Delete Agent | Permanently delete a licensed LiveChat agent. This irreversible operation removes the user from the license; verify the exact agent ID and do not retry automatically. |
| `LIVECHAT_DELETE_AUTO_ACCESS` | Delete Auto Access | Permanently delete an auto-access rule. This immediately changes customer access routing and should only target a confirmed rule ID. |
| `LIVECHAT_DELETE_BOT` | Delete Bot | Permanently delete a LiveChat bot. This irreversible operation can remove a bot from live routing; use an explicit verified bot ID and do not retry automatically. |
| `LIVECHAT_DELETE_BOT_TEMPLATE` | Delete Bot Template | Permanently delete only a bot template. Bots already installed from the template on existing licenses are not deleted. |
| `LIVECHAT_DELETE_BOT_TEMPLATE_AND_INSTALLED_BOTS` | Delete Bot Template And Installed Bots | Permanently delete a LiveChat bot template and every bot installed from it across all licenses. This cross-license bulk deletion can disrupt live routing and must not be retried automatically. |
| `LIVECHAT_DELETE_CANNED_RESPONSE` | Delete Canned Response | Permanently delete one canned response by ID, removing it from agent use. Use only a confirmed disposable or intentionally retired response. |
| `LIVECHAT_DELETE_CHAT_PROPERTIES` | Delete Chat Properties | Permanently delete selected registered property values from a live customer chat. Property data may contain PII; this action does not retry. |
| `LIVECHAT_DELETE_EVENT` | Delete Event | Delete one event from a specified LiveChat chat and thread. This is an irreversible customer-visible action: Customer Chat API responses hide the event, while Agent Chat can retain it as deleted or visible to elevated roles. Use only captured IDs from a disposable lifecycle and do not repeat after an uncertain outcome. |
| `LIVECHAT_DELETE_EVENT_PROPERTIES` | Delete Event Properties | Permanently delete selected registered property values from a live customer-chat event. Property data may contain PII; this action does not retry. |
| `LIVECHAT_DELETE_GREETING` | Delete Greeting | Permanently delete a greeting, immediately stopping it from appearing to new matching visitors. Use only a confirmed disposable or retired greeting ID. |
| `LIVECHAT_DELETE_GROUP` | Delete Group | Permanently delete one LiveChat group by ID. |
| `LIVECHAT_DELETE_GROUP_PROPERTIES` | Delete Group Properties | Delete selected custom property values from one LiveChat group without unregistering their definitions. |
| `LIVECHAT_DELETE_LICENSE_PROPERTIES` | Delete License Properties | Delete selected license-level custom property values without unregistering their definitions. |
| `LIVECHAT_DELETE_TAG` | Delete Tag | Permanently delete the exact case-sensitive LiveChat tag, removing it from workflows that rely on that tag. Use a confirmed disposable or retired name. |
| `LIVECHAT_DELETE_THREAD_PROPERTIES` | Delete Thread Properties | Permanently delete selected registered property values from a live customer-chat thread. Property data may contain PII; this action does not retry. |
| `LIVECHAT_DISABLE_LICENSE_WEBHOOKS` | Disable License Webhooks | Disable all webhooks across the connected LiveChat license. Warning: this causes a license-wide webhook outage that persists through application reinstall. |
| `LIVECHAT_ENABLE_LICENSE_WEBHOOKS` | Enable License Webhooks | Enable webhooks across the connected LiveChat license after they were explicitly disabled. Warning: this changes license-wide integration state and should not be treated as a guaranteed safe rollback without owner approval. |
| `LIVECHAT_EVALUATE_GOALS` | Evaluate Goals | Trigger LiveChat goal evaluation for an offline customer. Achieved goals can record conversions and trigger configured integrations from the supplied session fields, group, and page URL. |
| `LIVECHAT_GET_AGENT` | Get Agent | Return one LiveChat agent by ID, including any explicitly requested optional fields. |
| `LIVECHAT_GET_BOT` | Get Bot | Return one LiveChat bot by ID with explicitly requested optional fields. |
| `LIVECHAT_GET_CUSTOMER` | Get Customer | Return the customer profile for an explicit existing LiveChat entity through the server-side customer authorization bridge. |
| `LIVECHAT_GET_CUSTOMER_CHAT` | Get Customer Chat | Return one existing customer's LiveChat chat and either its latest thread or a specified thread. |
| `LIVECHAT_GET_CUSTOMER_CONFIGURATION` | Get Customer Configuration | Return versioned forms, buttons, integrations, and readable properties for a LiveChat customer group. |
| `LIVECHAT_GET_CUSTOMER_FORM` | Get Customer Form | Return the enabled pre-chat or post-chat form for one LiveChat group. |
| `LIVECHAT_GET_CUSTOMER_LOCALIZATION` | Get Customer Localization | Return versioned customer-facing localization phrases for a LiveChat group and language through LiveChat's public Customer Chat endpoint. |
| `LIVECHAT_GET_DYNAMIC_CUSTOMER_CONFIGURATION` | Get Dynamic Customer Configuration | Return current customer-facing widget availability and the version identifiers needed for detailed configuration and localization reads. |
| `LIVECHAT_GET_GREETING` | Get Greeting | Get one LiveChat greeting, including its rules and rich-message structure. |
| `LIVECHAT_GET_GROUP` | Get Group | Return one LiveChat group by ID, including any explicitly requested optional fields. |
| `LIVECHAT_GET_LICENSE_WEBHOOKS_STATE` | Get License Webhooks State | Return whether webhook delivery is enabled for the connected LiveChat license. |
| `LIVECHAT_GET_PREDICTED_AGENT` | Get Predicted Agent | Return whether a new chat for an existing customer is predicted to queue and the agent predicted to receive it, when available. |
| `LIVECHAT_GET_PRODUCT_SOURCE` | Get Product Source | Return the source parameters supplied when the Text product was activated. |
| `LIVECHAT_GET_URL_PREVIEW` | Get URL Preview | Return LiveChat-hosted preview image URLs for a public webpage without changing chat state. |
| `LIVECHAT_ISSUE_BOT_TOKEN` | Issue Bot Token | Issue a sensitive, non-revocable bot bearer token valid for 24 hours. The request secret and returned token must never be logged, stored in fixtures, or replayed; this action performs one request with no automatic loop. |
| `LIVECHAT_LIST_AGENTS` | List Agents | List LiveChat agents, optionally filtering by group membership or suspension state. |
| `LIVECHAT_LIST_ALL_BOTS` | List All Bots | List every bot in the LiveChat license, including bots not owned by the connected app. This is a privileged license-wide inventory read. |
| `LIVECHAT_LIST_ALL_PRIVATE_CANNED_RESPONSES` | List All Private Canned Responses | Return one page including every private canned response across the requested LiveChat groups. This privileged read exposes private records beyond those normally accessible to the caller and never fetches later pages automatically. |
| `LIVECHAT_LIST_AUTO_ACCESSES` | List Auto Accesses | List all LiveChat auto-access rules in their evaluation order. |
| `LIVECHAT_LIST_BOTS` | List Bots | List only bots owned by the connected LiveChat app. Use List All Bots for the privileged license-wide inventory. |
| `LIVECHAT_LIST_BOT_TEMPLATES` | List Bot Templates | List bot templates owned by a specified OAuth application client ID. |
| `LIVECHAT_LIST_CANNED_RESPONSES` | List Canned Responses | Return one page of canned responses accessible to the caller and a next_page_id for explicit continuation. This action never reads every private response or fetches subsequent pages automatically. |
| `LIVECHAT_LIST_CHANNELS` | List Channels | List summaries of communication channels used by the connected Text product. |
| `LIVECHAT_LIST_CUSTOMER_BANS` | List Customer Bans | List all active customer bans. Results can contain sensitive IP addresses and customer identifiers and should not be persisted unnecessarily. |
| `LIVECHAT_LIST_CUSTOMER_CHATS` | List Customer Chats | List one existing customer's chat summaries through LiveChat's server-side customer authorization bridge, returning one page at a time. |
| `LIVECHAT_LIST_CUSTOMER_CHAT_THREADS` | List Customer Chat Threads | List threads from one existing customer's chat through LiveChat's server-side customer authorization bridge, returning one page at a time. |
| `LIVECHAT_LIST_CUSTOMER_GROUP_PROPERTIES` | List Customer Group Properties | Read the custom property values a customer may access for one LiveChat group. Property values may contain customer data. Warning: live probes of this documented public endpoint currently return HTTP 405 or unsupported action; call it only to check whether provider support has been restored. |
| `LIVECHAT_LIST_CUSTOMER_GROUP_STATUSES` | List Customer Group Statuses | Return chat availability statuses for selected LiveChat groups or all groups visible to an existing customer. |
| `LIVECHAT_LIST_CUSTOMER_LICENSE_PROPERTIES` | List Customer License Properties | Read the license property values visible to a LiveChat customer. Property values may contain customer data. Warning: live probes of this documented public endpoint currently return HTTP 405 or unsupported action; call it only to check whether provider support has been restored. |
| `LIVECHAT_LIST_GREETINGS` | List Greetings | List a bounded page of LiveChat greetings, optionally filtered by group. Use the returned native next_page_id in a later call when present. |
| `LIVECHAT_LIST_GROUP_PROPERTIES` | List Group Properties | Read group-level property values for selected LiveChat groups or a property namespace. |
| `LIVECHAT_LIST_GROUPS` | List Groups | List all LiveChat groups, optionally requesting additional fields for each group. |
| `LIVECHAT_LIST_LICENSE_PROPERTIES` | List License Properties | Read license-level property values, optionally narrowed to a namespace and property-name prefix. |
| `LIVECHAT_LIST_PROPERTY_DEFINITIONS` | List Property Definitions | List private and public LiveChat property definitions owned by a specified OAuth application client ID. |
| `LIVECHAT_LIST_TAGS` | List Tags | List LiveChat tags, optionally filtering by nested group IDs. |
| `LIVECHAT_LIST_WEBHOOK_NAMES` | List Webhook Names | List webhook actions supported by LiveChat Configuration API version 3.6, including their accepted filters and additional payload data. |
| `LIVECHAT_LIST_WEBHOOKS` | List Webhooks | List webhooks registered for a specified OAuth application client ID. |
| `LIVECHAT_MARK_EVENTS_AS_SEEN` | Mark Events as Seen | Advance an existing customer's seen state in a LiveChat chat through an RFC 3339 timestamp. This emits a read-receipt state change for the chat. |
| `LIVECHAT_PUBLISH_PROPERTY` | Publish Property | Publish a private property for access by tokens belonging to any Client ID. Warning: publication is irreversible; a published property cannot be unpublished or unregistered. |
| `LIVECHAT_REACTIVATE_EMAIL` | Reactivate Email | Reactivate a bounced external email address for one LiveChat agent. Warning: this changes external email delivery state and may resume messages to that address. |
| `LIVECHAT_REGISTER_PROPERTY` | Register Property | Register one private custom property definition for a LiveChat OAuth application. |
| `LIVECHAT_REGISTER_WEBHOOK` | Register Webhook | Register one LiveChat webhook endpoint for an OAuth application and action. |
| `LIVECHAT_REQUEST_AGENT_UNSUSPENSION` | Request Agent Unsuspension | Request unsuspension for the connected suspended agent. LiveChat sends external emails to the license owners and vice owners; do not retry this notification operation automatically. |
| `LIVECHAT_REQUEST_EMAIL_VERIFICATION` | Request Email Verification | Send a verification email to an existing LiveChat customer. After confirmation, LiveChat sends the verified email to the supplied HTTPS callback exactly once and expects HTTP 200; failed callbacks are not retried. |
| `LIVECHAT_REQUEST_WELCOME_MESSAGE` | Request Welcome Message | Request an asynchronous welcome message for an existing logged-in customer. This creates greeting session state, emits incoming_welcome_message later, and can affect AI or agent routing; the response reports the predicted route. |
| `LIVECHAT_RESET_BOT_SECRET` | Reset Bot Secret | Irreversibly rotate a bot secret and return the sensitive replacement. The old credential stops working; update dependents immediately and never log, persist, replay, or automatically retry this operation. |
| `LIVECHAT_RESET_BOT_TEMPLATE_AND_INSTALLED_BOT_SECRETS` | Reset Bot Template And Installed Bot Secrets | Irreversibly rotate a LiveChat bot template secret and set the replacement on every installed bot based on it across all licenses. This bulk credential rotation invalidates prior secrets; never log, replay, or automatically retry it. |
| `LIVECHAT_RESET_BOT_TEMPLATE_SECRET` | Reset Bot Template Secret | Irreversibly rotate only a bot template secret and return the sensitive replacement. Existing installed bot secrets are unchanged; never log, replay, or automatically retry this action. |
| `LIVECHAT_RESUME_CHAT` | Resume Chat | Resume an archived LiveChat chat for an existing customer entity. This is non-idempotent: a successful call creates a new thread and can create initial events, change access or continuous mode, and mark events seen. Do not repeat a call after an uncertain outcome. |
| `LIVECHAT_SEND_EVENT` | Send Event | Send one event into a real LiveChat chat for an existing customer. This is non-idempotent: a successful call creates and delivers the event and marks chat events seen for the customer. Do not repeat after an uncertain outcome, because duplicate messages or interactions can be delivered. |
| `LIVECHAT_SEND_FILE_EVENT` | Send File Event | Upload one non-executable file of at most 10,000,000 bytes and irreversibly deliver it as a file event in an existing LiveChat chat. Delivery also marks chat events seen for the customer. If delivery fails after upload, the temporary uploaded file can remain without an event; do not retry after an uncertain outcome. |
| `LIVECHAT_SEND_GREETING_BUTTON_CLICKED` | Send Greeting Button Clicked | Record that an existing customer clicked a specific button in an incoming LiveChat greeting. This writes interaction state for the live session. |
| `LIVECHAT_SEND_RICH_MESSAGE_POSTBACK` | Send Rich Message Postback | Send a button postback for an existing rich-message event. This is non-idempotent and changes the live interaction state; for an active thread it can emit an incoming-rich-message-postback notification. Do not repeat a call after an uncertain outcome. |
| `LIVECHAT_SEND_SNEAK_PEEK` | Send Sneak Peek | Send transient typed content into a real LiveChat chat before the customer submits it as a message. Agents may see the supplied text immediately. This is non-idempotent interaction activity; do not repeat after an uncertain outcome. |
| `LIVECHAT_SET_CUSTOMER_SESSION_FIELDS` | Set Customer Session Fields | Replace an existing LiveChat customer's ordered session fields. This mutates customer session/profile data and the values may contain PII. |
| `LIVECHAT_START_CHAT` | Start Chat | Start a new LiveChat chat for an existing customer entity. This is non-idempotent: every successful call can create a real chat, thread, and initial events, and it also marks existing chat events seen for the customer. Do not repeat a call after an uncertain outcome. |
| `LIVECHAT_SUSPEND_AGENT` | Suspend Agent | Suspend a licensed LiveChat agent. This non-public operation requires the private sessions--all:rw grant and can interrupt active sessions and live chat routing; do not retry it automatically. |
| `LIVECHAT_UNBAN_CUSTOMER` | Unban Customer | Lift a customer ban by IP address or customer ID. Warning: this restores the customer's access to the connected LiveChat license. |
| `LIVECHAT_UNREGISTER_PROPERTY` | Unregister Property | Permanently remove one custom property definition owned by an OAuth application. |
| `LIVECHAT_UNREGISTER_WEBHOOK` | Unregister Webhook | Permanently remove one webhook registration owned by a LiveChat OAuth application. |
| `LIVECHAT_UNSUSPEND_AGENT` | Unsuspend Agent | Unsuspend a licensed LiveChat agent. This non-public operation requires the private subscription.lc:rw grant and restores the agent's ability to participate in live routing; do not retry it automatically. |
| `LIVECHAT_UPDATE_AGENT` | Update Agent | Update a licensed LiveChat agent. Role, group, login-status, chat-capacity, notification, and schedule changes can immediately alter permissions or live routing; verify the target and intended fields before calling. |
| `LIVECHAT_UPDATE_AUTO_ACCESS` | Update Auto Access | Update or reorder an auto-access rule. Changes immediately affect customer access routing, so use a confirmed disposable or intended rule ID. |
| `LIVECHAT_UPDATE_BOT` | Update Bot | Update a LiveChat bot. Group, priority, schedule, and chat-capacity changes can immediately alter live routing; verify the bot and intended fields before calling. |
| `LIVECHAT_UPDATE_BOT_TEMPLATE` | Update Bot Template | Fully replace a LiveChat bot template for future installations. Existing installed bots are not changed. Omitted optional replacement fields are reset or cleared to provider defaults. |
| `LIVECHAT_UPDATE_CANNED_RESPONSE` | Update Canned Response | Update an existing canned response while preserving omitted fields. Changing its group or privacy setting changes who can access it. |
| `LIVECHAT_UPDATE_CHAT_PROPERTIES` | Update Chat Properties | Set registered custom property values on a live customer chat. This mutates chat state and values may contain PII. |
| `LIVECHAT_UPDATE_COMPANY_DETAILS` | Update Company Details | Update license-level company details. Warning: this is an organization-wide change, and enrich=true may populate currently empty fields from the company domain. |
| `LIVECHAT_UPDATE_CUSTOMER` | Update Customer | Partially update an existing LiveChat customer profile. This writes PII and may change omnichannel identity matching; omitted fields remain unchanged. |
| `LIVECHAT_UPDATE_EVENT_PROPERTIES` | Update Event Properties | Set registered custom property values on a live customer-chat event. This mutates event state and values may contain PII. |
| `LIVECHAT_UPDATE_GREETING` | Update Greeting | Update a greeting while preserving omitted fields. Rule, content, or active changes affect matching visitors immediately; deactivate before structural editing when appropriate. |
| `LIVECHAT_UPDATE_GROUP` | Update Group | Update the name, language, or complete agent-priority map of an existing LiveChat group. |
| `LIVECHAT_UPDATE_GROUP_PROPERTIES` | Update Group Properties | Set one or more custom property values on a LiveChat group. |
| `LIVECHAT_UPDATE_INSTALLED_BOTS_FROM_TEMPLATE` | Update Installed Bots From Template | Fully replace a LiveChat bot template and propagate the replacement to every bot installed from it across all licenses. Omitted optional replacement fields are reset or cleared to provider defaults. This bulk cross-license update can immediately change live bot routing behavior. |
| `LIVECHAT_UPDATE_LICENSE_PROPERTIES` | Update License Properties | Set one or more license-level custom property values grouped by namespace. |
| `LIVECHAT_UPDATE_TAG` | Update Tag | Update a LiveChat tag identified by its exact case-sensitive name. When provided, group_ids replaces the tag's group assignment. |
| `LIVECHAT_UPDATE_THREAD_PROPERTIES` | Update Thread Properties | Set registered custom property values on a live customer-chat thread. This mutates thread state and values may contain PII. |
| `LIVECHAT_UPLOAD_FILE` | Upload File | Upload one non-executable file of at most 10,000,000 bytes for later use in a Customer Chat event. This creates a temporary provider-hosted file URL that expires after 24 hours unless used in send_event. Do not repeat after an uncertain outcome because each successful call uploads another file. |

## Supported Triggers

None listed.

## Installation and MCP Setup

### Path 1: SDK Installation

#### Path 1, Step 1: Install Composio

Install the Composio SDK, the OpenAI provider, and the OpenAI SDK
```python
pip install composio composio_openai openai
```

```typescript
npm install @composio/core @composio/openai openai
```

#### Path 1, Step 2: Create a Composio session

Initialize Composio with the OpenAI Responses provider and create a session scoped to LiveChat
```python
import json
from openai import OpenAI
from composio import Composio
from composio_openai import OpenAIResponsesProvider

composio = Composio(provider=OpenAIResponsesProvider())
client = OpenAI()

session = composio.create(user_id="your-user-id", toolkits=["livechat"])
tools = session.tools()
```

```typescript
import OpenAI from "openai";
import { Composio } from "@composio/core";
import { OpenAIResponsesProvider } from "@composio/openai";

const composio = new Composio({ provider: new OpenAIResponsesProvider() });
const client = new OpenAI();

const session = await composio.create("your-user-id", { toolkits: ["livechat"] });
const tools = await session.tools();
```

#### Path 1, Step 3: Run LiveChat tools with your agent

Send a request, execute the LiveChat tool calls through the session, and print the final answer
```python
response = client.responses.create(
    model="gpt-5.6-sol",
    tools=tools,
    input=[{"role": "user", "content": "List all active LiveChat agents"}],
)

while True:
    tool_calls = [o for o in response.output if o.type == "function_call"]
    if not tool_calls:
        break
    results = composio.provider.handle_tool_calls(response=response, session=session)
    response = client.responses.create(
        model="gpt-5.6-sol",
        tools=tools,
        previous_response_id=response.id,
        input=[
            {"type": "function_call_output", "call_id": call.call_id, "output": json.dumps(results[i])}
            for i, call in enumerate(tool_calls)
        ],
    )

print(response.output_text)
```

```typescript
let response = await client.responses.create({
  model: "gpt-5.6-sol",
  tools,
  input: [{ role: "user", content: "List all active LiveChat agents" }],
});

while (response.output.some((o) => o.type === "function_call")) {
  const outputs = await composio.provider.handleToolCalls(session, response.output);
  response = await client.responses.create({
    model: "gpt-5.6-sol",
    tools,
    previous_response_id: response.id,
    input: outputs,
  });
}

console.log(response.output_text);
```

### Path 2: MCP Server Setup

#### Path 2, Step 1: Install Composio

Install the Composio SDK and your agent framework
```python
pip install composio claude-agent-sdk
```

```typescript
npm install @composio/core ai @ai-sdk/mcp @ai-sdk/openai
```

#### Path 2, Step 2: Create a session with MCP enabled

Create a session scoped to LiveChat and read its MCP URL and headers
```python
from composio import Composio

composio = Composio()
session = composio.create(user_id="your-user-id", toolkits=["livechat"], mcp=True)
```

```typescript
import { Composio } from "@composio/core";

const composio = new Composio();
const { mcp } = await composio.create("your-user-id", {
  toolkits: ["livechat"],
  mcp: true,
});
```

#### Path 2, Step 3: Connect your agent to the MCP server

Pass the session's MCP URL and headers to your agent and run a LiveChat request
```python
import asyncio
from claude_agent_sdk import ClaudeSDKClient, ClaudeAgentOptions, AssistantMessage, TextBlock

options = ClaudeAgentOptions(
    mcp_servers={
        "composio": {
            "type": "http",
            "url": session.mcp.url,
            "headers": session.mcp.headers,
        }
    },
    system_prompt="You are a helpful assistant with access to LiveChat tools.",
    tools=[],
    allowed_tools=["mcp__composio__*"],
)

async def main():
    async with ClaudeSDKClient(options=options) as client:
        await client.query("List all active LiveChat agents")
        async for message in client.receive_response():
            if isinstance(message, AssistantMessage):
                for block in message.content:
                    if isinstance(block, TextBlock):
                        print(block.text)

asyncio.run(main())
```

```typescript
import { createMCPClient } from "@ai-sdk/mcp";
import { openai } from "@ai-sdk/openai";
import { generateText, stepCountIs } from "ai";

const client = await createMCPClient({
  transport: { type: "http", url: mcp.url, headers: mcp.headers },
});

const { text } = await generateText({
  model: openai("gpt-5.6-sol"),
  tools: await client.tools(),
  prompt: "List all active LiveChat agents",
  stopWhen: stepCountIs(10),
});

console.log(text);
await client.close();
```

## Why Use Composio?

### 1. AI Native LiveChat Integration

- Supports both LiveChat MCP and direct API based integrations
- Structured, LLM-friendly schemas for reliable tool execution
- Rich coverage for reading, writing, and querying your LiveChat data

### 2. Managed Auth

- Built-in OAuth handling with automatic token refresh and rotation
- Central place to manage, scope, and revoke LiveChat access
- Per user and per environment credentials instead of hard-coded keys

### 3. Agent Optimized Design

- Tools are tuned using real error and success rates to improve reliability over time
- Comprehensive execution logs so you always know what ran, when, and on whose behalf

### 4. Enterprise Grade Security

- Fine-grained RBAC so you control which agents and users can access LiveChat
- Scoped, least privilege access to LiveChat resources
- Full audit trail of agent actions to support review and compliance

## Use LiveChat with any AI Agent Framework

Choose a framework you want to connect LiveChat with:

- [ChatGPT](https://composio.dev/toolkits/livechat/framework/chatgpt)
- [Claude Cowork](https://composio.dev/toolkits/livechat/framework/claude-cowork)
- [Hermes](https://composio.dev/toolkits/livechat/framework/hermes-agent)
- [Atomic Agent](https://composio.dev/toolkits/livechat/framework/atomic-agent)

## Related Toolkits

- [Aeroleads](https://composio.dev/toolkits/aeroleads) - Aeroleads is a B2B lead generation platform for finding business emails and phone numbers. Grow your sales pipeline faster with powerful prospecting tools.
- [Autobound](https://composio.dev/toolkits/autobound) - Autobound is an AI-powered sales engagement platform that crafts hyper-personalized outreach and insights. It helps sales teams boost response rates and close more deals through tailored content and recommendations.
- [Better proposals](https://composio.dev/toolkits/better_proposals) - Better Proposals is a web-based tool for crafting and sending professional proposals. It helps teams impress clients and close deals faster with slick, easy-to-use templates.
- [Bidsketch](https://composio.dev/toolkits/bidsketch) - Bidsketch is a proposal software that helps businesses create professional proposals quickly and efficiently. It streamlines the proposal process, saving time while boosting client win rates.
- [Bolna](https://composio.dev/toolkits/bolna) - Bolna is an AI platform for building conversational voice agents. It helps businesses automate support and streamline interactions through natural, voice-powered conversations.
- [Botdog](https://composio.dev/toolkits/botdog) - Botdog is a LinkedIn outreach platform for managing campaigns, leads, messages, analytics, and sending accounts. It helps sales teams run outbound workflows and track performance from one place.
- [BotPenguin](https://composio.dev/toolkits/botpenguin) - BotPenguin is an AI chatbot platform for customer messaging, contacts, and conversations. It helps teams manage bot-led support and lead engagement across channels.
- [Botsonic](https://composio.dev/toolkits/botsonic) - Botsonic is a no-code AI chatbot builder for easily creating and deploying chatbots to your website. It empowers businesses to offer conversational experiences without writing code.
- [Botstar](https://composio.dev/toolkits/botstar) - BotStar is a comprehensive chatbot platform for designing, developing, and training chatbots visually on Messenger and websites. It helps businesses automate conversations and customer interactions without coding.
- [Callerapi](https://composio.dev/toolkits/callerapi) - CallerAPI is a white-label caller identification platform for branded caller ID and fraud prevention. It helps businesses boost customer trust while stopping spam, fraud, and robocalls.
- [Callingly](https://composio.dev/toolkits/callingly) - Callingly is a lead response management platform that automates immediate call and text follow-ups with new leads. It helps sales teams boost response speed and close more deals by connecting seamlessly with CRMs and lead sources.
- [Callpage](https://composio.dev/toolkits/callpage) - Callpage is a lead capture platform that lets businesses instantly connect with website visitors via callback. It boosts lead generation and increases your sales conversion rates.
- [Charla](https://composio.dev/toolkits/charla) - Charla is a live chat and AI customer-support platform for property teams. It helps manage guest conversations, property contacts, and support knowledge.
- [Chatforma](https://composio.dev/toolkits/chatforma) - Chatforma is a chatbot automation platform for building and managing bots. It helps teams run dialogs, segments, broadcasts, forms, and user updates from one place.
- [Clearout](https://composio.dev/toolkits/clearout) - Clearout is an AI-powered service for verifying, finding, and enriching email addresses. It boosts deliverability and helps you discover high-quality leads effortlessly.
- [Clientary](https://composio.dev/toolkits/clientary) - Clientary is a platform for managing clients, invoices, projects, proposals, and more. It streamlines client work and saves you serious admin time.
- [Convolo ai](https://composio.dev/toolkits/convolo_ai) - Convolo ai is an AI-powered communications platform for sales teams. It accelerates lead response and improves conversion rates by automating calls and integrating workflows.
- [Crisp](https://composio.dev/toolkits/crisp) - Crisp is a customer messaging platform for live chat, contacts, helpdesk, and campaigns. It helps support teams manage customer conversations from one shared workspace.
- [Delighted](https://composio.dev/toolkits/delighted) - Delighted is a customer feedback platform based on the Net Promoter System®. It helps you quickly gather, track, and act on customer sentiment.
- [Docsbot ai](https://composio.dev/toolkits/docsbot_ai) - Docsbot ai is a platform that lets you build custom AI chatbots trained on your documentation. It automates customer support and content generation, saving time and improving response quality.

## Frequently Asked Questions

### Do I need my own developer credentials to use LiveChat with Composio?

Yes, LiveChat requires you to configure your own OAuth credentials. Once set up, Composio handles token storage, refresh, and lifecycle management for you.

### Can I use multiple toolkits together?

Yes! Composio's Tool Router enables agents to use multiple toolkits. [Learn more](https://docs.composio.dev/tool-router/overview).

### Is Composio secure?

Composio is SOC 2 and ISO 27001 compliant with all data encrypted in transit and at rest. [Learn more](https://trust.composio.dev).

### What if the API changes?

Composio maintains and updates all toolkit integrations automatically, so your agents always work with the latest API versions.

---
[See all toolkits](https://composio.dev/toolkits) · [Composio docs](https://docs.composio.dev/llms.txt)
