# LibTmuxMCP.main

- **Module:** LibTmuxMCP
- **Package:** LibTmuxMCP
- **Language:** Julia
- **Kind:** function
- **Source:** https://github.com/libtmux/libtmux-julia/blob/f3da513be1225d36d5854cd8db5972c01857578e/packages/LibTmuxMCP/src/cli.jl#L154
- **Page:** https://libtmux.org/en/julia/latest/mcp/reference/libtmuxmcp-main/

```
main(arguments; input, output, err)

main(; ...)
```

## Methods

### `main(arguments; input, output, err)`

[Source](https://github.com/libtmux/libtmux-julia/blob/f3da513be1225d36d5854cd8db5972c01857578e/packages/LibTmuxMCP/src/cli.jl#L163).

Run `libtmux-mcp` with an explicit socket selector. Startup captures exact caller/allowed pane references. `--help` and invalid options perform no tmux I/O. Returns 0 after clean EOF, 2 for option errors, 130 for interruption and 1 for startup, protocol or cleanup failure. Only `--help` writes human text to stdout; serving reserves it for MCP messages.

```julia
main(arguments=ARGS; input=stdin, output=stdout, err=stderr) -> Int
```

### `main(; ...)`

[Source](https://github.com/libtmux/libtmux-julia/blob/f3da513be1225d36d5854cd8db5972c01857578e/packages/LibTmuxMCP/src/cli.jl#L163).

Run `libtmux-mcp` with an explicit socket selector. Startup captures exact caller/allowed pane references. `--help` and invalid options perform no tmux I/O. Returns 0 after clean EOF, 2 for option errors, 130 for interruption and 1 for startup, protocol or cleanup failure. Only `--help` writes human text to stdout; serving reserves it for MCP messages.

```julia
main(arguments=ARGS; input=stdin, output=stdout, err=stderr) -> Int
```

## Parameters

- `arguments` (`Any`) (for `main(arguments, input, output, err)`)
  Default: `ARGS`.
- `input` (`IO`) (for `main(arguments, input, output, err)`)
  Default: `stdin`.
- `output` (`IO`) (for `main(arguments, input, output, err)`)
  Default: `stdout`.
- `err` (`IO`) (for `main(arguments, input, output, err)`)
  Default: `stderr`.
- `argument1` (for `main(argument1)`)
