Welcome to the Jocha blog!

Installing HP branded Windows on a Virtual server

My customer has bought a Hewlett-Packard server with a Windows Server 2012 ROK (Reseller Option Kit) license.
However this customer had some issues with the installation of the license on the Hyper-V guest server. Since the Windows server does not recognize the ‘hardware’ as a Proliant server, licensing will not succeed.

However there is a simple solution…

Installing .NET Framework on Windows 8 and 2012

I have been struggling a bit with adding .NET Framework 3.5 on a few systems (and reference image for MDT). The posts on MSDN and TechNet are good, but not always crystal clear.

Here is how I solved the issues we were experiencing…

Breaking into a Windows System

Do you ever get that sinking feeling, when you’ve forgotten the root password to your test lab?  Again?

I hate it too!  So I decided to figure out a way around it, using a work around…

Windows 8 can’t find WSUS updates

A customer of mine recently started deploying Windows 8 in their environment. MDT was set up and the deployment was working fine, but after deployment the Windows 8 machines wouldn’t connect to the WSUS server.

When trying to connect to the WSUS-server through the Control Panel I got an error message.

Display all saved WiFi Passwords

We’ve all been there, wireless passwords tend get lost.

There are several tools to retrieve the missing information, but I strongly believe that the less stuff you download from the web, the safer you are. So why not use the built in functions instead?

PowerShell MCP server with Claude Code

PowerShell MCP server with Claude Code

PowerShell can now act as an MCP server, giving AI agents like Claude direct access to your shell session. This post walks through installing and configuring PowerShell.MCP with Claude Code and covers practical IT automation scenarios.

Leveraging AGENTS.md for smarter prompting

Leveraging AGENTS.md for smarter prompting

AGENTS.md is more than a cross-tool fallback config. Structured well for your Azure and Microsoft 365 environment, it eliminates the repetitive context you type at the start of every session and makes every prompt shorter and more precise.

Configuring Claude Code with CLAUDE.md

Configuring Claude Code with CLAUDE.md

A practical guide to configuring Claude Code with CLAUDE.md and AGENTS.md, covering file locations, what rules to include, how to organize rules for larger projects, and how to deploy organization-wide policy files.

Automating Entra ID Group Management with PowerShell

Automating Entra ID Group Management with PowerShell

Introduction Managing groups in Entra ID (formerly Azure Active Directory) through the Azure Portal works fine for a handful of changes, but quickly becomes tedious at scale. Whether you're onboarding a batch of new employees, restructuring departments, or cleaning up...

Azure infrastructure with Bicep and GitHub Actions

Azure infrastructure with Bicep and GitHub Actions

Introduction ARM templates have long been the go-to for declarative Azure infrastructure, but their verbose JSON syntax makes them painful to read and maintain. Bicep is Microsoft's answer: a cleaner domain-specific language that compiles down to ARM JSON. Pair it...

IT report automation with PowerShell

IT report automation with PowerShell

Most IT teams generate the same reports week after week: license usage, stale accounts, patch compliance, group membership changes. Done manually, these are tedious and easy to forget. Done with PowerShell and GitHub Actions, they run themselves on a schedule and land...

Building an MCP server for IT infrastructure

Building an MCP server for IT infrastructure

A walkthrough of building a Python MCP server that gives Claude live access to Microsoft Intune, Entra ID, and Defender for Endpoint, querying your infrastructure directly from the chat window.