Skip to main content
Glama
rodgco

OpenClaw MCP Server

by rodgco

OpenClaw MCP Server ๐Ÿฐ

Expose your OpenClaw assistant to Claude Desktop (or any MCP client) via Streamable HTTP transport.

This allows you to interact with your OpenClaw assistant from Claude Desktop, effectively bridging two AI systems.

โœจ Features

  • Streamable HTTP transport โ€” proper MCP spec implementation

  • SSE streaming โ€” real-time responses

  • API Key authentication โ€” secure remote access

  • Easy installation โ€” one script to set everything up

  • Configurable โ€” customize bot name, session label, port

  • systemd integration โ€” auto-start on boot

๐Ÿš€ Quick Install

On the server where OpenClaw is running:

# Clone the repo
git clone https://github.com/rodgco/openclaw-mcp-server.git
cd openclaw-mcp-server

# Run installer
./install.sh

The installer will:

  1. โœ… Check for Node.js 18+ and OpenClaw

  2. ๐Ÿ“ฆ Install dependencies

  3. ๐Ÿ”‘ Generate an API key

  4. โš™๏ธ Ask for your bot name and session label

  5. ๐Ÿš€ Optionally create a systemd service

  6. ๐Ÿ“‹ Output the Claude Desktop configuration

๐Ÿ“‹ Manual Installation

If you prefer manual setup:

# Clone and install
git clone https://github.com/rodgco/openclaw-mcp-server.git
cd openclaw-mcp-server
npm install

# Configure
cp .env.example .env
# Edit .env with your settings

# Generate API key
openssl rand -base64 32

# Run
npm start

โš™๏ธ Configuration

Edit .env file:

# Name of your assistant/bot
BOT_NAME="MyAssistant"

# OpenClaw session label to connect to
OPENCLAW_SESSION_LABEL="main"

# API Key (generate with: openssl rand -base64 32)
MCP_SERVER_API_KEY="your-secret-key-here"

# Port to listen on
PORT=3721

# Bind address (0.0.0.0 for all interfaces)
BIND_ADDRESS="0.0.0.0"

# OpenClaw workspace path
OPENCLAW_WORKSPACE="${HOME}/.openclaw/workspace"

๐Ÿ–ฅ๏ธ Claude Desktop Configuration

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "myassistant": {
      "transport": "streamable-http",
      "url": "http://YOUR_SERVER_IP:3721/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_KEY"
      }
    }
  }
}

Config file locations:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

  • Linux: ~/.config/Claude/claude_desktop_config.json

๐Ÿ› ๏ธ Available Tools

Once connected, Claude Desktop can use these tools:

ask

Send a message or question to your OpenClaw assistant.

Search the assistant's long-term memory (MEMORY.md).

sessions_status

Check OpenClaw session status.

๐Ÿ“ก How It Works

Claude Desktop (your computer)
    โ†•๏ธ HTTP POST/GET + SSE
http://your-server:3721/mcp
    โ†•๏ธ
openclaw-mcp-server
    โ†•๏ธ openclaw sessions send
OpenClaw Assistant (remote server)
  1. Claude Desktop sends JSON-RPC requests via HTTP POST

  2. MCP server forwards messages to OpenClaw session

  3. Responses stream back via Server-Sent Events (SSE)

๐Ÿ”ง systemd Service

If you installed with the script and chose systemd:

# Check status
sudo systemctl status openclaw-mcp-server

# View logs
sudo journalctl -u openclaw-mcp-server -f

# Restart
sudo systemctl restart openclaw-mcp-server

๐Ÿ”’ Security

  • API Key required for all MCP requests

  • Tailscale recommended for secure remote access

  • Never expose port 3721 to the public internet without additional protection

  • Consider using HTTPS in production (reverse proxy with nginx/caddy)

๐Ÿงช Testing

# Health check
curl http://localhost:3721/health

# Server info
curl http://localhost:3721/

# Test MCP endpoint (requires auth)
curl -X POST \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Accept: text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}' \
  http://localhost:3721/mcp

๐Ÿ—‘๏ธ Uninstall

./uninstall.sh

Or manually:

sudo systemctl stop openclaw-mcp-server
sudo systemctl disable openclaw-mcp-server
sudo rm /etc/systemd/system/openclaw-mcp-server.service
rm -rf ~/.openclaw/mcp-server

๐Ÿ“š MCP Specification

This server implements the Streamable HTTP transport from the Model Context Protocol specification.

๐Ÿค Contributing

Pull requests welcome! Please open an issue first to discuss changes.

๐Ÿ“„ License

MIT

A
license - permissive license
-
quality - not tested
C
maintenance

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/rodgco/openclaw-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server