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

send_keys

tool [source]

Send input to a pane’s program; a shell that receives it runs it with your user’s permissions. Send keystrokes to a pane. Use for TUIs, control keys (C-c), and partial lines. For a shell command whose result you want, use run_shell_command — it waits for completion and reports exit status, which this does not.

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

Arguments#

  • enter? (boolean) #

    Press Enter afterwards. Default true.

  • force? (boolean) #

    Allow writing to the pane this server itself was called from, which is otherwise refused. It does not override the refusal to write to a pane a person is watching — a pane an attached client has on screen is still refused with force.

  • keys (string) #

    Keys to send. tmux key names like C-c work unless literal is true.

  • literal? (boolean) #

    Send the text as-is, without resolving key names.

  • paneId (string) #

    Stable pane id, e.g. %1.

    pattern
    "^%\\d+$"

Result#

Returns object

No other properties are accepted.

Annotations#

destructiveHint
true
idempotentHint
false
openWorldHint
true
readOnlyHint
false

Protocol data#

Use the complete advertised contract for validation and client integration.

Input schema
{
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"enter": {
"description": "Press Enter afterwards. Default true.",
"type": "boolean"
},
"force": {
"description": "Allow writing to the pane this server itself was called from, which is otherwise refused. It does not override the refusal to write to a pane a person is watching — a pane an attached client has on screen is still refused with force.",
"type": "boolean"
},
"keys": {
"description": "Keys to send. tmux key names like C-c work unless literal is true.",
"type": "string"
},
"literal": {
"description": "Send the text as-is, without resolving key names.",
"type": "boolean"
},
"paneId": {
"description": "Stable pane id, e.g. %1.",
"pattern": "^%\\d+$",
"type": "string"
}
},
"required": [
"keys",
"paneId"
],
"type": "object"
}
Output schema
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"attended": {
"description": "A person is watching a configured cohort member.",
"type": "boolean"
},
"paneId": {
"description": "Stable pane id, e.g. %1.",
"pattern": "^%\\d+$",
"type": "string"
},
"resolvedPaneIds": {
"description": "Configured cohort at the immediate preflight, not a delivery receipt.",
"items": {
"description": "Stable pane id, e.g. %1.",
"pattern": "^%\\d+$",
"type": "string"
},
"type": "array"
},
"sent": {
"type": "boolean"
}
},
"required": [
"attended",
"paneId",
"resolvedPaneIds",
"sent"
],
"type": "object"
}
Esc

Type to search.

Reference previewOpen reference