[Cotlet](https://cotlet.dev/index.md) · [Integrations](https://cotlet.dev/integrations.md) · [How it works](https://cotlet.dev/how-it-works.md) · [Use cases](https://cotlet.dev/use-cases.md) · [Security](https://cotlet.dev/security.md) · [For developers](https://cotlet.dev/for-developers.md) · [For automation agencies](https://cotlet.dev/for-agencies.md) · [Blog](https://cotlet.dev/blog.md) · [API docs](https://cotlet.dev/docs.md) · [Help center](https://cotlet.dev/help.md) · [Changelog](https://cotlet.dev/changelog.md) · [Contact](https://cotlet.dev/contact.md) · [Pricing](https://cotlet.dev/pricing.md) · [Sign up](https://cotlet.dev/signup)

# Triage incoming Kommo leads with AI

> Accept real enquiries in Kommo, decline spam and keep unclear chats for yourself, by your own rule on what the person wrote. Runs daily.

Source: https://cotlet.dev/integrations/kommo-api-mcp-server/triage-incoming-leads

Every message on a connected channel arrives in Kommo as a chat waiting to become a lead, and someone has to open each one and click Accept, Decline or Link before it enters the pipeline.

Cotlet does it in your own Kommo account with list\_incoming\_leads, get\_conversation, accept\_incoming\_lead and decline\_incoming\_lead, called by your AI agent, an n8n workflow or a script.

[Sign up free](https://cotlet.dev/app/signup?app=kommo) [All Kommo tools](https://cotlet.dev/integrations/kommo-api-mcp-server.md)

Hosted · nothing to install or maintain

## Can Kommo do this on its own?

Kommo has no rule that accepts or declines an incoming lead by what the person wrote (checked 20 Oct 2026). Digital Pipeline triggers act on a stage: they can start a Salesbot, add a task, move the lead or add tags. Accept, Decline and Link are clicks in the chat.

## How you do it in Kommo today

1. An admin enables the Incoming leads stage for the pipeline. Without it, a chat has no Accept, Decline or Link buttons.
2. The seller opens Communication → Chat inbox, clicks a conversation and reads the history in the activity feed.
3. Accept turns the chat into a lead: edits to the details save automatically and the lead moves to the next stage.
4. Decline handles spam, and Link attaches the chat to a lead that already exists.
5. Each new message adds another chat to read, so the queue is easy to leave until the next morning.

## How to triage incoming Kommo leads with AI

Prompt

```
Go through the incoming leads in Kommo. Accept real enquiries about our services and assign them to Anna, decline obvious spam, and leave the unclear ones for me with a one-line reason.
```

1. 01  
### Read the whole queue  
The agent reads the incoming chats with list\_incoming\_leads, which returns the channel, the first message and when it arrived, and follows next\_cursor until the list ends, so a weekend backlog is judged as one batch.
2. 02  
### Read what the person wrote  
For each chat where the first message does not decide it, get\_conversation brings the history, so a one-word "hi" is judged on the follow-up and not on its own.
3. 03  
### Sort into three piles  
Chats that match your rule ("asks about our services or prices") go to accept, clear spam (promo links, unrelated offers) goes to decline, and anything ambiguous or that looks like an existing customer stays for you with a short note. Link has no tool, so a returning customer is yours to link.
4. 04  
### Accept with an owner  
accept\_incoming\_lead runs for the matches, with the responsible user from your prompt when you named one. The lead enters the next stage, so any Digital Pipeline trigger on that stage fires; that is why each accept waits for your OK by default.
5. 05  
### Skip what changed  
Right before acting, the agent reads the queue again. A chat a colleague already accepted or declined is gone from it, so the agent logs it as handled and leaves it alone.

### What you get back

Example data

```
Incoming chats: 17
Accepted 9 and assigned to Anna (e.g. WhatsApp: "How much is a landing page for a dental clinic?")
Declined 5 (same crypto link in the first message)
Left for you 3:
- Instagram: "hi" with no follow-up
- WhatsApp: asks for a refund, looks like a customer
```

### Other ways to ask

- Every morning at 8, accept chats that mention a budget and list the rest for me.
- Show me the incoming queue sorted by how well each message fits my ideal client, but accept nothing yet.
- Decline chats where the first message is only a link, and tell me which ones so I can check.

## What Kommo allows, and what to know first

- Once a channel such as WhatsApp, Facebook, Instagram or Telegram is connected, Kommo makes a new lead from each incoming message.
- The Accept, Decline and Link buttons need the Incoming leads pipeline stage to be enabled.
- Kommo lets only one account per channel (Facebook, Instagram, WhatsApp and so on) be connected, so one queue holds everything from that channel.
- Messages, comments and story replies from the connected channels all appear in the Chat inbox.
- In Win-Loss analysis, incoming leads metrics are visible only to users with view permission for the Incoming leads stage, so check the account behind this job has it.

accept\_incoming\_lead and decline\_incoming\_lead ask for your OK by default. To run it daily without you, switch confirmation off for those tools in your dashboard.

Sources: [Kommo Help: Manage leads, contacts and companies](https://support.kommo.com/docs/manage-leads-in-kommo) · [Kommo Help: Manage Chat inbox in Kommo](https://support.kommo.com/docs/manage-chat-inbox-in-kommo) · [Kommo Help: Kommo Chat inbox overview](https://support.kommo.com/docs/chat-inbox-overview) · [Kommo Help: Track your win-loss statistics](https://support.kommo.com/docs/win-loss-statistics)

## Call accept\_incoming\_lead from a script

curl

```
curl -X POST https://cotlet.dev/api/v1/kommo/chats/c8f2a6d1/incoming-lead/accept \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"responsible_user_id":9102334}'
```

Example response

```
{
"lead_id": 24519044,
"chat_id": "c8f2a6d1",
"stage": "Contacted",
"responsible": {
"user_id": 9102334,
"name": "Anna Berg"
}
}
```

MCP: add https://cotlet.dev/mcp/v1 with the same key; the call is kommo\_write → accept\_incoming\_lead. Example data.

[Schedule it in n8n, Make, Zapier or cron](https://cotlet.dev/integrations/kommo-api-mcp-server.md#automations)

## Kommo tools this automation uses

__Cotlet Kommo tools used to triage incoming Kommo leads with AI__
| Tool | Parameters |
| ----------------------- | ------------------------------- |
| list\_incoming\_leads | pipeline\_id, cursor |
| get\_conversation | chat\_id, cursor |
| accept\_incoming\_lead | chat\_id, responsible\_user\_id |
| decline\_incoming\_lead | chat\_id |

[All 15 Kommo tools with descriptions](https://cotlet.dev/integrations/kommo-api-mcp-server.md#tools)

## Frequently asked questions

### Is it safe to connect Kommo to Cotlet?

Yes. You sign in to Kommo yourself, in your own Cloud Browser in the EU, and we never save your password. Your agents only get Kommo once you enable it, every background request is listed, and the browser profile is stored encrypted with AES-256-GCM, the cipher 1Password uses for its vaults. The AI model never sees a login, posts and messages wait for your OK, and Disable for agents cuts access in one click. Independent scanners grade cotlet.dev A+ on Qualys SSL Labs, securityheaders.com and Mozilla Observatory; live results are on https://cotlet.dev/security.

## More Kommo automations

- [Create follow-up tasks for stale Kommo leads](https://cotlet.dev/integrations/kommo-api-mcp-server/chase-stale-leads-with-follow-up-tasks.md)
- [Reply to unanswered Kommo chats with AI](https://cotlet.dev/integrations/kommo-api-mcp-server/reply-to-unanswered-chats.md)
- [Kommo API and MCP server: every tool](https://cotlet.dev/integrations/kommo-api-mcp-server.md)
- [All use cases](https://cotlet.dev/use-cases.md)

## Give your agent access to Kommo.

Free 7-day trial with 2,000 credits, no card needed. Cotlet is independent and not affiliated with Kommo.

[Sign up free](https://cotlet.dev/app/signup?app=kommo)

---

Give your AI agents your signed-in browser.

**Product:** [Integrations](https://cotlet.dev/integrations.md) · [Use cases](https://cotlet.dev/use-cases.md) · [How it works](https://cotlet.dev/how-it-works.md) · [Pricing](https://cotlet.dev/pricing.md) · [Security](https://cotlet.dev/security.md)

**Resources:** [Blog](https://cotlet.dev/blog.md) · [API docs](https://cotlet.dev/docs.md) · [Help center](https://cotlet.dev/help.md) · [Changelog](https://cotlet.dev/changelog.md) · [GitHub](https://github.com/cotletdev/cotlet)

**Solutions:** [For developers](https://cotlet.dev/for-developers.md) · [For automation agencies](https://cotlet.dev/for-agencies.md)

**Company:** [About](https://cotlet.dev/about.md) · [AI info: company facts](https://cotlet.dev/ai-info.md) · [Contact](https://cotlet.dev/contact.md)

**Legal:** [Terms of service](https://cotlet.dev/terms) · [Privacy policy](https://cotlet.dev/privacy) · [Refund policy](https://cotlet.dev/refunds) · [Acceptable use](https://cotlet.dev/acceptable-use) · [Cookie policy](https://cotlet.dev/cookies) · [DPA](https://cotlet.dev/dpa) · [Subprocessors](https://cotlet.dev/subprocessors)

**Elsewhere:** [Status page](https://status.cotlet.dev) · [Cotlet on GitHub](https://github.com/cotletdev) · [Cotlet on X](https://x.com/cotletdev) · [Cotlet on LinkedIn](https://www.linkedin.com/company/cotletdev) · [Cotlet on Product Hunt](https://www.producthunt.com/products/cotlet) · [Cotlet on Crunchbase](https://www.crunchbase.com/organization/cotlet) · [Cotlet on SaaSHub](https://www.saashub.com/cotlet)

Cotlet is an independent service. It is not affiliated with, endorsed by or sponsored by any of the products listed on this site. Product names are trademarks of their respective owners.

## For AI agents: sign your user up

Is your user asking you to sign them up for Cotlet? You can do it for them, no account or key needed.

1. Read the fields and their allowed values: GET https://cotlet.dev/api/v1/access-requests
2. Ask the user for each value: email, apps, what you will do with them. If they leave the password to you, generate a strong one and show it to them.
3. Show the user what you will send, then POST it as JSON to https://cotlet.dev/api/v1/access-requests.

One call creates the account and sends the access request; we email the user when access is granted.
