# rename_session

Source: https://libtmux.org/en/py/stable/mcp/tools/rename_session/

> Rename a tmux session.

tool MCPstable

MCP is in development

Server behavior and tool contracts may change. Tool availability depends on the server configuration.

* **rename_session**( [new_name](https://libtmux.org/en/py/stable/mcp/tools/rename_session/#mcp.tool.rename_session.input%2Fproperties%2Fnew_name): [string](https://json-schema.org/understanding-json-schema/reference/string "string (JSON Schema)"), [session_id](https://libtmux.org/en/py/stable/mcp/tools/rename_session/#mcp.tool.rename_session.input%2Fproperties%2Fsession_id)?: [string](https://json-schema.org/understanding-json-schema/reference/string "string (JSON Schema)") | [null](https://json-schema.org/understanding-json-schema/reference/null "null (JSON Schema)"), [session_name](https://libtmux.org/en/py/stable/mcp/tools/rename_session/#mcp.tool.rename_session.input%2Fproperties%2Fsession_name)?: [string](https://json-schema.org/understanding-json-schema/reference/string "string (JSON Schema)") | [null](https://json-schema.org/understanding-json-schema/reference/null "null (JSON Schema)"), [socket_name](https://libtmux.org/en/py/stable/mcp/tools/rename_session/#mcp.tool.rename_session.input%2Fproperties%2Fsocket_name)?: [string](https://json-schema.org/understanding-json-schema/reference/string "string (JSON Schema)") | [null](https://json-schema.org/understanding-json-schema/reference/null "null (JSON Schema)"), )

  tool \[[source](https://github.com/tmux-python/libtmux-mcp/blob/4daddc0dfca96c43bf521d818bf91564e1434760/src/libtmux_mcp/tools/session_tools.py#L369)][¶](https://libtmux.org/en/py/stable/mcp/tools/rename_session/#mcp.tool.rename_session)

  Rename a tmux session.

  Use when a session’s purpose has changed. Existing pane_id references remain valid after renaming.

  * MCP request method

    `tools/call` Send `rename_session` as the tool name, with the arguments below.

  ## Arguments[#](https://libtmux.org/en/py/stable/mcp/tools/rename_session/#mcp.tool.rename_session.parameters)

  * **[`new_name`](https://libtmux.org/en/py/stable/mcp/tools/rename_session/#mcp.tool.rename_session.input%2Fproperties%2Fnew_name)** ([string](https://json-schema.org/understanding-json-schema/reference/string "string (JSON Schema)"))

    New name for the session.

  * **[`session_id`](https://libtmux.org/en/py/stable/mcp/tools/rename_session/#mcp.tool.rename_session.input%2Fproperties%2Fsession_id)**? = `null` ([string](https://json-schema.org/understanding-json-schema/reference/string "string (JSON Schema)") | [null](https://json-schema.org/understanding-json-schema/reference/null "null (JSON Schema)"))

    Session ID (e.g. ‘$1’) to look up.

  * **[`session_name`](https://libtmux.org/en/py/stable/mcp/tools/rename_session/#mcp.tool.rename_session.input%2Fproperties%2Fsession_name)**? = `null` ([string](https://json-schema.org/understanding-json-schema/reference/string "string (JSON Schema)") | [null](https://json-schema.org/understanding-json-schema/reference/null "null (JSON Schema)"))

    Current session name to look up.

  * **[`socket_name`](https://libtmux.org/en/py/stable/mcp/tools/rename_session/#mcp.tool.rename_session.input%2Fproperties%2Fsocket_name)**? = `null` ([string](https://json-schema.org/understanding-json-schema/reference/string "string (JSON Schema)") | [null](https://json-schema.org/understanding-json-schema/reference/null "null (JSON Schema)"))

    tmux socket name. Defaults to LIBTMUX_SOCKET env var.

  No other arguments are accepted.

  ## Result[#](https://libtmux.org/en/py/stable/mcp/tools/rename_session/#mcp.tool.rename_session.result)

  Returns [object](https://json-schema.org/understanding-json-schema/reference/object "object (JSON Schema)")

  * **[`active_pane_id`](https://libtmux.org/en/py/stable/mcp/tools/rename_session/#mcp.tool.rename_session.output%2Fproperties%2Factive_pane_id)**? = `null` ([string](https://json-schema.org/understanding-json-schema/reference/string "string (JSON Schema)") | [null](https://json-schema.org/understanding-json-schema/reference/null "null (JSON Schema)"))

    Pane id (`%N`) of the session’s active pane. Guaranteed non-None on [`create_session`](https://libtmux.org/en/py/stable/mcp/tools/create_session/) return (libtmux creates the session with one initial pane). May be None from [`list_sessions`](https://libtmux.org/en/py/stable/mcp/tools/list_sessions/) rows for sessions in transient teardown states where `active_pane` is unavailable.

  * **[`session_attached`](https://libtmux.org/en/py/stable/mcp/tools/rename_session/#mcp.tool.rename_session.output%2Fproperties%2Fsession_attached)**? = `null` ([string](https://json-schema.org/understanding-json-schema/reference/string "string (JSON Schema)") | [null](https://json-schema.org/understanding-json-schema/reference/null "null (JSON Schema)"))

    Attached client count

  * **[`session_created`](https://libtmux.org/en/py/stable/mcp/tools/rename_session/#mcp.tool.rename_session.output%2Fproperties%2Fsession_created)**? = `null` ([string](https://json-schema.org/understanding-json-schema/reference/string "string (JSON Schema)") | [null](https://json-schema.org/understanding-json-schema/reference/null "null (JSON Schema)"))

    Creation timestamp

  * **[`session_id`](https://libtmux.org/en/py/stable/mcp/tools/rename_session/#mcp.tool.rename_session.output%2Fproperties%2Fsession_id)** ([string](https://json-schema.org/understanding-json-schema/reference/string "string (JSON Schema)"))

    Session ID (e.g. ‘$1’)

  * **[`session_name`](https://libtmux.org/en/py/stable/mcp/tools/rename_session/#mcp.tool.rename_session.output%2Fproperties%2Fsession_name)**? = `null` ([string](https://json-schema.org/understanding-json-schema/reference/string "string (JSON Schema)") | [null](https://json-schema.org/understanding-json-schema/reference/null "null (JSON Schema)"))

    Session name

  * **[`window_count`](https://libtmux.org/en/py/stable/mcp/tools/rename_session/#mcp.tool.rename_session.output%2Fproperties%2Fwindow_count)** ([integer](https://json-schema.org/understanding-json-schema/reference/numeric "numeric (JSON Schema)"))

    Number of windows

  ## Annotations[#](https://libtmux.org/en/py/stable/mcp/tools/rename_session/#mcp.tool.rename_session.annotations)

  * [`destructiveHint`](https://libtmux.org/en/py/stable/mcp/reference/glossary/#destructiveHint)

    `true`

  * [`idempotentHint`](https://libtmux.org/en/py/stable/mcp/reference/glossary/#idempotentHint)

    `false`

  * [`openWorldHint`](https://libtmux.org/en/py/stable/mcp/reference/glossary/#openWorldHint)

    `true`

  * [`readOnlyHint`](https://libtmux.org/en/py/stable/mcp/reference/glossary/#readOnlyHint)

    `false`

  ## Protocol data[#](https://libtmux.org/en/py/stable/mcp/tools/rename_session/#mcp.tool.rename_session.schemas)

  Use the complete advertised contract for validation and client integration.

  Input schema

  ```json
  {
    "additionalProperties": false,
    "properties": {
      "new_name": {
        "description": "New name for the session.",
        "type": "string"
      },
      "session_id": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ],
        "default": null,
        "description": "Session ID (e.g. '$1') to look up."
      },
      "session_name": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ],
        "default": null,
        "description": "Current session name to look up."
      },
      "socket_name": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ],
        "default": null,
        "description": "tmux socket name. Defaults to LIBTMUX_SOCKET env var."
      }
    },
    "required": [
      "new_name"
    ],
    "type": "object"
  }
  ```

  Output schema

  ```json
  {
    "description": "Serialized tmux session.",
    "properties": {
      "active_pane_id": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ],
        "default": null,
        "description": "Pane id (``%N``) of the session's active pane. Guaranteed non-None on ``create_session`` return (libtmux creates the session with one initial pane). May be None from ``list_sessions`` rows for sessions in transient teardown states where ``active_pane`` is unavailable."
      },
      "session_attached": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ],
        "default": null,
        "description": "Attached client count"
      },
      "session_created": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ],
        "default": null,
        "description": "Creation timestamp"
      },
      "session_id": {
        "description": "Session ID (e.g. '$1')",
        "type": "string"
      },
      "session_name": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ],
        "default": null,
        "description": "Session name"
      },
      "window_count": {
        "description": "Number of windows",
        "type": "integer"
      }
    },
    "required": [
      "session_id",
      "window_count"
    ],
    "type": "object"
  }
  ```
