UnitTestMcp.Core 1.0.11

dotnet add package UnitTestMcp.Core --version 1.0.11
                    
NuGet\Install-Package UnitTestMcp.Core -Version 1.0.11
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="UnitTestMcp.Core" Version="1.0.11" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="UnitTestMcp.Core" Version="1.0.11" />
                    
Directory.Packages.props
<PackageReference Include="UnitTestMcp.Core" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add UnitTestMcp.Core --version 1.0.11
                    
#r "nuget: UnitTestMcp.Core, 1.0.11"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package UnitTestMcp.Core@1.0.11
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=UnitTestMcp.Core&version=1.0.11
                    
Install as a Cake Addin
#tool nuget:?package=UnitTestMcp.Core&version=1.0.11
                    
Install as a Cake Tool

UnitTestMcp

An MCP (Model Context Protocol) server for analyzing code coverage from MTP (Microsoft Testing Platform) based .NET test projects. Parses Cobertura XML coverage reports and exposes coverage data through MCP tools for AI-assisted development workflows.

Features

  • Parse Cobertura XML coverage reports (the standard output from dotnet test with code coverage)
  • Query missed lines and branches for individual source files
  • Get overall coverage for classes, methods, projects, and entire solutions
  • Generate comprehensive missed coverage reports across a solution
  • Discover and merge multiple coverage reports automatically

Prerequisites

  • .NET 10 SDK or later
  • An MTP-compatible test framework (e.g., TUnit, MSTest, xUnit v3)
  • Code coverage collection configured (via testconfig.json or CLI flags)

Installation

dotnet tool install --global UnitTestMcp.Server

Or run directly from source:

cd src
dotnet run --project UnitTestMcp.Server

MCP Tools

Tool Description
GetMissedCoverageForFile Gets missed lines and branches for a specific source file
GetClassCoverage Gets overall coverage summary for a specific class
GetMethodCoverage Gets overall coverage summary for a specific method
GetProjectCoverage Gets overall coverage summary for a specific project/package
GetSolutionCoverage Gets overall coverage summary for an entire solution
GetSolutionMissedCoverage Gets a detailed report of ALL missed lines and branches across a solution

Usage

Generating Coverage Reports

With MTP, code coverage is configured via testconfig.json and the Microsoft.Testing.Extensions.CodeCoverage extension. Add the extension to your test project and configure it for Cobertura output:

{
    "extensions": [
        {
            "extensionId": "Microsoft.Testing.Extensions.CodeCoverage",
            "settings": {
                "format": "cobertura"
            }
        }
    ]
}

Then run your tests normally:

dotnet test

Configuring as an MCP Server

The following examples are for end users consuming the published global tool. You do not need to build the project from source to use these configurations.

Claude Code CLI

Add the installed tool as a stdio MCP server with:

claude mcp add dotnet-mtp-coverage-mcp -- dotnet-mtp-coverage-mcp

If your local setup needs environment variables, Claude Code also supports:

claude mcp add -e SOME_SETTING=value dotnet-mtp-coverage-mcp -- dotnet-mtp-coverage-mcp

No additional subprocess flags or arguments are required when using the installed global tool.

JSON Configuration

For JSON-based MCP clients (for example, Claude Desktop or other clients that use an mcpServers object), use one of the following stdio server configurations.

Installed .NET tool:

{
  "mcpServers": {
    "dotnet-mtp-coverage-mcp": {
      "command": "dotnet-mtp-coverage-mcp"
    }
  }
}

With environment variables:

{
  "mcpServers": {
    "dotnet-mtp-coverage-mcp": {
      "command": "dotnet-mtp-coverage-mcp",
      "env": {
        "SOME_SETTING": "value"
      }
    }
  }
}

Cobertura XML Format

This tool expects Cobertura XML format, which is the standard output from the Microsoft.Testing.Extensions.CodeCoverage extension when configured with "format": "cobertura" in testconfig.json.

Building

cd src
dotnet build

Running Tests

cd src
dotnet test

Project Structure

src/
  UnitTestMcp.Core/         # Core library: models, parsers, services
    Models/                  # Coverage data models (records)
    Parsers/                 # Cobertura XML parser
    Services/                # Coverage query service
  UnitTestMcp.Server/        # MCP server executable
    Tools/                   # MCP tool definitions
  tests/
    UnitTestMcp.Tests/       # TUnit tests
      TestData/              # Sample Cobertura XML fixtures

Attribution

The Cobertura XML parsing logic and coverage data model concepts in this project are adapted from ReportGenerator by Daniel Palme, licensed under the Apache License 2.0. ReportGenerator is a comprehensive code coverage report generation tool that supports many input and output formats.

License

MIT License - Copyright (c) 2026 Glenn Watson. See LICENSE for details.

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net10.0

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.11 68 3/8/2026
1.0.10 64 3/8/2026
1.0.7 59 3/8/2026