GitHub
GitHub’s official server lets AI read and manage code, issues and pull requests in your account. Use GitHub’s hosted version or run it locally with Docker.
Description from the maker (original English)
Deploy self-hosted OpenClaw to AWS, GCP, Azure or a local VM — a CLI and an MCP server in one.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"clawops": {
"command": "npx",
"args": [
"-y",
"@clawops/cli",
"mcp",
"serve"
]
}
}
}Run this in your terminal
claude mcp add clawops -- npx -y @clawops/cli mcp servePaste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"clawops": {
"command": "npx",
"args": [
"-y",
"@clawops/cli",
"mcp",
"serve"
]
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"clawops": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@clawops/cli",
"mcp",
"serve"
]
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 6, 2026
The registry name was verified with the GitHub account dfridkin, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (2.4.1) reached the registry 18 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.
In the same category: GitHub, Desktop Commander, Cloudflare MCP
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
GitHub’s official server lets AI read and manage code, issues and pull requests in your account. Use GitHub’s hosted version or run it locally with Docker.
MCP server for terminal commands, file operations, and process management
Cloudflare MCP servers
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
MCP-native infrastructure ops for OpenClaw, with read-only mode, destructive-action confirmation, and audit logs built in.
clawops is a CLI and MCP server for deploying and operating self-hosted OpenClaw instances. Provision on AWS, GCP, Azure, or any Linux VM, then manage day-to-day operations from the terminal, or let Claude Code and Cursor drive them through typed MCP tools with explicit safety controls.
What's new: 2.4 release notes below, and the full history in CHANGELOG.md.
~/.clawops/.pulumi-cli on first use.--json) for scripting and automation.docs/limitations.md for the manual path.~/.clawops/config.json.docs/support-matrix.md.npm install -g @clawops/cli
clawops setup
clawops setup is an interactive wizard that gets OpenClaw running in about 2 minutes. It handles everything in one flow, no config files to write by hand, no commands to memorize.
Step 1. Choose a deployment target
Pick an existing server you can SSH into (Linux or macOS), or a new cloud VM on AWS, GCP, or Azure. Cloud deployments walk you through authenticating with the provider CLI if you aren't already signed in.
Step 2. Pick an LLM provider
Choose from Anthropic, OpenAI, Amazon Bedrock, Ollama, or others. The wizard prompts for your API key and saves it locally (in ~/.clawops/secrets/, chmod 600), it is never sent anywhere except to OpenClaw on the target host when the config is applied.
Step 3. Add chat integrations (optional)
Select any combination of Discord, Telegram, Slack, WhatsApp, or Teams. The wizard collects each integration's bot token the same way as the API key. Paste it in, reference an env var, or point to a file.
Step 4. Wire your AI editor
Select which AI apps should have access to clawops. Claude Desktop, Claude Code, Cursor, Windsurf, VS Code, and Zed are all supported. The wizard writes an MCP server entry into each app's config file using the absolute binary path so the app can launch it independently.
Step 5. Deploy
The wizard bootstraps OpenClaw on the target host over SSH (installs Docker, pulls the image, starts the container), applies your LLM and integration config, generates a gateway auth token, and prints a direct dashboard URL:
✔ All done! OpenClaw is running.
ℹ Open dashboard: http://192.168.1.50:18789?token= ℹ Token saved to ~/.clawops/secrets/GATEWAY_TOKEN_my-stack
Prerequisites: Node.js ≥ 22, an SSH key, and either an SSH-reachable Linux/macOS host or a cloud account with CLI credentials configured (aws configure, gcloud auth login, or az login). You do not need Pulumi. The first cloud deployment installs the CLI clawops drives into ~/.clawops/.pulumi-cli and says so while it does.
For a full narrated walkthrough with example output, see docs/demo-script.md.
If you prefer step-by-step control, or are adding clawops to an already-running deployment:
npm install -g @clawops/cli
clawops doctor # verify environment
clawops init --provider local --host 192.168.1.50 --user ubuntu --key-path ~/.ssh/id_ed25519 clawops up # installs Docker + OpenClaw over SSH clawops status
See docs/examples/local-vm.md for SSH prerequisites, firewall setup, and troubleshooting.
npm install -g @clawops/cli
clawops init --provider aws
clawops plan --provider aws --stack default --ssh-cidr auto --out /tmp/plan.json clawops apply /tmp/plan.json
--ssh-cidr auto allows SSH from this machine's public IP, resolved while the plan is generated and written into it. Without it the plan allows no ingress at all and nothing, including clawops, will be able to connect.
The setup wizard handles this automatically (Step 4). To wire or re-wire editors at any time:
clawops mcp install
This opens the same interactive checkbox used in the wizard, select Claude Desktop, Claude Code, Cursor, Windsurf, VS Code, or Zed and clawops writes the MCP entry into each app's config using the correct absolute binary path.
To add the entry manually instead, paste this into your editor's MCP config:
{
"mcpServers": { "clawops": { "command": "npx", "args": ["-y", "@clawops/cli", "mcp", "serve", "--read-only"] } } }
That form needs nothing on $PATH and is what a directory or an installer will copy. If you would rather point at the binary you already have, use its absolute path — the output of which clawops — with the same arguments:
{
"mcpServers": { "clawops": { "command": "/path/to/clawops", "args": ["mcp", "serve", "--read-only"] } } }
Either way, pass the arguments. mcp serve is what speaks the protocol, and an explicit config is one that still reads clearly a year later. clawops does not strand a client that omits them: run with no command at all and a pipe on stdin — how every MCP client starts a server — and it starts mcp serve, saying so on stderr. Typed at a terminal, clawops still prints help.
Pass cloud credentials in `env`. A client starts the server with the environment its config gives it, not your shell's, so an AWS_PROFILE exported in a terminal does not reach it, and every tool that reads a stack fails with "Could not read the state of stack". Name the profile, or the variables your state backend needs, in the server's env block:
{
"mcpServers": { "clawops": { "command": "npx", "args": ["-y", "@clawops/cli", "mcp", "serve"], "env": { "AWS_PROFILE": "my-profile" } } } }
It holds a profile name, not a key: the credentials themselves stay where the cloud CLI keeps them (R6).
Config file locations:
| App | Path |
|---|---|
| Claude Desktop (macOS) | ~/Library/Application Support/Claude/claude_desktop_config.json |
| Claude Desktop (Linux) | ~/.config/Claude/claude_desktop_config.json |
| Claude Code | ~/.claude.json |
| Cursor | ~/.cursor/mcp.json |
| Windsurf | ~/.codeium/windsurf/mcp_config.json |
| VS Code (macOS) | ~/Library/Application Support/Code/User/mcp.json |
| VS Code (Linux) | ~/.config/Code/User/mcp.json |
| Zed | ~/.config/zed/settings.json (key: context_servers) |
Start with `--read-only`. It enables status, logs, config reads, and diagnostics while blocking mutations. Remove it only after reviewing docs/security/mcp-safety.md.
Destructive tools (clawops_destroy, clawops_up, clawops_config_set, etc.) require explicit confirmation before executing, they will never run silently.
For HTTP mode setup see docs/mcp/.
clawops status # Stack outputs: IP, gateway URL, SSH info
clawops logs -f # Tail OpenClaw logs over SSH clawops ssh # Interactive SSH session clawops ssh --command "docker ps"
clawops config get maxAgents clawops config set maxAgents 8
clawops tunnel # Port-forward gateway UI to localhost
clawops destroy --yes # Destroy cloud-provider stack clawops down --yes # Destroy local-provider stack
| Command | Description | |
|---|---|---|
setup | First-run wizard: guided LLM, integrations, spending limits, and deploy-plan generation | |
init | Register a stack in ~/.clawops/config.json without provisioning. Additive, existing stacks are kept; --force is needed only to overwrite one | |
up | Provision or update stack (--dry-run for preview, --gateway-port for a non-default port) | |
down | Destroy local-provider stack (requires --yes; --dry-run shows current outputs) | |
destroy | Destroy cloud-provider stack with confirmation prompt (--dry-run shows current outputs) | |
status | Show stack outputs: IP, gateway URL, region, provisioned time, and any requests the stack's host agent left for you | |
plan | Generate a deploy-plan JSON artifact (dry-run safe). --ssh-cidr and --gateway-cidr decide who may connect; `--publish-gateway loopback\ | all decides what is listening; --private-only` closes public access on a stack reached over its tailnet |
apply | Apply a previously reviewed plan file (--dry-run validates and shows diff without applying) | |
ssh | Interactive SSH session or run a remote command | |
logs | Stream OpenClaw logs (-f, --tail N, --since 5m) | |
tunnel | Local port-forward to gateway UI over SSH | |
config | Get/set remote OpenClaw config values (--dry-run shows would-write JSON) | |
agents | List OpenClaw agents, or stream one agent's logs | |
agent install | Install a host agent on a stack's gateway host, for one OpenClaw agent only the operator can reach (--agent, --operator : , --allow handoff tools, --strict). Refuses unless the gateway's routing allows only the operator; denies clawops to every other agent. --serve-peers and --peer = make the host a fleet member, whose host agent reads its peers over the tailnet (2.5, ADR 0015; see Operations) | |
agent uninstall | Remove the host agent and unwire the gateway (--purge also removes its audit log) |
| `f
Only the beginning is shown; read the rest in the repo