Skip to content

Hi! My name is Ryan

I build MCP servers for the gear I run, automation that does the boring part, and I write about all of it at ry-ops.dev. If it can be manually configured, it can be beautifully orchestrated.

MCP servers

Model Context Protocol servers for the gear I actually run, so I can ask Claude instead of clicking through five consoles.

Proxmox

VMs, containers, storage, snapshots and the rest of Proxmox VE, through natural language.

Python ★ 35

K3s

Workloads, troubleshooting and rollouts for K3s clusters, scoped by the kubeconfig you give it.

Python ★ 5

FortiGate

Policies, addresses, routes and diagnostics for FortiGate firewalls over the FortiOS REST API.

Python ★ 2

Starlink Enterprise

A Starlink terminal fleet through the Starlink Enterprise API.

Python ★ 3

Microsoft Graph

Microsoft 365 users, licenses and groups through Microsoft Graph.

Python ★ 2

Cloudflare

DNS, zones and Workers on Cloudflare.

Python ★ 2

Automation

Tools that do the boring part on a schedule, and tell me when they need me.

git-steer

A GitHub autonomy engine: scans a fleet of repos, plans fixes, and merges them only after I approve.

TypeScript ★ 1

Commit Relay

A multi-agent platform for running the lifecycle of GitHub repositories.

Shell ★ 2

UniFi Cloudflare DDNS

A Cloudflare Worker that lets UniFi gateways keep DNS records pointed at the right IP.

TypeScript ★ 1

Stackforge

A guided homelab bootstrapper: K3s on bare metal or k3d on Docker Desktop.

HTML ★ 1

Capture Cadence

Scheduled full-page screenshots of websites, with Puppeteer.

JavaScript ★ 1

Rawk On

Adds the songs from The Current's on-air playlist to a daily TIDAL or Spotify playlist.

TypeScript ★ 1

Learn along

Companion repos for the step-by-step guides on ry-ops.dev. Read the guide, clone the code.