Skip to main content
Glama

List conversations

list_conversations
Read-onlyIdempotent

Lists the inbox, most recently active first, 50 a page, filtered like the Conversations page. Each row: status and why, channel kind, flow and run, owner, when it last moved, and the customer: name only with the conversation-content permission, contact details always masked. No message text: read_conversation has it, and explain_conversation says why one went as it did.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "list_conversations"
  }
}

Input Schema

NameRequiredDescriptionDefault
pageNoFrom 1.
limitNoRows a page, at most 100. Default 50.
searchNoName, phone or email.
statusNoAny of these.
date_toNoYYYY-MM-DD
flow_idNoFrom `list_flows`.
repliedNotrue: the customer wrote at least once.
assignedNo"me", "unassigned" or a member id.
date_fromNoYYYY-MM-DD
campaign_idNoFrom `list_campaigns`.
channel_typeNo`sms`, `email`, `web_widget` or `email_inbox`.
meeting_bookedNotrue: a meeting is still scheduled.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed8 schema fields changed
    • addedInput schema / properties / campaign_id / description
      Added value: +"From `list_campaigns`."
    • addedInput schema / properties / channel_type / description
      Added value: +"`sms`, `email`, `web_widget` or `email_inbox`."
    • addedInput schema / properties / flow_id / description
      Added value: +"From `list_flows`."
    • addedInput schema / properties / limit / description
      Added value: +"Rows a page, at most 100. Default 50."
    • addedInput schema / properties / meeting_booked / description
      Added value: +"true: a meeting is still scheduled."
    • addedInput schema / properties / page / description
      Added value: +"From 1."
    • addedInput schema / properties / replied / description
      Added value: +"true: the customer wrote at least once."
    • addedInput schema / properties / status / description
      Added value: +"Any of these."
  2. First observed

TDQS

A4.3/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish read-only, idempotent, non-destructive, closed-world, so the description clears that bar and then adds genuinely new behavioral facts: default sort order, default page size, and permission-dependent output ("name only with the conversation-content permission, contact details always masked"). That data-governance disclosure is exactly the kind of context an annotation cannot carry and materially changes how an agent should interpret and present results.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three front-loaded sentences with no filler: ordering and paging first, then row contents, then the sibling hand-off. Minor cost is the mid-sentence list of row fields, which reads as a run-on, and the vague "filtered like the Conversations page" clause that spends words without conveying checkable meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 12 optional parameters and no output schema, the description correctly compensates by sketching the returned row shape and flagging the masked/permission-gated fields — that is the right thing to spend words on here. Residual gaps are pagination metadata (total count, whether more pages exist) and filter-combination semantics, which matter for a heavily-filtered list but are not fatal.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so every parameter is already documented in the schema, and the description adds no per-parameter meaning (no syntax, no combination semantics, no note on `assigned` values or date-range behavior). Its only filter-related statement, "filtered like the Conversations page," is a product-reference shorthand that requires outside knowledge rather than clarifying the twelve parameters. Baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ("Lists the inbox") plus scope detail an agent can act on: recency ordering, 50-per-page, and Conversations-page-equivalent filtering. It also enumerates the row payload (status, channel, flow/run, owner, last activity, customer identity) and explicitly separates itself from `read_conversation` and `explain_conversation`.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The closing sentence is real routing guidance: it tells the agent this tool will not return message text and names the two siblings that do (`read_conversation` for content, `explain_conversation` for causation). It stops short of explicit when-not conditions beyond that (e.g. whether to prefer `list_leads` for person-centric queries, or how filters combine), so it is clear context rather than a full decision rule.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.