herdr-mcp
Click on "Install 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., "@herdr-mcpList all panes and show what each agent is doing."
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.
herdr-mcp
An MCP server that gives a coding agent control of a running Herdr terminal session: list workspaces, tabs, panes and agents, read pane output, prompt other agents, send keys, run commands, wait for state or output, and split or close panes.
It is a thin stdio bridge. Every tool shells out to the herdr CLI, which
already speaks Herdr's socket API and answers with JSON envelopes. There is no
daemon, no port, no config file, and no auth.
Requirements
herdrinstalled and onPATH(or setHERDR_BINto its full path).A running Herdr session. The server talks to whatever session the
herdrCLI resolves from the environment (HERDR_SOCKET_PATH/HERDR_SESSION).Python 3.12+ and uv.
Related MCP server: HT MCP Server
Run
From a checkout:
uv run herdr-mcpStraight from GitHub, no checkout:
uvx --from git+https://github.com/aelaguiz/herdr-mcp herdr-mcpThe process serves MCP over stdio, so it prints nothing to stdout; logs go to
stderr (HERDR_MCP_LOG_LEVEL=DEBUG for argv tracing).
Client configuration
Claude Code:
claude mcp add herdr -- uvx --from git+https://github.com/aelaguiz/herdr-mcp herdr-mcpGeneric mcpServers JSON (Claude Desktop, Cursor, Codex, and friends):
{
"mcpServers": {
"herdr": {
"command": "uvx",
"args": ["--from", "git+https://github.com/aelaguiz/herdr-mcp", "herdr-mcp"],
"env": {}
}
}
}From a local checkout instead:
{
"mcpServers": {
"herdr": {
"command": "uv",
"args": ["run", "--directory", "/path/to/herdr-mcp", "herdr-mcp"]
}
}
}Tools
Pane ids look like w17:p1, tab ids like w17:t1, workspace ids like w17.
Agent tools accept a pane id or an agent name. Every tool returns the parsed
result object from the herdr JSON envelope; read_pane returns plain text.
Tool | What it does |
| List workspaces with ids, labels, and aggregate agent status. |
| List tabs across the session. |
| List panes with ids, workspace, tab, cwd, title, agent status. |
| List panes running a detected agent, with kind and status. |
| Show one agent's current state. |
| Read pane output as text ( |
| Submit a prompt to an agent, optionally waiting until it settles. |
| Wait until an agent reaches idle/working/blocked/done/unknown. |
| Send literal text to a pane without Enter. |
| Send key presses, e.g. |
| Run a command in a pane (text + Enter). |
| Wait for a literal substring or Rust regex in pane output. |
| Split a pane right or down and return the new pane id. |
| Close a pane and whatever is running in it. |
Failures from the CLI (unknown pane, timeout, dead socket) come back as MCP tool errors carrying herdr's own error code and message, so the model can correct itself.
Security
No auth, no sandbox, local stdio only. Any client that can start this server can run arbitrary commands in your terminal panes and read everything on screen, including whatever an agent pane is displaying. Only wire it up to clients you trust on your own machine.
Environment
Variable | Default | Meaning |
|
| Path to the herdr binary. |
|
| Python log level (stderr). |
Everything else in the environment is passed through untouched, which is how the CLI finds the right session socket.
Development
uv sync
uv run pytest -qUnit tests drive the server through the SDK's in-memory client against a stub
herdr script, so they never touch a live session.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables AI assistants to manage local tmux sessions, including creating and controlling sessions, windows, and panes, sending commands, and capturing terminal output.168Do What The F*ck You Want To Public
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to programmatically control interactive terminal applications through HT sessions, supporting session management, key sending, snapshots, and command execution.1MIT
- FlicenseNot gradedqualityDmaintenanceEnables AI agents to spawn, interact with, and orchestrate multiple concurrent terminal sessions via tmux.
- FlicenseNot gradedqualityCmaintenanceEnables AI assistants to orchestrate Herdr coding agents by wrapping its Unix-socket JSON-RPC API, providing tools for agent management, layout editing, and terminal interaction.
Related MCP Connectors
Operate Linux, macOS and Windows from your LLM. Every action runs through an auditable allowlist.
The team layer for AI coding agents: shared contracts, collision alerts, E2EE sessions.
See, price, and control every tool call your AI agents make: policy checks, cost, and audit tools.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/aelaguiz/herdr-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server