Projects
A handful of things I’ve built outside of the day job — home-lab tooling, open source, and the occasional weekend rabbit hole.
onedrive-mcp — read-only OneDrive access for AI agents
A Model Context Protocol (MCP) server that lets agents in Hermes or Open WebUI search and download files from a personal OneDrive account via Microsoft Graph — strictly read-only, enforced in code, using MSAL’s device-code auth flow.
openwebui-azure-image-shim — bridge Open WebUI to Azure image models
A tiny, dependency-free OpenAI-compatible proxy that lets Open WebUI (or any other OpenAI-client tool) generate images through Azure AI Foundry’s MAI-Image models, which use a different auth scheme and request shape than the standard Azure OpenAI DALL-E API.
LunaTV — a mobile-first HDHomeRun client
A self-hosted, mobile-first client for watching and browsing live TV from an HDHomeRun tuner. It includes a browser client and a sideloadable Roku app, QSV-accelerated H.264/HLS transcoding, and a much friendlier device-administration interface than the tuner’s built-in web UI.
ytpi — automated downloads for your home server
A lightweight Flask web app that automates downloading YouTube videos and playlists with yt-dlp onto a home server or Raspberry Pi — with a live progress dashboard, category-based organization, and LAN-only access.
Azure Functions Data Lake extension
An input/output binding extension that lets Azure Functions talk directly to Azure Data Lake Store — built during an internal Microsoft hack week and shipped to the official Azure repositories.
Scars of Life
Singer and guitarist for the South Florida metal band Scars of Life — more about the music side of things here.