show_hook
-
Look up a specific tmux hook by name.
Returns a
HookListResultwith zero or moreHookEntryrows — zero if the hook is unset, one if it is a scalar hook, and multiple if it is an array hook with sparse indices.- MCP request method
tools/callSendshow_hookas the tool name, with the arguments below.
Arguments#
-
Hook to look up (e.g.
"pane-exited"). -
scope? =null("server" | "session" | "window" | "pane" | null) # -
socket_name? =null(string | null) #
No other arguments are accepted.
Result#
Returns object
-
-
One entry in a tmux hook array.
Hooks like
session-renamedare arrays — they can have multiple commands registered at sparse indices.HookEntryflattens one index+command pair into a serialisable row.
-
Annotations#
destructiveHinttrueidempotentHintfalseopenWorldHinttruereadOnlyHintfalse
Protocol data#
Use the complete advertised contract for validation and client integration.
Input schema
{"additionalProperties": false,"properties": {"global_": {"default": false,"description": ":func:`~libtmux_mcp.tools.hook_tools.show_hooks`.","type": "boolean"},"hook_name": {"description": "Hook to look up (e.g. ``\"pane-exited\"``).","type": "string"},"scope": {"anyOf": [{"enum": ["server","session","window","pane"],"type": "string"},{"type": "null"}],"default": null,"description": ":func:`~libtmux_mcp.tools.hook_tools.show_hooks`."},"socket_name": {"anyOf": [{"type": "string"},{"type": "null"}],"default": null,"description": ":func:`~libtmux_mcp.tools.hook_tools.show_hooks`."},"target": {"anyOf": [{"type": "string"},{"type": "null"}],"default": null,"description": ":func:`~libtmux_mcp.tools.hook_tools.show_hooks`."}},"required": ["hook_name"],"type": "object"}Output schema
{"description": "Structured result for hook introspection.\n\nReturned by :func:`~libtmux_mcp.tools.hook_tools.show_hooks` and\n:func:`~libtmux_mcp.tools.hook_tools.show_hook`.\nFlat list of :class:`~libtmux_mcp.models.HookEntry` instances so\nMCP clients can iterate without caring whether the underlying tmux\nhook is scalar or array-shaped.","properties": {"entries": {"items": {"description": "One entry in a tmux hook array.\n\nHooks like ``session-renamed`` are arrays — they can have multiple\ncommands registered at sparse indices.\n:class:`~libtmux_mcp.models.HookEntry` flattens one index+command\npair into a serialisable row.","properties": {"command": {"description": "tmux command string registered at that index.","type": "string"},"hook_name": {"description": "Hook name (e.g. 'pane-exited').","type": "string"},"index": {"anyOf": [{"type": "integer"},{"type": "null"}],"default": null,"description": "Array index for array-style hooks (e.g. session-renamed[3]). ``None`` for scalar hooks."}},"required": ["hook_name","command"],"type": "object"},"type": "array"}},"type": "object"}