Skip to content

🐕 kenny

Self-hosted remote administration and fleet monitoring for Windows PCs, driven by Claude (MCP) and a web dashboard.

kenny started as a way to look after the family's Windows PCs — keep an eye on disk space and Defender, fix things over the phone without "can you read me what it says" — operated through Claude instead of a clunky console. It works for any small fleet you administer with consent.

flowchart LR
  Operator(("Operator"))
  Claude["Claude<br/>(local client, optional)"]
  subgraph Server["kenny-server (cloud)"]
    UI["Dashboard + Chat"]
    MCP["MCP endpoint /mcp"]
    Tunnel["Agent tunnel /agent/ws"]
    Store[("Telemetry store<br/>SQLite")]
  end
  Agent["kenny-agent (Windows PC)<br/>PowerShell · Win32 · winget<br/>filesystem · screenshot · collectors"]

  Operator -->|https dashboard + chat| UI
  Operator --> Claude -->|MCP, Bearer token| MCP
  UI --> Tunnel
  MCP --> Tunnel
  Tunnel <-->|WSS, agent dials out| Agent
  Agent -->|telemetry push| Store
  Store --> UI
  • kenny-server (Python / FastMCP) — MCP endpoint for Claude, the agent tunnel, the telemetry store (SQLite), and the operator dashboard. One ASGI app, one port.
  • kenny-agent (Rust, single binary) — runs on each Windows PC, dials out to the server (NAT/firewall friendly), executes tool calls in the user's session, and pushes health snapshots.

Where to next

  • :material-rocket-launch: Setup & operations — host the server, configure TLS and environment, build & distribute the agent.
  • :material-book-open-variant: User guide — operator workflows: dashboard, chat, running tools, onboarding and updating agents.
  • :material-file-document-outline: Wire protocol — the agent⇄server contract (single source of truth, round-tripped by both sides).
  • :material-sitemap: Architecture decisions — MADR records for every significant choice.

Contributing

kenny is open source under AGPL-3.0-only. See CONTRIBUTING, the Code of Conduct, and the Security policy (report vulnerabilities privately). Questions and ideas go to Discussions.