Skip to main content
Glama

List Exploratory Sessions

list_sessions
Read-only

Browse exploratory sessions for a project and filter by status, state, type, assignee, release, tags, or name search.

Instructions

Browse exploratory sessions for a project. Filter by status (active|closed), state, sessionType, assignee, release (releaseId), tags, or free-text search on name. Default page size 25 (max 200).

Input Schema

NameRequiredDescriptionDefault
pageNo
tagsNoSingle tag or comma-separated tags
limitNoDefault 25
stateNoWorkflow state. Pass either the canonical form ("new", "under_review", "done", "rejected") or the display form ("Under review", "Done") — the server normalizes (lowercase, spaces → underscores) so UI badges colorize correctly.
searchNoMatch by session name
sortByNo
statusNo
isClosedNo
projectIdYesProject ID
releaseIdNoFilter to sessions in this release. Pass "none" for unlinked.
sortOrderNo
sessionTypeNo
assigneeUserIdNoUser _id (e.g. "user_abc...") OR email address — both are accepted.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed14 schema fields changedv2.2.0
    • addedInput schema / $schema
      Added value: +"http://json-schema.org/draft-07/schema#"
    • addedInput schema / additionalProperties
      Added value: +false
    • changedInput schema / properties / assigneeUserId / description
      Previous value: -"User _id OR email — both accepted (server resolves email to user _id)."New value: +"User _id (e.g. \"user_abc...\") OR email address — both are accepted."
    • changedInput schema / properties / limit / description
      Previous value: -"Default 25 (max 200)."New value: +"Default 25"
    • addedInput schema / properties / limit / maximum
      Added value: +200
    • addedInput schema / properties / limit / minimum
      Added value: +1
    • changedInput schema / properties / limit / type
      Previous value: -"number"New value: +"integer"
    • addedInput schema / properties / page / minimum
      Added value: +1
    • changedInput schema / properties / page / type
      Previous value: -"number"New value: +"integer"
    • changedInput schema / properties / projectId / description
      Previous value: -"Project ID (required)."New value: +"Project ID"
    • changedInput schema / properties / releaseId / description
      Previous value: -"'none' for unlinked sessions."New value: +"Filter to sessions in this release. Pass \"none\" for unlinked."
    • changedInput schema / properties / search / description
      Previous value: -"Match by session name."New value: +"Match by session name"
    • changedInput schema / properties / state / description
      Previous value: -"Workflow state. Either canonical ('under_review', 'done') or display ('Under review', 'Done') form — the server normalizes lowercase+underscored."New value: +"Workflow state. Pass either the canonical form (\"new\", \"under_review\", \"done\", \"rejected\") or the display form (\"Under review\", \"Done\") — the server normalizes (lowercase, spaces → underscores) so UI badges colorize correctly."
    • changedInput schema / properties / tags / description
      Previous value: -"Single tag or comma-separated."New value: +"Single tag or comma-separated tags"
  2. Addedv1.0.10

TDQS

A3.5/5.0
Behavior3/5

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

The readOnlyHint annotation already establishes this is a safe read, and the description adds genuine behavioral value by disclosing pagination defaults ('Default page size 25 (max 200)'). It stops short of describing return shape, ordering behavior, or whether results are truncated, so it adds context but not a rich behavioral picture.

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

Conciseness5/5

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

Two tight sentences: the resource scope is front-loaded, followed by the filter inventory and the pagination constraint. No filler, no restatement of the name or title.

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

Completeness3/5

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

For a 13-parameter, no-output-schema tool, the description covers the primary filtering use case adequately but is not complete: it never mentions the page parameter, sorting controls, or anything about what the response contains. An agent can call it, but the pagination and ordering story is only half told.

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?

At 54% schema coverage, the description carries real weight by mapping filters to names (status, state, sessionType, assignee, release/releaseId, tags, search) and the page-size limit. But it omits meaningful parameters — page, sortBy, sortOrder, and isClosed — leaving those unglossed in both the description and parts of the schema.

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

Purpose4/5

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

States a specific verb and resource ('Browse exploratory sessions for a project') and pins the collection scope. It clearly implies a multi-session listing, distinguishing it in spirit from the singular get_session, but never names the sibling or explicitly contrasts the two.

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

Usage Guidelines3/5

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

Enumerating the filterable dimensions implies 'use this to find/filter sessions,' which is reasonable context. However there is no when-to-use versus alternative statement and no prerequisites, so the agent must infer the conditions from the filter list alone.

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