Skip to main content
Glama
DrumRobot

claude-session-manager

by DrumRobot

delete_session

Remove a specific session from the Claude Code Session Manager by moving it to a backup folder for potential recovery.

Instructions

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

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
project_nameYesProject folder name
session_idYesSession ID to delete

Implementation Reference

  • Core handler function that implements the delete_session tool logic: locates the session JSONL file and either deletes it if empty or moves it to a .bak backup directory.
    def delete_session(project_name: str, session_id: str) -> bool:
        """Delete a session (move to .bak folder, or delete if empty)."""
        base_path = get_base_path()
        project_path = base_path / project_name
        jsonl_file = project_path / f"{session_id}.jsonl"
    
        if not jsonl_file.exists():
            return False
    
        # If file is empty (0 bytes), just delete it without backing up
        if jsonl_file.stat().st_size == 0:
            jsonl_file.unlink()
            return True
    
        backup_dir = base_path / ".bak"
        backup_dir.mkdir(exist_ok=True)
        backup_file = backup_dir / f"{project_name}_{session_id}.jsonl"
        jsonl_file.rename(backup_file)
        return True
  • MCP tool registration for delete_session, including name, description, and input schema definition.
    Tool(
        name="delete_session",
        description="Delete a session (moves to .bak folder for recovery)",
        inputSchema={
            "type": "object",
            "properties": {
                "project_name": {
                    "type": "string",
                    "description": "Project folder name"
                },
                "session_id": {
                    "type": "string",
                    "description": "Session ID to delete"
                }
            },
            "required": ["project_name", "session_id"]
        }
    ),
  • Dispatch handler within the main @mcp.call_tool() function that handles the delete_session tool call by extracting parameters and invoking the core delete_session function.
    elif name == "delete_session":
        project_name = arguments.get("project_name", "")
        session_id = arguments.get("session_id", "")
        success = delete_session(project_name, session_id)
        result = {"success": success, "message": "Session deleted (backed up to .bak)" if success else "Failed to delete session"}
  • Input schema definition for the delete_session tool, specifying required project_name and session_id parameters.
    inputSchema={
        "type": "object",
        "properties": {
            "project_name": {
                "type": "string",
                "description": "Project folder name"
            },
            "session_id": {
                "type": "string",
                "description": "Session ID to delete"
            }
        },
        "required": ["project_name", "session_id"]
    }

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/DrumRobot/claude-session-manager'

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