Independent by design · no pay-to-rank placements  · How we evaluate tools →
Anclum Submit
P

polymatx/opsgate

The safety gate between AI agents and your servers. An MCP server for structured, policy-checked, audited infrastructure operations.

Before you install: a copy-paste command is available · license MIT · link reachable

SECURITY.md ✓
View on GitHub ↗Link checked 2026-11-12 · HTTP 200 · opens the vendor's own site
Install & config
  1. Copy the command above
  2. Paste it as one entry under mcpServers in claude_desktop_config.json — local servers take command + args (example: clients)
  3. Restart your client
Install command from the repository
go install github.com/polymatx/opsgate/cmd/opsgate@latest

Parsed from the README we fetched on 2026-10-26; we have not executed it.

This is the install method the repository states, not an MCP client config, so no JSON is generated.
Key names differ by client: Clients & CLI
Star count
1 ★ · polymatx/opsgate · read from the GitHub search API · (checked 2026-11-13 20:00:50)
Source
collected from the punkpeye/awesome-mcp-servers list · type: MCP server
Harvest history
first seen 2026-10-23 · last seen 2026-11-14 · seen 26× · listed by 23 sources
Score
score 2,300 · 1 ★ · 23 sources · mcp
Install
go install github.com/polymatx/opsgate/cmd/opsgate@latest
FAQ (answers come from our records)
How do I install it?
The repository provides this install command: go install github.com/polymatx/opsgate/cmd/opsgate@latest. It comes from the repository itself; we cannot guarantee it runs as-is in your client.
Who is it for?
We filed it under these tags: MCP 服务. The tags come from the entry itself, not a taxonomy we imposed.
Who maintains it?
repository polymatx/opsgate;first catalogued 2026-10-23;last seen 2026-11-14。There is no official certification or quality rating here — we record sources and dates only.

# opsgate

以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →

The safety gate between AI agents and your servers.
An MCP server that lets Claude, Cursor, or any AI agent operate real infrastructure —
without handing it a root shell.
What it looks like ·
30-second try ·
Break it yourself ·
Tools ·
Security model ·
Contributing
## What it looks like
You ask a question. The agent investigates with read-only tools and answers.
> You: Something's listening on port 8000 on my server and I don't remember what. Check it.
▸ listeningports(host: "hetzner")
Netid State Recv-Q Send-Q Local Address:Port Process
tcp LISTEN 0 511 0.0.0.0:443 users:(("nginx",pid=249619),…)
tcp LISTEN 0 511 0.0.0.0:80 users:(("nginx",pid=249619),…)
tcp LISTEN 0 4096 0.0.0.0:22 users:(("sshd",pid=237597),…)
tcp LISTEN 0 151 127.0.0.1:3306 users:(("mysqld",pid=237695),…)
tcp LISTEN 0 5 127.0.0.1:8000 users:(("python3",pid=237608),…)
▸ servicelist(host: "hetzner", state: "running")
docker.service loaded active running Docker Application Container Engine
mysql.service loaded active running MySQL Community Server
nginx.service loaded active running A high performance web server…
php8.3-fpm.service loaded active running The PHP 8.3 FastCGI Process Manager
pm2-root.service loaded active running PM2 process manager
> Claude: Port 8000 is a bare python3 process (pid 237608) bound to localhost only, so
> it isn't reachable from outside. It's not managed by systemd — no unit owns it — which
> means it won't survive a reboot. It's most likely something started by hand in a shell.
Now something that changes state. In operate mode the agent cannot just do it:
> You: OK, nginx config changed. Reload it.
▸ nginxtest(host: "hetzner")
nginx: configuration file /etc/nginx/nginx.conf test is successful
▸ nginxreload(host: "hetzner")
┌─ opsgate: approval required ─────────────────────────────────┐
│ allow nginxreload on host "hetzner"? │
│ │
│ The nginx configuration passed validation. │
│ This will reload nginx. │
│ │
│ Command: 'nginx' '-s' 'reload' │
│ [ Approve ] [ Deny ] │
└─────────────────────────────────────────────────────────────┘
You click Deny, and nothing happens — the agent is told the operator refused. Approve, and
it runs and lands in the audit log. Either way you saw the exact command first.
(Tool output above is real output from a live server; the prompt is rendered by your MCP
client, so it looks however that client draws it.)
## Try it in 30 seconds (no server needed)
opsgate runs with no config file at all — local machine, read-only:
bash
go install github.com/polymatx/opsgate/cmd/opsgate@latest
opsgate serve
opsgate v0.1.3 | mode=observe | defaulthost=local | audit=~/.opsgate/audit.jsonl
That's it. No config, no SSH, and it defaults to observe — so it can read your disk usage
and journal, and it will refuse to change anything:
▸ diskusage() → works
▸ servicerestart(...) → Refused by opsgate policy: host is in observe mode
Point your client at it and ask "what's using disk space on this machine?" When you're
ready for real hosts, opsgate init writes a starter config to ~/.opsgate/config.yaml.
### Which clients can reach it
opsgate runs on your machine (or on the server itself) and holds your SSH key, so the
transport you need depends on where your client actually executes:
Listed badge (optional)
Copy this line into the README if you want the listing mark. Optional, and it does not affect being listed.
[![Listed on Anclum](https://anclum.com/badge/listed.svg)](https://anclum.com/en/s/polymatx-opsgate/)
Source
awesome · https://github.com/polymatx/opsgate
Browse by field
MCP servers
Traction
1 ★
Listed by
23 independent sources
added
today
Security policy
the repository has SECURITY.md at its root (we checked that the file exists, not what it says)

More like this

All 6,229 →

Filed under

Every tag opens the full list for that filter. Counts are the live catalogue figures.

Browse all fields →

← Back to index