10 MCP servers you need to install now as a .NET developer

As a .NET developer, I use a growing list of MCP servers every day to give Claude and other AI coding assistants access to real, live data instead of guesses. Some ship from Microsoft, some from the vendor of the tool itself, and a few are community projects that quietly make everything better. In this post, I'll go through 10 that I'd install right now.

10 MCP servers you need to install now as a .NET developer

Without further ado, let's dig into the list. In no particular order.

NuGet MCP

Let Claude check for the latest version of a package, review known vulnerabilities and supply chain risks before adding a dependency, and even upgrade or fix vulnerable packages directly in your project files. I don't have to guess at a version number or trust stale training data anymore - the assistant can just go look it up.

Example:

> What's the latest version of Serilog.Sinks.Elasticsearch, any known vulnerabilities?

Learn more: https://learn.microsoft.com/en-us/nuget/concepts/nuget-mcp-server

elmah.io MCP

Query your elmah.io error logs, uptime checks, heartbeats, and deployments directly from Claude. Since we build our own error logging and uptime monitoring service, this one's obviously close to home (I even wrote a full post about using it to fix a real production bug). It lets Claude query recent log messages, find the noisiest errors in a log, check uptime and heartbeat status, and pull usage stats - all without me switching over to app.elmah.io. Genuinely one of the tools I reach for the most these days.

Example:

> Get me the details of the latest error in the elmah.io.api log.

Learn more: https://mcp.elmah.io/

GitHub MCP

Gives Claude access to GitHub repositories, issues, pull requests, and workflow runs through the GitHub API. Claude and similar tools can already call this API over plain HTTP requests, but installing the MCP server makes a real difference: it also unlocks private repositories, and returns structured data instead of scraped HTML.

Example:

> List the open pull requests on elmahio/Elmah.Io.AspNetCore that don't have a review yet.

Learn more: https://github.com/github/github-mcp-server

Azure MCP

Pull information from your Azure environment to get information about production deployments and configuration. Make sure to install it with the --read-only flag if you, like me, don't want an AI assistant able to change your cloud infrastructure. If you already have the az CLI installed and authenticated on your machine, Claude will figure out on its own that it can just shell out to az to make changes anyway - read-only mode on the MCP server doesn't stop that 😅. Block usage of the az command too if you actually want that guarantee.

Example:

> What App Service plan is elmah.io.app running on, and what's it costing us this month?

Learn more: https://github.com/Azure/azure-mcp

Azure DevOps MCP

Gives Claude access to Azure DevOps work items, repos, pipelines, and more, directly from your editor or terminal. Microsoft's HTTP-based remote server currently only works from Visual Studio and VS Code, see https://learn.microsoft.com/en-us/azure/devops/mcp-server/remote-mcp-server?view=azure-devops. For anything else - Claude Code included - use the CLI-based version instead until that changes.

Example:

> What tasks are assigned to me in the current sprint?

Learn more: https://github.com/microsoft/azure-devops-mcp

Playwright MCP

Gives Claude control of a real browser - navigating pages, clicking, filling in forms, and reading back what's on screen. It's genuinely a little crazy that Claude can write its own test plan for a change, launch a real browser, click through your app, and verify the result - all on its own. This is the one that turns "I think this works" into "I watched it work."

Example:

> Open the dashboard, log in, and confirm the uptime chart renders without console errors.

Learn more: https://github.com/microsoft/playwright-mcp

Microsoft Learn MCP

For looking up official documentation. It's already built into Visual Studio (and possibly VS Code), but I had to install it manually for other tools like Claude Code.

Example:

> What's the recommended way to configure rate limiting in ASP.NET Core 10?

Learn more: https://learn.microsoft.com/en-us/training/support/mcp

Worth also checking out Context7 for the same kind of up-to-date library documentation lookup, across a much wider set of frameworks and libraries than just Microsoft's own.

Learn more: https://github.com/upstash/context7

Postman MCP

Gives Claude direct access to your Postman collections and API specs - creating and managing collections, running existing tests, editing environment variables, and generating client code straight from an API definition. I haven't put this one through its paces myself yet, but it ships with a few tiers of tools (Minimal, Code, Full, Learn) so you can pick how much access to hand over.

Example:

> Run the 'Create log message' request from my elmah.io collection against the staging environment.

Learn more: https://www.postman.com/product/mcp-server/

dotnetmetadatamcpserver

A community project that uses reflection to expose the actual type metadata of your .NET project and its NuGet dependencies - assemblies, namespaces, types, methods, properties, constructors, all of it - plus NuGet package search and version/dependency lookups. It solves a real problem: instead of hallucinating a method signature from a package it's never seen, Claude can just ask.

Example:

> What overloads does AddHttpClient have in this project's referenced Microsoft.Extensions.Http?

Learn more: https://github.com/v0v1kkk/dotnetmetadatamcpserver

Cloudflare MCP

Gives Claude access to the full Cloudflare API (WAF, DNS, Workers, and more). No built-in read-only mode, though. Everything is gated by whatever credential you connect with. For read-only, skip the OAuth login and create a Cloudflare API token scoped to only Read permission groups (no Edit). Watch out for this open bug: https://github.com/cloudflare/mcp/issues/95 - Claude Code (and other MCP clients) do OAuth discovery before sending custom headers, so a bearer token never actually reaches the server, and it silently falls back to a full-access OAuth login instead. Took me a minute to figure out why my read-only token kept getting ignored 🤦🏻‍♂️

A safer alternative until that's fixed could be to skip the MCP server for read-only use cases and call the Cloudflare API directly with the scoped token. The read-only restriction is then enforced by Cloudflare on the token itself, not by trusting the MCP client - which is what I ended up doing.

Example:

> List the DNS records for the elmah.io zone.

Learn more: https://developers.cloudflare.com/agents/model-context-protocol/cloudflare/servers-for-cloudflare/

That's the list for now. If you're running a favorite MCP server as a .NET developer that didn't make the cut, let me know. I'm always looking for the next one to add to the rotation.

elmah.io: Error logging and Uptime Monitoring for your web apps

This blog post is brought to you by elmah.io. elmah.io is error logging, uptime monitoring, deployment tracking, and service heartbeats for your .NET and JavaScript applications. Stop relying on your users to notify you when something is wrong or dig through hundreds of megabytes of log files spread across servers. With elmah.io, we store all of your log messages, notify you through popular channels like email, Slack, and Microsoft Teams, and help you fix errors fast.

See how we can help you monitor your website for crashes Monitor your website