Skip to main content
Glama
es6kr
by es6kr

claude-sessions-mcp

⚠️ DEPRECATED: This package has been replaced by claude-code-sessions.

Please migrate to the new package:

npm uninstall claude-sessions-mcp
npm install claude-code-sessions

MCP (Model Context Protocol) server and Web UI for managing Claude Code sessions.

Features

  • Project Listing: Browse Claude Code project folders

  • Session Management: List, rename, and delete sessions

  • Message Management: View and delete messages within sessions

  • Cleanup: Clear empty sessions and remove invalid API key messages

  • Web UI: SvelteKit-based web interface

Related MCP server: Claude Orchestrator MCP

Installation

# Using npx (recommended)
npx claude-sessions-mcp

# Or install globally
npm install -g claude-sessions-mcp

Usage

Claude Code MCP Integration

Add to Claude Code:

claude mcp add claude-sessions -- npx claude-sessions-mcp

Or manually edit ~/.claude.json:

{
  "mcpServers": {
    "claude-sessions": {
      "command": "npx",
      "args": ["claude-sessions-mcp"]
    }
  }
}

Web GUI

Launch the web interface via MCP tool (from Claude Code):

> Use the start_gui tool to launch web interface

The GUI opens at http://localhost:5050 with features:

  • Browse all projects and sessions

  • View full conversation history

  • Rename sessions with inline editing

  • Delete unwanted sessions

  • Bulk cleanup of empty sessions

Development

# Enable corepack
corepack enable

# Install dependencies
pnpm install

# Start web development server
pnpm dev

# MCP server development mode
pnpm dev:mcp

Build

pnpm build

MCP Server Tools

Available Tools

Tool

Description

list_projects

List Claude Code projects

list_sessions

List sessions in a project

rename_session

Rename a session

delete_session

Delete a session (moves to backup folder)

delete_message

Delete a message and repair UUID chain

preview_cleanup

Preview sessions to be cleaned

clear_sessions

Clear empty sessions and invalid messages

start_gui

Start the web UI

stop_gui

Stop the web UI

Tech Stack

  • MCP Server: Node.js + TypeScript + Effect

  • Web UI: SvelteKit + Svelte 5

  • Build: tsup (MCP), Vite (Web)

  • Package Manager: pnpm (corepack)

Effect-TS Patterns

This project uses Effect for functional async operations:

import { Effect, pipe, Array as A, Option as O } from 'effect'

// Define an Effect (lazy, composable)
const listProjects = Effect.gen(function* () {
  const files = yield* Effect.tryPromise(() => fs.readdir(dir))
  return files.filter((f) => f.endsWith('.jsonl'))
})

// Parallel execution with concurrency control
const results =
  yield *
  Effect.all(
    items.map((item) => processItem(item)),
    { concurrency: 10 }
  )

// Option for nullable values
const title = pipe(
  messages,
  A.findFirst((m) => m.type === 'user'),
  O.map((m) => extractTitle(m)),
  O.getOrElse(() => 'Untitled')
)

// Run in SvelteKit endpoint
export const GET = async () => {
  const result = await Effect.runPromise(listProjects)
  return json(result)
}

License

MIT

Available Tools

12 tools
clear_sessionsB

Delete all empty sessions and invalid API key sessions

ParametersJSON Schema
NameRequiredDescriptionDefault
project_nameNoOptional: filter by project name
clear_emptyNoClear empty sessions (default: true)
clear_invalidNoClear invalid API key sessions (default: true)
clear_orphan_agentsNoClear orphan agent files whose session no longer exists (default: true)

TDQS

B3.4/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. It states the destructive action ('Delete') but lacks details on permissions needed, whether deletions are reversible, rate limits, or what constitutes 'empty' or 'invalid' sessions. For a destructive tool with zero annotation coverage, this is inadequate.

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?

The description is a single, efficient sentence with zero waste. It front-loads the core action and target resources without unnecessary elaboration, making it easy to parse quickly.

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

Completeness2/5

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

For a destructive tool with no annotations and no output schema, the description is incomplete. It lacks critical behavioral context (e.g., safety warnings, response format, error handling) and doesn't compensate for the absence of structured metadata, leaving significant gaps for an AI agent.

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 the schema fully documents all 4 parameters. The description doesn't add any parameter-specific details beyond what's in the schema, such as clarifying the scope of 'project_name' filtering or interactions between boolean flags. Baseline 3 is appropriate when schema does the heavy lifting.

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?

The description clearly states the specific action ('Delete') and the target resources ('all empty sessions and invalid API key sessions'), distinguishing it from siblings like 'delete_session' (singular) and 'preview_cleanup' (preview only). It uses precise verbs and resource types.

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?

The description implies usage for cleanup of specific session types but doesn't explicitly state when to use this tool versus alternatives like 'preview_cleanup' (for previewing) or 'delete_session' (for targeted deletion). No explicit exclusions or prerequisites are mentioned.

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

delete_messageC

Delete a message from a session and repair the parentUuid chain

ParametersJSON Schema
NameRequiredDescriptionDefault
project_nameYesProject folder name
session_idYesSession ID
message_uuidYesUUID of the message to delete

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions 'repair the parentUuid chain,' which hints at a complex mutation with side effects, but doesn't clarify permissions needed, whether the deletion is reversible, rate limits, or what happens to associated data. This is inadequate for a destructive operation.

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?

The description is a single, efficient sentence that directly states the tool's purpose and key behavioral detail ('repair the parentUuid chain'). It is front-loaded with no wasted words, earning its place fully.

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

Completeness2/5

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

Given the complexity of a deletion tool with chain repair, no annotations, and no output schema, the description is incomplete. It fails to address critical aspects like error handling, return values, or the implications of the repair process, leaving significant gaps for an AI agent.

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 the schema already documents all three parameters (project_name, session_id, message_uuid). The description adds no additional meaning beyond what the schema provides, such as format examples or constraints, meeting the baseline for high schema coverage.

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?

The description clearly states the action ('Delete a message') and the resource ('from a session'), with the additional detail about repairing the parentUuid chain. However, it doesn't explicitly differentiate this tool from sibling tools like delete_session or clear_sessions, which would require a 5.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives like delete_session or clear_sessions. It lacks context about prerequisites, exclusions, or specific scenarios where this deletion method is appropriate.

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

delete_sessionB

Delete a session (moves to .bak folder for recovery)

ParametersJSON Schema
NameRequiredDescriptionDefault
project_nameYesProject folder name
session_idYesSession ID to delete

TDQS

B3.3/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It discloses that deletion moves sessions to a .bak folder for recovery, which is a key behavioral trait beyond basic deletion. However, it doesn't cover other aspects like permissions needed, error handling, or whether this is reversible beyond the .bak mechanism.

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?

The description is a single, efficient sentence with a parenthetical that adds crucial information. It's front-loaded with the core action and resource, with no wasted words, making it highly concise and well-structured.

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?

Given no annotations and no output schema, the description is adequate for a deletion tool with recovery context, but it lacks details on output format, error cases, or integration with sibling tools. It covers the basic behavior but leaves gaps in full operational understanding.

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 the schema already documents both parameters ('project_name' and 'session_id'). The description doesn't add any additional meaning or context about these parameters beyond what the schema provides, meeting the baseline for high coverage.

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?

The description clearly states the action ('Delete') and resource ('a session'), and the parenthetical adds important context about recovery. However, it doesn't explicitly differentiate from sibling tools like 'clear_sessions' or 'preview_cleanup', which might have overlapping functionality.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives like 'clear_sessions' or 'delete_message'. The description lacks context about prerequisites, recovery implications, or scenarios where this tool is preferred over others.

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

get_session_diffC

Get diff summary for a session including file changes and snapshot info

ParametersJSON Schema
NameRequiredDescriptionDefault
project_nameYesProject folder name
session_idYesSession ID

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool retrieves a diff summary but doesn't describe the return format, whether it's read-only, any permissions required, or potential side effects. This is a significant gap for a tool with no annotation coverage.

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?

The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It's appropriately sized and front-loaded, with every word contributing to clarity.

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

Completeness2/5

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

Given the lack of annotations and output schema, the description is incomplete. It doesn't explain what the diff summary includes beyond 'file changes and snapshot info', nor does it cover behavioral aspects like safety or response format. For a tool with no structured data support, this leaves critical gaps.

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?

The schema description coverage is 100%, so the schema already documents both parameters ('project_name' and 'session_id') adequately. The description adds no additional meaning beyond what the schema provides, such as explaining how these parameters relate to the diff summary, which aligns with the baseline score when schema coverage is high.

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?

The description clearly states the tool's purpose with a specific verb ('Get') and resource ('diff summary for a session'), including what information it retrieves ('file changes and snapshot info'). However, it doesn't explicitly differentiate from sibling tools like 'get_session_files' or 'list_sessions', which might also retrieve session-related information.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, exclusions, or compare it to siblings such as 'get_session_files' or 'list_sessions', leaving the agent to infer usage from the name alone.

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

get_session_filesB

Get list of all files changed in a session (from file-history-snapshot and tool_use)

ParametersJSON Schema
NameRequiredDescriptionDefault
project_nameYesProject folder name
session_idYesSession ID

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. It states the tool retrieves a list from specific sources but doesn't disclose behavioral traits such as read-only status, potential rate limits, error handling, or output format details. This is a significant gap for a tool with no annotation coverage.

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?

The description is a single, efficient sentence with zero waste. It is appropriately sized and front-loaded, clearly stating the tool's purpose without unnecessary elaboration.

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?

Given the tool's moderate complexity (2 required parameters, no output schema, no annotations), the description is minimally adequate. It covers the basic purpose but lacks details on behavioral traits and usage guidelines, leaving gaps in completeness for effective agent use.

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 the schema already documents both parameters (project_name and session_id). The description adds no additional meaning beyond what the schema provides, such as parameter interactions or usage context, meeting the baseline for high schema coverage.

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?

The description clearly states the verb 'Get' and the resource 'list of all files changed in a session', specifying the data sources (file-history-snapshot and tool_use). It distinguishes from siblings like get_session_diff (which likely shows differences) and list_sessions (which lists sessions, not files), but doesn't explicitly contrast them.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like get_session_diff or list_sessions. The description implies usage for retrieving file changes within a session but lacks explicit context, prerequisites, or exclusions.

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

list_projectsB

List all Claude Code projects with session counts

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. While 'List' implies a read-only operation, the description doesn't specify whether this requires authentication, how results are paginated, what format the session counts are in, or whether there are rate limits. This leaves significant behavioral questions unanswered.

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?

The description is a single, efficient sentence that communicates the core functionality without any wasted words. It's appropriately sized for a simple listing tool and front-loads the essential information.

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?

Given the tool has no parameters, no annotations, and no output schema, the description provides the minimum viable information about what the tool does. However, it doesn't explain what format the results will be in (projects with session counts), whether there are limitations, or how this relates to other session management tools. For a tool in a complex session management context, more completeness would be helpful.

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

Parameters4/5

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

The tool has zero parameters with 100% schema description coverage, so the schema already fully documents the parameter situation. The description appropriately doesn't mention parameters, which is correct for a parameterless tool. Baseline would be 4 for zero parameters.

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?

The description clearly states the tool's purpose with a specific verb ('List') and resource ('Claude Code projects'), and includes additional scope ('with session counts'). However, it doesn't explicitly differentiate from sibling tools like 'list_sessions', which might cause confusion about the resource hierarchy.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. With sibling tools like 'list_sessions' and 'get_session_files', there's no indication of whether this is a higher-level aggregation tool or how it relates to other listing operations.

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

list_sessionsC

List all sessions in a project

ParametersJSON Schema
NameRequiredDescriptionDefault
project_nameYesProject folder name (e.g., '-Users-young-works-myproject')

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. While 'List' implies a read-only operation, the description doesn't address permissions, pagination, rate limits, or what constitutes a 'session' in this context. It lacks behavioral details needed for safe invocation.

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?

The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It's appropriately sized and front-loaded, with zero wasted content.

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

Completeness2/5

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

Given no annotations and no output schema, the description is incomplete for a tool with behavioral implications. It doesn't explain what a 'session' is, how results are returned, or any constraints, leaving significant gaps for the agent to navigate.

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%, with the single parameter 'project_name' fully documented in the schema. The description doesn't add any parameter semantics beyond what the schema provides, so it meets the baseline for high schema coverage without compensating value.

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?

The description clearly states the action ('List all sessions') and resource ('in a project'), providing a specific verb+resource combination. However, it doesn't differentiate from sibling tools like 'list_projects' or 'get_session_files' beyond the obvious scope difference.

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

Usage Guidelines2/5

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

No guidance is provided about when to use this tool versus alternatives. The description doesn't mention prerequisites, context for usage, or exclusions, leaving the agent to infer usage from the tool name alone.

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

preview_cleanupC

Preview sessions that would be cleaned (empty and invalid API key sessions)

ParametersJSON Schema
NameRequiredDescriptionDefault
project_nameNoOptional: filter by project name

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool 'previews' sessions, implying a read-only operation, but doesn't clarify if this requires specific permissions, what the output format is, or any side effects (e.g., if it logs or caches data). For a tool with zero annotation coverage, this leaves significant gaps in understanding its behavior.

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?

The description is a single, efficient sentence that front-loads the core purpose. It uses parentheses to add clarifying detail without unnecessary elaboration. Every word earns its place, making it highly concise and well-structured.

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

Completeness2/5

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

Given the complexity (a preview tool for session cleanup), lack of annotations, and no output schema, the description is incomplete. It doesn't explain what 'preview' entails (e.g., returns a list, count, or summary), how 'empty' and 'invalid API key sessions' are defined, or any error conditions. This leaves the agent with insufficient context to use the tool effectively.

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?

The input schema has 1 parameter with 100% description coverage, so the schema already documents 'project_name' as an optional filter. The description doesn't add any meaning beyond this—it doesn't explain how 'project_name' relates to the cleanup criteria or provide examples. With high schema coverage, the baseline is 3.

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?

The description clearly states the tool's purpose: 'Preview sessions that would be cleaned (empty and invalid API key sessions)'. It specifies the verb 'preview' and the resource 'sessions', with additional context about the cleanup criteria. However, it doesn't explicitly distinguish this from sibling tools like 'clear_sessions' or 'list_sessions', which would require a 5.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'clear_sessions' (which might perform the actual cleanup) or 'list_sessions' (which might list all sessions without filtering). There's no context about prerequisites, timing, or exclusions.

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

rename_sessionC

Rename a session by adding a title prefix to the first message

ParametersJSON Schema
NameRequiredDescriptionDefault
project_nameYesProject folder name
session_idYesSession ID (filename without .jsonl)
new_titleYesNew title to add as prefix

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden but only states the action without behavioral details. It doesn't disclose if this requires specific permissions, is reversible, affects other data, or has side effects (e.g., modifying the first message). This is inadequate for a mutation tool with zero annotation coverage.

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?

The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It's front-loaded and every part earns its place, making it highly concise and well-structured.

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

Completeness2/5

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

Given the tool is a mutation with no annotations and no output schema, the description is incomplete. It lacks details on behavioral traits, return values, or error conditions, which are crucial for an agent to use it correctly in this context.

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?

The schema description coverage is 100%, so parameters are fully documented in the schema. The description adds no additional meaning beyond implying 'new_title' is used as a prefix, which aligns with the schema. Baseline 3 is appropriate as the schema does the heavy lifting.

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?

The description clearly states the action ('Rename a session') and the mechanism ('by adding a title prefix to the first message'), which is specific and actionable. However, it doesn't explicitly differentiate from sibling tools like 'delete_session' or 'split_session', which would require mentioning it modifies rather than removes or divides content.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., existing sessions), exclusions, or compare to siblings like 'clear_sessions' or 'delete_session', leaving the agent without context for selection.

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

split_sessionB

Split a session at a specific message, creating a new session with messages from that point onwards

ParametersJSON Schema
NameRequiredDescriptionDefault
project_nameYesProject folder name
session_idYesSession ID to split
message_uuidYesUUID of the message where the split starts (this message becomes the first message of the new session)

TDQS

B3.2/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. It discloses the basic behavior of splitting and creating a new session, but lacks details on permissions, whether the original session is modified or retained, error conditions, or side effects. For a mutation tool with zero annotation coverage, this is a significant gap in transparency.

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?

The description is a single, efficient sentence that front-loads the core action ('Split a session') and elaborates concisely. Every word earns its place, with no redundant or vague language, making it easy to parse quickly.

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

Completeness2/5

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

Given the complexity of a mutation tool with no annotations and no output schema, the description is incomplete. It lacks information on what the tool returns, how errors are handled, or the impact on the original session. For a tool that modifies data, this leaves critical gaps for an AI agent to understand full behavior.

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 the schema already documents all three parameters. The description adds no additional meaning beyond what the schema provides, such as clarifying the split point or the relationship between parameters. Baseline 3 is appropriate when the schema handles parameter documentation adequately.

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?

The description clearly states the verb ('split') and resource ('a session'), specifies the action occurs 'at a specific message', and details the outcome ('creating a new session with messages from that point onwards'). It distinguishes from siblings like delete_session or rename_session by focusing on division rather than removal or renaming.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It does not mention prerequisites, such as whether the session must exist or be active, nor does it compare to siblings like clear_sessions or delete_session for managing sessions. Usage is implied but not explicitly stated.

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

start_guiB

Start the web GUI for session management and open it in browser

ParametersJSON Schema
NameRequiredDescriptionDefault
portNoPort to run the web server on (default: 5173)
open_browserNoWhether to open browser automatically (default: true)
restartNoRestart the server if already running (default: false)

TDQS

B3.3/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions starting a web GUI and opening a browser, but fails to describe critical behaviors such as what happens if the server is already running (beyond the 'restart' parameter), whether this requires specific permissions, or potential side effects like port conflicts. The description is minimal and lacks operational context.

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?

The description is a single, efficient sentence that front-loads the core action ('Start the web GUI') and immediately states the outcome ('open it in browser'). Every word earns its place with no redundancy or unnecessary elaboration, making it highly concise and well-structured.

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?

Given the tool's moderate complexity (starting a GUI server with configurable options) and the absence of annotations and output schema, the description is minimally adequate but incomplete. It covers the basic purpose but lacks details on behavioral traits, error conditions, or what the GUI enables, leaving gaps that could hinder effective agent use.

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 the schema fully documents all three parameters (port, open_browser, restart) with defaults and descriptions. The description adds no additional parameter semantics beyond what the schema provides, meeting the baseline score of 3 for high schema coverage without extra value.

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?

The description clearly states the specific action ('Start the web GUI for session management') and the outcome ('open it in browser'), using precise verbs that distinguish it from sibling tools like stop_gui or list_sessions. It explicitly identifies the resource (web GUI) and its purpose (session management), avoiding tautology with the tool name.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives like stop_gui or other session management tools. It lacks context about prerequisites (e.g., whether a server must be stopped first) or exclusions, leaving the agent to infer usage based solely on the tool name and purpose.

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

stop_guiB

Stop the web GUI server

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the action ('Stop') but does not reveal any behavioral traits such as whether this requires specific permissions, if it's reversible, what side effects occur (e.g., interrupting user sessions), or any rate limits. This leaves significant gaps in understanding the tool's behavior.

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?

The description is a single, direct sentence ('Stop the web GUI server') that is front-loaded and wastes no words. It efficiently conveys the core purpose without any extraneous details, making it highly concise and well-structured for its simplicity.

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?

Given the tool's complexity is low (0 parameters, no output schema, no annotations), the description is minimally adequate. However, it lacks context about the tool's effects, prerequisites, or relationship to siblings like 'start_gui', which could be important for safe usage. It meets basic needs but has clear gaps in completeness for a mutation tool.

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

Parameters4/5

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

The input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description does not add parameter information, which is appropriate here, and it doesn't contradict the schema. A baseline of 4 is applied since no parameters exist, and the description doesn't attempt to compensate unnecessarily.

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?

The description clearly states the action ('Stop') and the target resource ('the web GUI server'), which is specific and unambiguous. It doesn't explicitly differentiate from sibling tools like 'start_gui', but the verb 'Stop' inherently contrasts with 'start', making the purpose reasonably clear without direct sibling comparison.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives, such as under what conditions stopping the GUI is appropriate or what prerequisites might be needed. It lacks any mention of context, exclusions, or related tools like 'start_gui' for restarting, leaving usage entirely implicit.

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

TDQS

B3.4/5.0
Disambiguation4/5

Most tools have clearly distinct purposes targeting different session management operations, with good separation between listing, deletion, modification, and GUI control. However, clear_sessions and preview_cleanup have some conceptual overlap around session cleanup, though their descriptions clarify that one previews while the other executes.

Naming Consistency5/5

All tools follow a consistent verb_noun naming pattern with snake_case throughout. The verbs are appropriately descriptive (list, get, delete, rename, split, start, stop) and consistently applied to their respective nouns (sessions, projects, messages, GUI).

Tool Count5/5

12 tools is well-scoped for a session management system, covering core operations without bloat. Each tool serves a distinct purpose in the session lifecycle from creation/listing to modification/deletion, with GUI management as a logical extension.

Completeness4/5

The toolset provides comprehensive coverage of session management including CRUD operations (list, delete, rename), content manipulation (delete_message, split_session), and analysis (get_session_diff, get_session_files). The main gap is the lack of a tool to create new sessions, though agents could work around this by using the GUI or external methods.

Maintenance

ActivityInactive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/es6kr/claude-sessions-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server