Developer Tooling for .NET Teams

Tooling decides how fast a team ships and how often it gets interrupted. A good tool disappears into the workflow: the analyzer that catches the bug before review, the CLI that turns a ten-step release into one command, the SDK that makes the correct usage the easy usage. A bad tool does the opposite, and teams tend to notice the cost only after it has compounded for a year.

The articles under this tag cover tooling from both directions. Building your own: protocol servers like MCP in .NET, internal CLIs, Roslyn analyzers, and the packaging and versioning discipline that keeps them maintainable. And adopting someone else’s: how to evaluate a new tool past its demo, what production-readiness actually looks like (authentication, observability, failure modes), and when the honest answer is that the existing boring tool is still the right one.

A recurring theme is that tooling is a product with users, even when the users are your own colleagues. Error messages, defaults, and documentation are features. A tool that requires tribal knowledge to operate is technical debt with a nicer name.

Building an MCP Server in .NET Without Buying the Hype

Building an MCP Server in .NET Without Buying the Hype

MCP is JSON-RPC with conventions, not magic. This guide builds a Model Context Protocol server in .NET with the official SDK: stdio and Streamable HTTP transports, tightly-scoped typed tools, JWT authentication, prompt-injection defenses, OpenTelemetry tracing, and the production failure modes the demos never mention.