macOS · Per-app routing

Send every app down
the path it belongs on.

A native macOS traffic router. Transparently send an app's traffic to your own SOCKS5 / HTTP proxy — with zero config on the app's side. Real UDP / QUIC proxying that Proxifier can't do.

macOS 13+ · Apple Silicon & Intel · No proxy core, no subscriptions — you bring the upstream.

A pure on-device traffic router — no proxy core, no SS/VMess, no node subscriptions. What the upstream is, and where it lives, is entirely yours to configure.

What it does

Everything a per-app proxy should have handled for you.

01

Per-app routing

Pick an app by its real icon — no typing process names. Pick a proxy. Done.

02

Real UDP / QUIC proxy

SOCKS5 UDP ASSOCIATE forwarding — something Proxifier simply can't do. QUIC gets three states: proxy, fall back to TCP, or direct.

03

Rule-trace explainer

Expand any connection to see exactly why it took that path. A dry-run tester tells you which rule matches — without sending a packet.

04

Auto network switching

Wi-Fi by SSID; wired by gateway MAC + subnet — so 'office cable' and 'home cable' are told apart. Bind a profile to a network and it switches back on its own.

05

CLI + MCP

proxyrouterctl on the command line, URL Scheme, App Intents — and a built-in MCP server so Claude and other LLMs manage your rules directly.

06

Safe defaults, built in

fake-IP DNS, loopback protection, localhost guards — the defaults you'd only get right after being burned are already configured.

Rule-trace explainer

Never wonder where your traffic went.

Every live connection expands into the exact chain of rules it walked — matched, skipped, and why. The dry-run tester answers the same question before a single packet leaves your machine.

  • Pure-function rule engine — the tester and the live path always agree.
  • Same logic drives the UI, the CLI and MCP — behavior never drifts.
Chrome edge.quic.example.com:443 SOCKS5 · JP
  1. rule 03app = Chrome · proto = QUICmatch
  2. actionproxy → SOCKS5 · JP (UDP ASSOCIATE)

Dry-run · no packet sent

proxyrouterctl
$ proxyrouterctl route add --app Chrome --proxy jp-socks
 rule 03  Chrome · QUIC  →  SOCKS5 · JP

$ proxyrouterctl test --app Chrome --host example.com
 match rule 03  ·  proxy SOCKS5 · JP  ·  no packet sent

# or just ask Claude, over MCP
 "route Chrome's QUIC through the Japan node"  done

CLI + MCP

Drive it from the terminal — or hand it to Claude.

proxyrouterctl ships with zero third-party dependencies. The built-in MCP server exposes the same automation surface the UI uses, so an LLM can read your connections and reshape your rules in plain language.

Honest comparison

Built to be Proxifier — plus what Proxifier can't do.

Capability ProxyRouter Proxifier
Per-app routing (real icons)YesProcess names
SOCKS5 UDP / QUIC proxyYesNo
Rule-trace explainer + dry runYesNo
Auto network-env switchingWi-Fi + wiredLimited
CLI + MCP (LLM control)YesNo
fake-IP DNS + loop guardsYesManual

Pricing

Try it free for 3 days. Then own it your way.

Every plan is the full app — nothing is held back during the trial. When a trial or subscription ends, only proxying stops; your config is never touched.

Free trial

3days, full features

  • Everything unlocked
  • Keychain-anchored, machine-bound
  • No card required
Start the trial

Lifetime

$—one-time

  • Yours forever
  • Offline, no server check
  • Move it between your Macs
Coming soon

Payment is being wired up. Leave your email and we'll send the download and license the moment it's live.