You'd be surprised how far you can get with self-hosted Gitea.

Can highly recommend it. Gitea issues, PRs and actions all work as expected.

And they have a suspiciously well-appointed MCP server.

My bar for self-hosting something isn’t “these base standard feature works”, they had fucking better.

I get self-hosting got for security, compliance, and retention reasons, but for almost everything else it seems questionable for any use I would consider normal.

I self-host because I'm not training some model for free with our and our customers' proprietary code.