Last Updated: December 31, 2025
DotNetDevMCP is a Model Context Protocol (MCP) server designed to provide AI assistants with professional-grade .NET development capabilities. The architecture emphasizes concurrent execution, intelligent orchestration, and production-ready integration with the .NET SDK.
- Concurrency-First Design: All operations support parallel execution by default
- Separation of Concerns: Clear boundaries between core, orchestration, and domain services
- Real SDK Integration: Direct use of
dotnetCLI rather than abstractions - Cancellation Support: Proper CancellationToken propagation throughout
- Progress Reporting: IProgress for real-time operation updates
The system follows a layered architecture with clear separation of concerns:
- MCP Server Layer: stdio and SSE/HTTP transports
- Service Layer: Testing, Build, Source Control, Code Intelligence
- Orchestration Layer: Concurrent execution, resource management, workflows
- Core Infrastructure: Models, interfaces, shared utilities
- External Dependencies: .NET CLI, Roslyn, LibGit2Sharp, ASP.NET Core
Executes multiple operations in parallel with intelligent resource management.
Features: Configurable parallelism, continue-on-error, timeout handling, progress reporting, error aggregation
Performance: 2-3x faster than sequential execution
Prevents system overload with smart throttling using semaphore-based concurrency control.
Features: Dynamic max concurrency, operation tracking, resource metrics
Multi-step workflows with dependency management and parallel execution support.
Features: Dependency graph validation, error handling, full cancellation support
Recent Fixes: Proper OperationCanceledException propagation
Intelligent test orchestration with 4 execution strategies (Sequential, FullParallel, AssemblyLevelParallel, SmartParallel).
Performance: 2.47x speedup in parallel mode
Professional build automation with diagnostic parsing for errors and warnings.
Advanced Git integration with merge analysis and code review capabilities.
New Features:
- Merge analysis with conflict detection
- Code review statistics (files changed, lines added/removed)
- Powered by LibGit2Sharp
Standard input/output communication for CLI integration with structured logging.
Server-Sent Events over HTTP for web-based integration using ASP.NET Core.
- .NET 9.0
- C# 13 with records and nullable references
- Roslyn for code analysis
- LibGit2Sharp for Git operations
- xUnit 2.9.2 + FluentAssertions 8.8.0
- Serilog for structured logging
- ASP.NET Core for HTTP transport
- Concurrency by Default: Parallel execution out of the box
- Proper Cancellation Support: Every async operation accepts CancellationToken
- Progress Reporting: IProgress for real-time updates
- Resource Management: Semaphore-based throttling to prevent overload
- Error Handling: Comprehensive error aggregation with structured information
- Real SDK Integration: Direct use of dotnet CLI and Git
- Token Efficiency: Designed for AI assistants with ~10% token savings
Problem: Tests timing out after 5 minutes in CI/CD
Solutions:
- Removed fire-and-forget Task.Run in ResourceManager
- Added explicit OperationCanceledException re-throw in WorkflowEngine and ConcurrentExecutor
Impact: Tests complete in ~2 seconds instead of timing out
New Features:
- AnalyzeMergeAsync: Detects merge conflicts before merging
- ReviewChangesAsync: Provides detailed code review statistics
- Testing: 2.47x speedup in parallel mode
- Orchestration: 2-3x faster on typical workloads
- Resource overhead: <1%
This project is licensed under the MIT License - see LICENSE for details.