Put an AI assistant to work across your machines and APIs — on your terms.
relay-mcp is a self-hosted relay that connects your servers, workstations and third-party APIs to an AI assistant (Claude, ChatGPT, Codex, …) over a secure, outbound connection — with fine-grained, per-capability access that you control.
Getting started
Create your own account
Sign up in a minute and verify your email — then you run your own workspace:
connect your machines, issue AI-access tokens, and control exactly what each assistant can do.
Need several accounts?
If your team needs multiple accounts under central management — shared machines,
roles and one audit trail across everyone — get in touch and we'll set that up for you.
What you get
Dial-out agents
A tiny static binary dials out over
wss — no inbound ports, works behind NAT and firewalls.
Fine-grained access
Grant shell, diagnostics, file or
integration capabilities per machine, read/write, and per token you issue.
Integrations
MikroTik RouterOS, Palo Alto (PAN-OS),
Darktrace, Microsoft Graph, Google Workspace, Proxmox, VMware vSphere, UniFi, Home Assistant
NGINX Proxy Manager, on-prem Active Directory, Group Policy and SSH/SCP — plus any generic REST (OpenAPI) or GraphQL API — capabilities discovered and
permissioned.
Portable clients
Temporary, shell-only access to any host
via an email-confirmed token that cleans up after itself.
Secure by default
Two-factor auth, passkeys, per-token
scopes and a full audit log are built in.
Self-hosted
Runs on your own relay; your data and
credentials stay with you.
Install a client
Run the one-liner on a machine you want to manage. You'll be asked for an enrollment token — after signing in, create one from your dashboard (if your account is managed for you, ask your administrator).
Linux / macOS
curl -fsSL https://hpusa.mcp.darky.cc/install.sh | bash
Windows (PowerShell)
irm https://hpusa.mcp.darky.cc/install.ps1 | iex
It downloads a single self-contained binary (no runtime is installed), verifies its
checksum, and registers the machine. Re-run the same command to update; add
--uninstall (Linux) or set $env:RELAY_UNINSTALL=1 (Windows) to remove it.
See the support guide for details and for temporary portable clients.