Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Beschreibung vom Entwickler (englisches Original)
MCP server bridging Claude.ai/Desktop with self-hosted OpenClaw via OAuth 2.1.
Diese drei werden nie zu einer Punktzahl zusammengefasst: Meinungen, Messungen und Beliebtheit sind verschiedene Dinge.
Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.
Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.
OPENCLAW_URL, OPENCLAW_GATEWAY_TOKEN, OPENCLAW_MODEL, OPENCLAW_TIMEOUT_MSAls geheim markierte Werte sind Schlüssel zu deinem Konto. Gib sie nie weiter und füge sie nie in einen Chat ein.
Du brauchst
Welche App nutzt du?
Wähle oben deine App. Wir merken sie uns, damit der Button beim nächsten Mal „In … installieren“ anzeigt.
Öffne Claude Desktop → Settings → Developer → Edit Config und füge dies in claude_desktop_config.json ein
{
"mcpServers": {
"openclaw": {
"command": "npx",
"args": [
"-y",
"openclaw-mcp"
],
"env": {
"OPENCLAW_URL": "your-value",
"OPENCLAW_GATEWAY_TOKEN": "your-value",
"OPENCLAW_MODEL": "your-value",
"OPENCLAW_TIMEOUT_MS": "your-value"
}
}
}
}Führe das in deinem Terminal aus
claude mcp add openclaw --env OPENCLAW_URL=your-value --env OPENCLAW_GATEWAY_TOKEN=your-value --env OPENCLAW_MODEL=your-value --env OPENCLAW_TIMEOUT_MS=your-value -- npx -y openclaw-mcpTrag die leeren Werte ein, bevor du ihn startest.
In .cursor/mcp.json in deinem Projekt oder in ~/.cursor/mcp.json einfügen
{
"mcpServers": {
"openclaw": {
"command": "npx",
"args": [
"-y",
"openclaw-mcp"
],
"env": {
"OPENCLAW_URL": "your-value",
"OPENCLAW_GATEWAY_TOKEN": "your-value",
"OPENCLAW_MODEL": "your-value",
"OPENCLAW_TIMEOUT_MS": "your-value"
}
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
In .vscode/mcp.json in deinem Projekt einfügen
{
"servers": {
"openclaw": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"openclaw-mcp"
],
"env": {
"OPENCLAW_URL": "your-value",
"OPENCLAW_GATEWAY_TOKEN": "your-value",
"OPENCLAW_MODEL": "your-value",
"OPENCLAW_TIMEOUT_MS": "your-value"
}
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
Dieser Server läuft auf deinem Computer, und ChatGPT kann sich nur mit Servern im Internet verbinden. Wähle eine andere App.
Deine Auswahl bleibt in einem Cookie auf diesem Gerät; kein Konto nötig.
OPENCLAW_MODEL envOPENCLAW_TIMEOUT_MS envDiese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.
Läuft auf deinem Computer; die Tool-Liste erscheint nach der Installation in deiner KI-App.
Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 7. Nov. 2026
Der Registry-Name wurde mit dem GitHub-Konto freema bestätigt, dem das Repo gehört
Dieses Repo haben wir noch nicht von GitHub gelesen
Dieses Repo haben wir noch nicht von GitHub gelesen
Dieser Server läuft auf deinem Computer; es gibt keinen Endpunkt im Internet
Läuft auf deinem Computer und nutzt stattdessen lokale Einstellungen
Läuft auf deinem Computer; Tool-Listen können wir nur von Endpunkten im Internet lesen
Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.
Er hat 1 von 1 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.
Das musst du eintragen: OPENCLAW_URL, OPENCLAW_GATEWAY_TOKEN
Er läuft auf deinem Computer. Deine KI-App startet ihn bei Bedarf, und die Daten laufen nicht über die Server des Entwicklers (außer der Server ruft selbst einen Onlinedienst auf).
Das GitHub-Repo wurde zuletzt – geändert, und die neueste Version (1.8.1) kam heute in die Registry.
Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Außerdem brauchst du Node.js, Docker auf deinem Computer.
In derselben Kategorie: Spec Driven Development, Remote Desktop Commander, AvaHR
Server derselben Kategorie von anderen Entwicklern, sortiert nach Sternen.
So liest du eine Karte:★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Read hiring data and create inactive assessment and questionnaire drafts for human review.
Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.
🦞 Model Context Protocol (MCP) server for OpenClaw AI assistant integration.
Hey! I created this MCP server because I didn't want to rely solely on messaging channels to communicate with OpenClaw. What really excites me is the ability to connect OpenClaw to the Claude web UI. Essentially, my chat can delegate tasks to my Claw bot, which then handles everything else — like spinning up Claude Code to fix issues for me.
Think of it as an AI assistant orchestrating another AI assistant. Pretty cool, right?
Pre-built images are published to GitHub Container Registry on every release.
docker pull ghcr.io/freema/openclaw-mcp:latest
Create a docker-compose.yml:
services:
mcp-bridge: image: ghcr.io/freema/openclaw-mcp:latest container_name: openclaw-mcp restart: unless-stopped ports:
The port is published on 127.0.0.1 only: the bridge speaks plain HTTP and is meant to sit behind a TLS-terminating reverse proxy on the same host (see Deployment).
Generate secrets and start:
export MCP_CLIENT_SECRET=$(openssl rand -hex 32)
export OPENCLAW_GATEWAY_TOKEN=your-gateway-token docker compose up -d
Then in Claude.ai add a custom MCP connector pointing to https://your-domain.com/mcp with MCP_CLIENT_ID=openclaw and your MCP_CLIENT_SECRET.
Important: The connector URL must end with `/mcp` — that's the Streamable HTTP endpoint. A bare domain (
https://your-domain.com) hits the server root and returns 404 after OAuth completes.
Tip: Pin a specific version instead of
latestfor production:ghcr.io/freema/openclaw-mcp:1.8.1
Use a least-privilege agent. Set
OPENCLAW_AGENT_IDto a dedicated OpenClaw agent that only has the tools you want Claude to reach — not your main agent with shell access. See Security.
npx openclaw-mcp
Add to your Claude Desktop config:
{
"mcpServers": { "openclaw": { "command": "npx", "args": ["openclaw-mcp"], "env": { "OPENCLAW_URL": "http://127.0.0.1:18789", "OPENCLAW_GATEWAY_TOKEN": "your-gateway-token", "OPENCLAW_AGENT_ID": "main", "OPENCLAW_MODEL": "openclaw", "OPENCLAW_TIMEOUT_MS": "300000" } } } }
MCP_CLIENT_ID=openclaw MCP_CLIENT_SECRET=your-secret \
MCP_ISSUER_URL=https://mcp.your-domain.com \ CORS_ORIGINS=https://claude.ai OPENCLAW_GATEWAY_TOKEN=your-gateway-token \ npx openclaw-mcp --transport http --port 3000
Important: When running behind a reverse proxy (Caddy, nginx, Traefik, Cloudflare Tunnel, etc.) you must set:
-
MCP_ISSUER_URL(or--issuer-url) to your public HTTPS URL — otherwise OAuth metadata advertiseshttp://localhost:3000and clients fail to authenticate.
-
TRUST_PROXY=1(or--trust-proxy 1) — otherwiseexpress-rate-limitrejects the proxy'sX-Forwarded-Forheader and/tokencrashes withERR_ERL_UNEXPECTED_X_FORWARDED_FOR.
Recommended: Set
MCP_REDIRECT_URIS=https://claude.ai/api/mcp/auth_callback,https://claude.com/api/mcp/auth_callbackso authorization codes can only be delivered to Claude's callbacks. Note the exact/api/mcp/auth_callbackpath — matching is exact, and getting it wrong fails OAuth withUnregistered redirect_uri(see Troubleshooting).
See Installation Guide for details.
┌─────────────────────────────────────────────────────────────────┐
│ Your Server │ │ │ │ ┌─────────────────┐ ┌─────────────────────────┐ │ │ │ OpenClaw │ │ OpenClaw MCP │ │ │ │ Gateway │◄────►│ Bridge Server │ │ │ │ :18789 │ │ :3000 │ │ │ │ │ │ │ │ │ │ OpenAI-compat │ │ - OAuth 2.1 auth │ │ │ │ /v1/chat/... │ │ - CORS protection │ │ │ └─────────────────┘ │ - Input validation │ │ │ └──────────┬──────────────┘ │ │ │ │ └──────────────────────────────────────┼──────────────────────────┘ │ HTTPS + OAuth 2.1 ▼ ┌─────────────────┐ │ Claude.ai │ │ (MCP Client) │ └─────────────────┘
| Tool | Description |
|---|---|
openclaw_chat | Send messages to OpenClaw and get responses |
openclaw_status | Check OpenClaw gateway health |
openclaw_instances | List all configured OpenClaw instances |
| Tool | Description |
|---|---|
openclaw_chat_async | Queue a message, get task_id immediately |
openclaw_task_status | Check task progress and get results |
openclaw_task_list | List your tasks with filtering |
openclaw_task_cancel | Cancel a pending task |
Tasks belong to whoever created them. In HTTP mode that is the authenticated OAuth client, so a client can poll its tasks from a new MCP session, and another client's task_id reads as "not found" even if it is known. Without an authenticated client (stdio) tasks are scoped to the connection.
Orchestrate multiple OpenClaw gateways from a single MCP server. One bridge, many claws — route requests to prod, staging, dev, or whatever you name them (lobster-supreme and the-claw-abides are perfectly valid names).
┌──────────────────────────────────────────────────────────────────────┐
│ Claude.ai / Claude Desktop │ │ (MCP Client) │ └──────────────────────┬───────────────────────────────────────────────┘ │ ▼ ┌──────────────────────────────────────────────────────────────────────┐ │ OpenClaw MCP Bridge Server │ │ │ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │ │ │ Instance │ │ Instance │ │ Instance │ │ │ │ Registry │ │ Resolver │ │ Validator │ │ │ └──────┬───────┘ └──────┬───────┘ └──────┬───────┘ │ │ │ │ │ │ │ ┌──────┴─────────────────┴──────────────────┴───────┐ │ │ │ Per-Instance OpenClaw Clients │ │ │ │ (separate auth, timeout, URL per instance) │ │ │ └────────┬──────────────┬──────────────┬────────────┘ │ └───────────┼──────────────┼──────────────┼────────────────────────────┘ │ │ │ ▼ ▼ ▼ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │ 🦞 prod │ │ 🦞 staging │ │ 🦞 dev │ │ (default) │ │ │ │ │ │ :18789 │ │ :18789 │ │ :18789 │ │ OpenClaw GW │ │ OpenClaw GW │ │ OpenClaw GW │ └──────────────┘ └──────────────┘ └──────────────┘
OPENCLAW_INSTANCES='[
{"name": "prod", "url": "http://prod:18789", "token": "tok1", "default": true}, {"name": "staging", "url": "http://staging:18789", "token": "tok2"}, {"name": "dev", "url": "http://dev:18789", "token": "tok3"} ]'
All tools accept an optional instance parameter to target a specific gateway:
# Chat with staging instance
openclaw_chat message="Deploy status?" instance="staging"
openclaw_status instance="prod"
openclaw_instances
openclaw_chat_async message="Run tests" instance="dev"
When instance is omitted, the default instance is used. Each instance has its own auth token, timeout, and URL — fully isolated.
openclaw_instancesSee Configuration — Multi-Instance Mode for the full reference.
⚠️ Always enable authentication in production!
# Generate secure client secret
export MCP_CLIENT_SECRET=$(openssl rand -hex 32)
MCP_CLIENT_ID=openclaw MCP_CLIENT_SECRET=$MCP_CLIENT_SECRET \ openclaw-mcp --transport http
CORS is disabled unless you opt in. Set CORS_ORIGINS only when a browser client needs to reach the server directly:
CORS_ORIGINS=https://claude.ai,https://your-app.com
See Configuration for all security options.
The bridge passes text to an OpenClaw agent and cannot judge what that text makes
Nur der Anfang wird gezeigt; den Rest findest du im Repo