← Back to directory
O

OpenClaw MCP Server

Community
MCP server securely bridging Claude with a self-hosted OpenClaw assistant.
Category
Other
Stars
★ 186 Very popular
Transport
stdio (local process) · Streamable HTTP
Runtime
Node.js 20+ · Docker
Credentials
API key / credential required
License
MIT
Last commit
Tools
7
63FMRS · C

The server provides seamless integration with OpenClaw, supporting both sync and async tasks and multi-instance. Security is emphasized with OAuth and CORS controls. Deployment requires careful configuration.

Strongest · Documentation 17/20 Weakest · Reliability 6/20

Reliability
6/20
Security and permissions
13/20
Maintenance
15/20
Documentation
17/20
Setup experience
12/20
Why each score
Reliability 6/20
Evidence: the README lists the sync/async tool set and both transport modes, and the manifest confirms the npm 1.7.0 package and OCI image exist. Deductions: no source code, tests, or CI logs were supplied, so the MCP init, tool-list handshake, and alignment of declared tools with real behavior cannot be verified; the manifest declares the OCI package as stdio transport pinned at 1.5.0, contradicting the README's HTTP-first bridge deployment at 1.7.0. Uncertainty only lowers the score, hence 6.
Security and permissions 13/20
Evidence: the manifest flags OPENCLAW_GATEWAY_TOKEN as a secret; the README mandates OAuth 2.1 in production, defaults CORS to off since 1.7.0, scopes async tasks to the originating connection, states openclaw_instances never exposes tokens, runs containers read_only with no-new-privileges, and publishes a threat model; install examples use placeholders only, with no real secrets. Deductions: the implementation cannot be audited from the supplied material, and the bridge's remote-command surface is only as safe as the gateway token (disclosed but unverifiable), so full marks are withheld; score 13.
Maintenance 15/20
Evidence: MIT license, the version line advanced to 1.7.0 with upgrade notes, CI badge, GHCR releases, SECURITY.md, and layered documentation; the manifest independently confirms published npm and OCI packages. Deductions: commit cadence, issue-response timeliness, and dependency-update history cannot be verified from the supplied material, so a conservative 15 is given.
Documentation 17/20
Evidence: the README covers Docker/local/remote setups, multi-instance mode, SSE→HTTP migration, architecture diagrams, tool tables, security and upgrade sections, links layered docs (installation, configuration, deployment, threat model, logging, development, SECURITY), and includes troubleshooting for ERR_ERL_UNEXPECTED_X_FORWARDED_FOR and Unregistered redirect_uri. Deductions: no explicit limits/cost guidance and the full OAuth flow details are deferred to external docs, so 17.
Setup experience 12/20
Evidence: docker-compose example, Claude Desktop config JSON, Claude.ai connector steps, and environment variable tables are provided. Deductions: the flow is multi-step and fragile — the connector URL must end with /mcp, redirect_uri matching is exact, and MCP_ISSUER_URL plus TRUST_PROXY are required behind a reverse proxy; the manifest's OCI entry (1.5.0/stdio) conflicts with the README's 1.7.0/HTTP story and can confuse installs; no execution evidence, static cap 15, so score 12.

Static review · not runListed 2026-08-07

Read the FMRS scoring method →

Fit and risk

What it can accessUses the network

Best for

  • Users who want to integrate self-hosted OpenClaw with Claude.
  • Users managing multiple OpenClaw instances from a unified interface.

Not for

  • Users without an OpenClaw instance.
  • Users requiring unauthenticated production deployments.

Required permissions

  • Access to the OpenClaw gateway HTTP API.
  • Requires a gateway token (Bearer) for authentication.

Risks and side effects

  • Security risks in production if not properly secured (authentication must be enabled).
  • OAuth callback exposure if misconfigured; precise redirect URIs are recommended.
  • Exposing gateway URL and secrets could lead to security issues.

Setup

Before you start

Runtime:Node.js 20+ · Docker

OPENCLAW_URL required URL of the OpenClaw gateway (OpenAI-compatible HTTP API), default http://127.0.0.1:18789; required.
OPENCLAW_GATEWAY_TOKEN requiredsecret Bearer token for OpenClaw gateway authentication; obtain it from your self-hosted OpenClaw gateway; required secret.
MCP_CLIENT_SECRET optionalsecret OAuth client secret, generate with openssl rand -hex 32; secret.
Other optional settings (9)
OPENCLAW_MODEL optional Model name for chat completions, e.g. 'openclaw' or 'openclaw/<agentId>'; default 'openclaw'; optional.
OPENCLAW_TIMEOUT_MS optional Request timeout in milliseconds; default 120000; optional.
OPENCLAW_INSTANCES optional JSON array of instances (name, url, token, etc.) for multi-instance mode; optional.
AUTH_ENABLED optional Set to true to enable OAuth 2.1 auth in HTTP mode; recommended for production; optional.
MCP_CLIENT_ID optional OAuth client ID used by the Claude.ai connector (e.g. 'openclaw'); used in HTTP mode.
MCP_ISSUER_URL optional Public HTTPS URL required behind a reverse proxy so OAuth metadata doesn't advertise localhost.
MCP_REDIRECT_URIS optional OAuth redirect URIs; for Claude.ai use https://claude.ai/api/mcp/auth_callback,https://claude.com/api/mcp/auth_callback.
TRUST_PROXY optional Set to 1 behind a reverse proxy so express-rate-limit accepts the X-Forwarded-For header.
CORS_ORIGINS optional Allowed CORS origins (e.g. https://claude.ai); off by default; set only when a browser client connects directly.

For Claude Desktop (local): run npx openclaw-mcp, then add the binary configuration to claude_desktop_config.json with environment variables. For Claude.ai (remote): use Docker or CLI with HTTP transport, enable authentication, and configure OAuth redirect URIs.

claude_desktop_config.json
{
  "mcpServers": {
    "openclaw": {
      "command": "npx",
      "args": [
        "openclaw-mcp"
      ],
      "env": {
        "OPENCLAW_URL": "http://127.0.0.1:18789",
        "OPENCLAW_GATEWAY_TOKEN": "your-gateway-token",
        "OPENCLAW_MODEL": "openclaw",
        "OPENCLAW_TIMEOUT_MS": "300000"
      }
    }
  }
}

Shown for Claude Desktop. Other clients may use a different file or key (VS Code uses "servers") — the configurator below converts it.

.vscode/mcp.json
{
  "servers": {
    "openclaw": {
      "command": "npx",
      "args": [
        "openclaw-mcp"
      ],
      "env": {
        "OPENCLAW_URL": "http://127.0.0.1:18789",
        "OPENCLAW_GATEWAY_TOKEN": "your-gateway-token",
        "OPENCLAW_MODEL": "openclaw",
        "OPENCLAW_TIMEOUT_MS": "300000"
      }
    }
  }
}

Goes in your project's .vscode/mcp.json (VS Code uses a "servers" key).

Terminal
claude mcp add openclaw -e OPENCLAW_URL=http://127.0.0.1:18789 -e OPENCLAW_GATEWAY_TOKEN=your-gateway-token -e OPENCLAW_MODEL=openclaw -e OPENCLAW_TIMEOUT_MS=300000 -- npx openclaw-mcp

Run it in a terminal; replace any <…> placeholders with your own values first.

Check that it works

The client's tool list should show the seven openclaw_* tools such as openclaw_chat, openclaw_status, and openclaw_instances. Running openclaw_status and getting gateway health info confirms the bridge reaches the OpenClaw gateway.

Troubleshooting

  1. Ensure the connector URL ends with `/mcp`, otherwise a 404 may occur after OAuth.
  2. Ensure `MCP_ISSUER_URL` is set to your public HTTPS URL and `TRUST_PROXY` is enabled to avoid authentication issues.
  3. If you see 'Unregistered redirect_uri', check that `MCP_REDIRECT_URIS` exactly matches Claude's callback path.

Things to try

Once connected, you can ask your AI assistant things like:

  • Ask OpenClaw 'Deploy status?' and relay its answer to me.
  • Check the health of the OpenClaw gateway.
  • List all configured OpenClaw instances.
  • Queue the message 'Run tests' to the dev instance and report the task's progress.

Tools 7

openclaw_chat writes
Send messages to OpenClaw and get responses.
openclaw_status read-only
Check OpenClaw gateway health.
openclaw_instances read-only
List all configured OpenClaw instances.
openclaw_chat_async writes
Queue a message and get a task ID immediately.
openclaw_task_status read-only
Check task progress and get results.
openclaw_task_list read-only
List your tasks with filtering.
openclaw_task_cancel writes
Cancel a pending task.

Use cases

Delegating tasks from Claude to OpenClaw assistants.
Orchestrating multiple OpenClaw instances (e.g., prod, staging, dev) from a single MCP server.
Running long-running operations asynchronously without blocking responses.

Supported clients

Claude Desktop
Claude.ai

Listed from the project's documentation, not tested by this site.

Overview

The OpenClaw MCP server is a secure bridge connecting Claude.ai or Claude Desktop to a self-hosted OpenClaw assistant via OAuth 2.1 authentication. It allows Claude to delegate tasks to OpenClaw instances, supporting both synchronous and asynchronous operations. The server supports multi-instance mode for orchestrating multiple OpenClaw gateways from a single MCP server.

Similar servers

Telegram MCP server powered by Telethon to let MCP clients read chats, manage groups, and send/modify messages, media, contacts, and settings.

★ 1.8k · Tools 76 Compare with this →

Source revision 3514ac1aa8a1 Data synced 2026-10-12 Read the FMRS scoring method