claude-tmux-bridge
Manages persistent tmux sessions for Claude Code, allowing real-time observation and automatic session creation per project.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@claude-tmux-bridge Refactor the utility functions in /Users/me/my-project"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Claude Code MCP — tmux Bridge
An MCP server that connects Claude Desktop to an interactive Claude Code session running in a tmux terminal. Instead of spawning a one-shot process per prompt, it communicates with a persistent, visible session — so you can watch Claude work in real time while Desktop orchestrates the tasks.
How It Works
Claude Desktop → claude_code MCP tool → tmux session → Claude Code (interactive)
(this repo)Claude Desktop holds your project context, design decisions, and task history. It generates prompts and knows what needs to be done next.
Claude Code runs interactively in a tmux terminal you can watch. It has access to all your configured MCP tools and retains full conversation history between calls.
This server is the pipe between them — it delivers Desktop's prompts to Code's session and brings the response back.
Related MCP server: codex-cli-mcp-tool
Requirements
macOS
Node.js v20 or later
tmux —
brew install tmuxClaude Code CLI —
npm install -g @anthropic-ai/claude-code
Setup
1. Install this server
git clone https://github.com/DaRealDaHoodie/claude-tmux-bridge.git
cd claude-tmux-bridge
npm install
npm run build2. Configure Claude Desktop
Add this server to your Claude Desktop MCP config (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"claude-tmux-bridge": {
"command": "node",
"args": ["/path/to/claude-tmux-bridge/dist/server.js"]
}
}
}Restart Claude Desktop after saving.
Using the Tool
Once configured, Claude Desktop has access to the claude_code tool. When sending a prompt tell Desktop:
What to do — the task or question for Claude Code
Which project — pass
workFolderas the absolute path to your project directory
Example instruction to Desktop:
Use the claude_code tool with workFolder
/Users/you/my-projectand ask Claude Code to implement the feature we just designed.
Everything else is automatic — the tmux session and Claude Code instance are created on first use.
Session Naming
The tmux session name is derived from your project folder's basename:
workFolder | Session name |
|
|
|
|
(not provided) |
|
Watching Claude Work
Sessions run in the background automatically. Attach any time to watch:
tmux attach -t claude-my-project
# Detach with Ctrl+B DTool Parameters
Parameter | Type | Required | Description |
| string | yes | The prompt to send to Claude Code |
| string | no | Absolute path to project — determines the session |
| number | no | Max seconds to wait for a response (default: 300) |
Behaviour
Session not found — auto-creates the tmux session rooted at
workFolderClaude Code not running — auto-launches
claudein the session and waits up to 30s for it to be readySession busy — rejects with a "still busy" message; does not queue
Timeout — auto-recovers on next call by checking if Claude has since finished
Conversation history — fully preserved between calls (same interactive session)
Environment Variables
Variable | Default | Description |
|
| Set to |
|
| Wait after sending prompt before polling starts |
|
| How often to poll the pane for output changes |
|
| Fallback: ms of no change before declaring done |
|
| Max ms to wait for Claude Code to start up |
Multiple Projects
Each project gets its own named tmux session. You can have multiple sessions open simultaneously — just pass the correct workFolder and Desktop will target the right one.
License
MIT
Available Tools
1 toolclaude_codeA
Send a prompt to an interactive Claude Code session running in a tmux terminal.
Sessions and Claude Code are started automatically if not already running. The user can attach to the session at any time to watch Claude work: tmux attach -t {session-name}
SESSION NAMING: workFolder /Users/you/my-roblox-game → session: claude-my-roblox-game No workFolder → session: claude-code
BEHAVIOUR: • If the tmux session doesn't exist it is created automatically. • If Claude Code isn't running in the session it is started automatically. • Only one prompt at a time per session — concurrent calls return a busy error. • Conversation history is fully preserved between calls. • Claude Code has access to all configured MCP tools (Roblox Studio, Godot, Blender, etc.).
Inputs: prompt (required), compact, timeout, workFolder, +1 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 1 tool
Only one tool exists, so there is no possibility of confusion between tools. The single tool's purpose is crystal clear.
With only one tool, naming consistency is trivially maintained. The name 'claude_code' accurately reflects its function.
One tool feels thin for a bridge server, but it does encapsulate the core operation. A more complete set might include session management tools.
The tool covers the primary use case of sending prompts and implicitly handles session startup. Minor gaps like explicit session listing or termination exist.
Related MCP Connectors
Shared memory MCP server for Claude Code, Codex, Gemini CLI and Cursor. Cited, editable.
Connect ChatGPT and Claude to your Mac, Windows or Linux with secure MCP remote access.
Augments MCP Server - A comprehensive framework documentation provider for Claude Code
Related MCP Servers
- AlicenseAqualityDmaintenanceAn MCP server that bridges Claude Desktop and Claude Code by letting Desktop read and interact with Claude Code Remote Control sessions, enabling cross-agent coordination.64MIT
- AlicenseNot gradedqualityDmaintenanceAn MCP server that allows Claude Code to interact with the OpenAI Codex CLI.40 npm20MIT
- AlicenseAqualityCmaintenanceAn MCP server that gives orchestrator agents fine-grained control over interactive Claude Code sessions running inside tmux, enabling mid-session steering, interruption, and token-efficient result extraction.15MIT
- AlicenseNot gradedqualityDmaintenanceAn MCP server that allows Claude Desktop to remotely control Claude Code instances for executing commands and managing files.48 npmGPL 3.0