worker-mcp
The worker-mcp server enables a coordinator AI agent to spawn, control, and supervise local worker coding agents, with interactive consent for high-risk operations and detailed logging.
Session Management: Spawn a worker agent in a specified workspace directory, optionally with a custom model, system prompt, and risk policy. List, terminate, and restart sessions; configurations persist across server restarts.
Command Dispatch: Send prompts or slash commands to a session, with support for background async execution, timeouts, and response summarization. Cancel in-progress commands with forced termination if the agent does not settle.
Gating & Approval: Retrieve pending high-risk tool calls that require coordinator approval. Approve or reject them, optionally providing feedback to guide the worker.
Risk Policy: Dynamically set auto-approval thresholds (e.g., LOW, MEDIUM, HIGH, CRITICAL) and define custom glob-pattern overrides for command or file path patterns. Audit auto-approved actions with optional filtering.
Resources: Access session conversation history and stdout/stderr subprocess logs via MCP resources.
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., "@worker-mcpspawn a worker to fix the bug in auth.ts"
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.
worker-mcp
worker-mcp is a Model Context Protocol (MCP) server that empowers a highly intelligent coordinator agent (like Claude 3.5 Sonnet or Gemini Pro) to spawn, control, and interactively guide lower-intelligence, locally hosted worker agents.
Instead of rolling a custom local LLM tool loop, worker-mcp delegates coding, bash, and filesystem operations to the pi coding agent (@earendil-works/pi-coding-agent) by running it in JSON-RPC mode. Since these small local models require significant supervision, worker-mcp acts as a gating and auditing harness.
Features
Interactive Gating (Consent Hook): Automatically intercepts and blocks high-risk operations (e.g. executing shell commands or writing files) and prompts the coordinator for approval before execution.
MCP Tool Integration: Standardized tools to spawn worker sessions, dispatch prompts, list active runners, and approve/deny pending commands.
Log and History Resources: Message history and subprocess logs (including
stderrfeeds) are exposed as standard MCP resources.Session Registry Persistence: Session configurations and directory bindings survive server restarts via state files in
~/.config/worker-mcp/sessions.json.Automatic Extension Deployment: Deploys its supervisor gate extension directly into
~/.config/worker-mcp/and loads it explicitly when spawning the worker agent (leaving standalonepiagent runs unaffected).
Related MCP server: projscan
Installation & Usage
worker-mcp is published on npm as @noosxe/worker-mcp. This is the recommended installation path for most users.
1. Install via npm (Recommended)
Option A: Global Installation
Install the package globally on your system:
npm install -g @noosxe/worker-mcp
# or using pnpm
pnpm add -g @noosxe/worker-mcpOnce installed globally, you can run the server using the worker-mcp command.
Option B: Run ad-hoc via npx
Alternatively, you can run the server on stdio immediately without installing it:
npx @noosxe/worker-mcp2. Install via Nix
This project also provides a Nix flake to ensure consistent environments and easy installation.
Option A: Run Directly (Ad-hoc)
You can run the server on stdio immediately using Nix:
nix run github:noosxe/worker-mcpOption B: Install to User Profile
Install the worker-mcp executable globally in your user profile:
nix profile install github:noosxe/worker-mcpOnce installed, run it with:
worker-mcp3. Declarative Installation via Flake Overlay (System / Home Manager)
If you manage your operating system or user profile declaratively via NixOS or Home Manager, you can consume our default overlay.
Step 3.1: Add the Flake Input
Add worker-mcp to your system's flake.nix input section:
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
# Add worker-mcp input
worker-mcp.url = "github:noosxe/worker-mcp";
};Step 3.2: Configure the Overlay and Install
Option A: NixOS Configuration
Add the overlay to nixpkgs and include worker-mcp in your system packages:
outputs = { self, nixpkgs, worker-mcp, ... }@inputs: {
nixosConfigurations.my-system = nixpkgs.lib.nixosSystem {
system = "x86_64-linux"; # Or your system architecture
modules = [
({ pkgs, ... }: {
# Apply the overlay
nixpkgs.overlays = [
worker-mcp.overlays.default
];
# Install the package
environment.systemPackages = [
pkgs.worker-mcp
];
})
./configuration.nix
];
};
};Option B: Home Manager Configuration
Add the overlay to nixpkgs and install it in your user packages:
outputs = { self, nixpkgs, worker-mcp, ... }@inputs: {
homeConfigurations.my-user = inputs.home-manager.lib.homeManagerConfiguration {
pkgs = import nixpkgs {
system = "x86_64-linux";
overlays = [ worker-mcp.overlays.default ];
};
modules = [
({ pkgs, ... }: {
# Install the package
home.packages = [
pkgs.worker-mcp
];
})
./home.nix
];
};
};Harness Integration (Antigravity CLI / agy)
To register the worker-mcp server with your Antigravity TUI/CLI (agy), follow these steps:
Step 1: Register the Server via mcp_config.json (Declarative)
Antigravity CLI resolves MCP servers from dedicated configuration files (rather than the old settings.json). Add the configuration in one of the following locations:
Global Configuration:
~/.gemini/config/mcp_config.jsonProject-local Configuration:
.agents/mcp_config.json(at the root of your project workspace)
Configuration file schemas:
Option A: If installed globally (via npm or Nix)
{
"mcpServers": {
"worker-mcp": {
"command": "worker-mcp",
"args": []
}
}
}Option B: If running ad-hoc via npx
{
"mcpServers": {
"worker-mcp": {
"command": "npx",
"args": [
"-y",
"@noosxe/worker-mcp"
]
}
}
}Option C: If running ad-hoc via GitHub Flake
{
"mcpServers": {
"worker-mcp": {
"command": "nix",
"args": [
"run",
"github:noosxe/worker-mcp?ref=main"
]
}
}
}Option D: Declarative Home Manager Configuration
If you manage your user configuration via Home Manager, you can declare the global mcp_config.json file in your home.nix using home.file combined with builtins.toJSON:
home.file.".gemini/config/mcp_config.json".text = builtins.toJSON {
mcpServers = {
worker-mcp = {
# If installed via overlay in system/home packages or globally via npm:
command = "worker-mcp";
args = [];
# Alternatively, if running ad-hoc via npx:
# command = "npx";
# args = [ "-y" "@noosxe/worker-mcp" ];
# Alternatively, if running ad-hoc via Nix:
# command = "nix";
# args = [ "run" "github:noosxe/worker-mcp?ref=main" ];
};
};
};Step 2: Verify and Manage via TUI (/mcp command)
Once you have added the server configuration to mcp_config.json, you can manage it interactively inside the CLI:
Launch the Antigravity TUI:
agyType the slash command
/mcpin the prompt input and pressEnter.An interactive management overlay will open, showing
worker-mcpin the list. You can inspect its status, trigger manual reloads, or verify that the tools/resources are successfully discovered by the coordinator agent.
Operational Configuration
Environment Variables
WORKER_MCP_PI_PATH: Absolute path to thepicoding-agent binary (defaults to searchingPATHforpi).
Pre-requisites
Make sure you have the global pi coding-agent CLI installed in your local system:
npm install -g @earendil-works/pi-coding-agentConfigure your models in pi (e.g. using pi --mode rpc to set default models, or registering Ollama model definitions).
MCP Reference
Exposed Tools
spawn_pi_session: Spawns a new supervisor-gated worker agent in the specified workspace directory.send_pi_command: Dispatches prompts to the worker session. Supports background MCP task execution (resolving asynchronously) or blocking mode with an optional timeout.cancel_pi_command: Aborts the currently running command in a session and cancels its background task.list_pi_sessions: Returns a list of active sessions, directory targets, and current states.get_pending_actions: Fetches the details of an intercepted command awaiting consent.approve_action: Approves execution of a gated tool call.reject_action: Blocks a gated tool call and forwards feedback to correct the agent's course.set_risk_policy: Updates the risk-based auto-approval policy for a session at runtime.get_auto_approved_log: Retrieves the audit log of actions that were auto-approved by the risk policy.
Exposed Resources
worker-mcp://sessions/{sessionId}/history: Returns the conversation log and internal message stream.worker-mcp://sessions/{sessionId}/logs: Returns the stdout/stderr trace logs of the subprocess.
Local Development
If you are contributing to this codebase, you must enter the Nix development shell:
nix developThis enters an environment pre-packaged with:
Node.js 24
pnpm
TypeScript
BiomeJS
Dev Tasks
Code Quality (Check, Lint, Format):
biome check --write src/Compile TypeScript:
pnpm run buildRun local server:
pnpm run devBuild Nix Derivation:
nix build
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
AlicenseAqualityAmaintenanceMCP server that gives AI coding agents direct access to evaluation tools.22Apache 2.0- Alicense-qualityAmaintenanceAn MCP server that provides AI coding agents with AST-accurate, context-budget-aware codebase querying, safety gates, and team policy integration via structured tools and a local plugin layer.7304MIT
- Alicense-qualityDmaintenanceMCP server that enables AI coding agents to communicate, share state, and coordinate work in real time via MCP tools or REST API.895MIT
- FlicenseBqualityCmaintenanceMCP server that gives AI coding assistants persistent memory, structural code graph analysis, and safe multi-agent coordination, enabling them to answer architectural questions, track decisions across sessions, and coordinate safely in multi-agent workflows.394
Related MCP Connectors
MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.
A paid remote MCP for OpenAI Codex agent coordination MCP, built to return verdicts, receipts, usage
Control plane for autonomous software labor. Agents claim objectives over MCP with audit trail.
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/noosxe/worker-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server