loading…
Search for a command to run...
loading…
Connects Claude Code to a persistent OpenClaw daemon for 24/7 automation of cron jobs, webhooks, and messaging across over 23 platforms. It enables background b
Connects Claude Code to a persistent OpenClaw daemon for 24/7 automation of cron jobs, webhooks, and messaging across over 23 platforms. It enables background browser automation and event tracking that persists even when the Claude session is closed.
An MCP server that connects Claude Code to a persistent OpenClaw daemon for 24/7 automation. Includes a Claude CLI proxy that lets OpenClaw use your Claude Code subscription as its AI brain — no separate API key needed.
OpenClaw runs as a background daemon on your machine. This MCP server gives Claude Code tools to manage that daemon — create cron jobs, set up webhooks, send messages across 23+ platforms, and automate your browser.
The key difference from other approaches: automations keep running when Claude Code isn't open. When you come back, Claude catches up on everything that happened through an event queue.
┌─────────────────────────────────────────────┐
│ OpenClaw Daemon (24/7) │
│ ┌─────────┐ ┌──────┐ ┌────────┐ ┌───────┐ │
│ │ Discord │ │ Cron │ │Browser │ │ Gmail │ │
│ └────┬────┘ └──┬───┘ └───┬────┘ └───┬───┘ │
│ └─────────┴─────────┴──────────┘ │
│ │ │
│ Gateway (:18789) │
└──────────┬─────────────────┬───────────────┘
│ │
MCP stdio │ OpenAI API │
Claude Code ◄──────────► MCP Server│ (:18790) │
│ │ │
SQLite DB └── Claude Proxy ◄┘
│
claude --print
(your CLI sub)
claude --print calls. OpenClaw thinks it's talking to an API, but it's using your Claude Code subscription.git clone https://github.com/mordiaky/clawdaemon-mcp.git
cd clawdaemon-mcp
npm install
npm run build
If you haven't installed OpenClaw yet:
git clone https://github.com/openclaw/openclaw.git
cd openclaw
npx pnpm install
npx pnpm build
Start the gateway:
node openclaw.mjs gateway run
The gateway starts on http://127.0.0.1:18789 by default.
claude mcp add clawdaemon -- node /absolute/path/to/clawdaemon-mcp/build/server.js
Optionally add OpenClaw's built-in messaging tools:
claude mcp add openclaw -- node /absolute/path/to/openclaw/openclaw.mjs mcp serve
Restart Claude Code for the tools to load.
The Claude Proxy lets OpenClaw use your Claude Code CLI subscription as its AI model. This means OpenClaw can respond to Discord messages, run heartbeat tasks, and process automations — all powered by Claude, with no separate API key.
cd clawdaemon-mcp
npm run proxy
The proxy listens on http://127.0.0.1:18790/v1 and translates OpenAI-compatible API calls into claude --print calls.
Add to your ~/.openclaw/openclaw.json:
{
"models": {
"providers": {
"claude-proxy": {
"baseUrl": "http://127.0.0.1:18790/v1",
"api": "openai-completions",
"models": [
{
"id": "claude-cli",
"name": "Claude via CLI Proxy",
"input": ["text", "image"],
"contextWindow": 200000,
"maxTokens": 8192
}
]
}
}
},
"agents": {
"defaults": {
"model": {
"primary": "claude-proxy/claude-cli"
}
}
}
}
Restart the gateway to apply:
openclaw gateway restart
Edit openclaw-mcp-config.json to add any MCP servers you want the proxy-spawned Claude to have access to:
{
"mcpServers": {
"clawdaemon": {
"type": "stdio",
"command": "node",
"args": ["/absolute/path/to/clawdaemon-mcp/build/server.js"],
"env": {}
},
"your-other-server": {
"type": "stdio",
"command": "node",
"args": ["/absolute/path/to/your-server/build/index.js"],
"env": {}
}
}
}
The proxy passes this config to claude --print --mcp-config so the Claude instance that responds to messages has full tool access.
| Tool | What it does |
|---|---|
daemon_status |
Check if OpenClaw gateway is running and healthy |
| Tool | What it does |
|---|---|
create_cron |
Schedule a recurring automation |
list_automations |
List all active automations |
delete_automation |
Remove an automation |
| Tool | What it does |
|---|---|
poll_events |
Get events that happened since last check |
acknowledge_event |
Mark an event as processed |
get_event_history |
Browse past events |
prune_events |
Remove expired events from the queue |
| Tool | What it does |
|---|---|
send_message |
Send a message via any connected channel |
list_channels |
List connected messaging channels |
| Tool | What it does |
|---|---|
browser_navigate |
Open a URL in the browser |
browser_extract |
Get a DOM snapshot of the current page |
browser_screenshot |
Take a screenshot |
| Variable | Default | Description |
|---|---|---|
OPENCLAW_GATEWAY_URL |
ws://127.0.0.1:18789 |
Gateway WebSocket URL |
OPENCLAW_GATEWAY_TOKEN |
(from ~/.openclaw/openclaw.json) | Auth token for gateway |
CLAWDAEMON_DB |
~/.clawdaemon/events.db |
Event queue database path |
CLAUDE_PROXY_PORT |
18790 |
Port for the Claude CLI proxy |
The proxy is a lightweight HTTP server that makes Claude Code CLI look like an OpenAI-compatible API:
/v1/chat/completions requestclaude --print --output-format json --mcp-config openclaw-mcp-config.jsonSupports both streaming (SSE) and non-streaming responses.
Once the proxy is running and OpenClaw is configured to use it, add a messaging channel:
~/.openclaw/openclaw.json:{
"channels": {
"discord": {
"enabled": true,
"groupPolicy": "open",
"accounts": {
"default": {
"token": "YOUR_DISCORD_BOT_TOKEN"
}
}
}
}
}
openclaw pairing approve discord <CODE>Claude will now respond to Discord messages through the proxy.
http://127.0.0.1:18789./mcp in Claude Code.curl http://127.0.0.1:18790/v1/modelsclaude --versionnpm run proxy in a terminal to see them.groupPolicy: "open" in the Discord channel configDiscord's WebSocket sometimes doesn't reconnect cleanly. Stop the gateway, wait 15 seconds, then restart:
systemctl --user stop openclaw-gateway.service
sleep 15
openclaw gateway restart
OpenClaw is a powerful automation daemon but its built-in AI requires separate API keys. Claude Code users already have a Claude subscription. This MCP server + proxy lets you use OpenClaw's full automation stack (messaging, cron, browser, webhooks) powered entirely by your existing Claude Code subscription — no additional API costs, no ToS violations.
MIT
Добавь это в claude_desktop_config.json и перезапусти Claude Desktop.
{
"mcpServers": {
"clawdaemon-mcp": {
"command": "npx",
"args": []
}
}
}