claude-operator
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., "@claude-operatorassign a task to fix the login bug in project alpha"
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-operator
TypeScript MCP server that turns any Claude Code session into an autonomous operator — decomposes goals, spawns and coordinates worker sessions across multiple projects, manages persistent two-tier memory, enforces guardrails, and learns from retrospective human review.
Install
npm install -g claude-operator
claude-operator init
claude-operator startinit scaffolds ~/.claude-operator/ (SQLite DB, bus dir, config).start launches the MCP server on stdio + dashboard at http://localhost:7373.
Wire into Claude Code
Add to your ~/.claude/settings.json:
{
"mcpServers": {
"claude-operator": {
"command": "claude-operator",
"args": ["start", "--mcp"]
}
}
}Or point at the local dev build:
{
"mcpServers": {
"claude-operator": {
"command": "node",
"args": ["/path/to/claude-operator/packages/server/dist/server.js"]
}
}
}Architecture
Operator session (Claude Code)
│ MCP tools (10)
▼
┌─────────────────────────────────┐
│ claude-operator MCP server │
│ ┌──────────┐ ┌─────────────┐ │
│ │ SQLite │ │ File bus │ │
│ │ WAL+FTS5│ │ heartbeat │ │
│ └──────────┘ └─────────────┘ │
│ ┌──────────────────────────┐ │
│ │ Monitor loop (30s poll) │ │
│ └──────────────────────────┘ │
└────────────┬────────────────────┘
│ spawn / bus read-write
┌────────┴────────┐
▼ ▼
Worker A Worker B
(git worktree) (git worktree)
operator/w-abc operator/w-defTwo-tier memory — tier-1 (volatile, auto-expire 30d) and tier-2 (durable, human-confirmed). Operator proposes classification; human confirms in dashboard (pending_classification=TRUE).
File bus — primary worker↔operator state channel. Workers write heartbeats to <bus-dir>/<worker-id>.json; monitor loop detects stale workers (no heartbeat >2min) and marks them failed.
Guardrails — JSON rules enforced before any tool call. Set via set_guardrail, inspected via get_guardrails.
Tool Reference
Tool | Description |
| Create a task with goal, project path, priority, constraints |
| Launch a Claude Code worker (named or headless) on an isolated git worktree |
| Poll worker state, heartbeat age, current task |
| Mark task done, merge worktree branch, clean up |
| FTS5 full-text search across operator memory |
| Write/update a memory entry with tier + confidence |
| Add or update a guardrail rule |
| List active guardrail rules |
| Send an instruction to a running worker via file bus |
| Record a human judgment call for retrospective learning |
Dashboard
http://localhost:7373 — task board, worker status, guardrail editor, memory browser, judgment call log, SSE log stream.
CLI
claude-operator init # scaffold config + DB
claude-operator start # start MCP server + dashboard
claude-operator status # print active workers + tasks
claude-operator retro # open judgment call logDev
git clone https://github.com/MoyGulati/claude-operator
cd claude-operator
pnpm install
pnpm build
pnpm test # 39 tests
./verify.sh # full gate (build + test)Requirements: Node 24+, pnpm 10+.
License
MIT
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
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/MoyGulati/claude-operator'
If you have feedback or need assistance with the MCP directory API, please join our Discord server