MCPconceptTools

Choose documentation 3

latest

Current version

latest
English

Early release libtmux is released, and its APIs may still change between releases. This site's structure and URLs may change too.

tool MCPlatest

capture_since

capture_since( cursor?: string | null, pane: string, )
tool [source]

Read what a pane wrote since the previous call. The first call, with no cursor, starts watching and returns a cursor; later calls pass it back and receive only what is new, as the raw output stream, not the rendered screen: a line redrawn in place repeats; capture_pane shows the screen. Use this to follow a pane over several turns without re-reading the whole screen. The answer says missed=true if the cursor no longer names retained output, including when the pane outran the buffer, its live tail was evicted, or the server restarted. Starting a tail owns a retained observer until the tail is evicted or the server stops. Read pane output; accepts no client-supplied executable input. Returned content may be sensitive or untrusted.

MCP request method
tools/call Send capture_since as the tool name, with the arguments below.

Arguments#

No other arguments are accepted.

Result#

Returns object

  • closed (boolean) #

    Whether the pane has stopped writing for good.

  • cursor (string) #

    The cursor to pass back next time.

  • first (boolean) #

    Whether this is the first answer, which reports the visible screen rather than what is new.

  • missed (boolean) #

    Whether output between the previous cursor and this text was lost.

  • pane (string) #

    The pane that was read.

  • text (string) #

    The text, with escape sequences removed.

    After the first answer this is the raw output stream, not the rendered screen: a line redrawn in place repeats. capture_pane shows the screen.

Annotations#

destructiveHint
false
idempotentHint
true
openWorldHint
true
readOnlyHint
true
title
"Read New Pane Output"

Protocol data#

Use the complete advertised contract for validation and client integration.

Input schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"cursor": {
"description": "The cursor from the previous call. Omit to start watching.",
"type": [
"string",
"null"
]
},
"pane": {
"description": "The `%`-prefixed pane to read.",
"type": "string"
}
},
"required": [
"pane"
],
"type": "object"
}
Output schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"closed": {
"description": "Whether the pane has stopped writing for good.",
"type": "boolean"
},
"cursor": {
"description": "The cursor to pass back next time.",
"type": "string"
},
"first": {
"description": "Whether this is the first answer, which reports the visible screen\nrather than what is new.",
"type": "boolean"
},
"missed": {
"description": "Whether output between the previous cursor and this text was lost.",
"type": "boolean"
},
"pane": {
"description": "The pane that was read.",
"type": "string"
},
"text": {
"description": "The text, with escape sequences removed.\n\nAfter the first answer this is the raw output stream, not the rendered\nscreen: a line redrawn in place repeats. `capture_pane` shows the\nscreen.",
"type": "string"
}
},
"required": [
"pane",
"text",
"cursor",
"missed",
"closed",
"first"
],
"type": "object"
}
Esc

Type to search.

Reference previewOpen reference