Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
94 changes: 4 additions & 90 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@

A [Model Context Protocol (MCP)](https://modelcontextprotocol.io/) server for Azure DevOps integration, enabling AI assistants to interact with Azure DevOps Work Items, Git Repositories, Pull Requests, and Pipelines.

> **Note**: Flow metrics, WIP analysis, and other analytics features were removed. With `ActivatedDate` and `ClosedDate` now exposed on all work item queries, Claude can derive cycle time, lead time, aging, and throughput directly from the data — no pre-built analytics tools needed.

---

## Quick Start
Expand Down Expand Up @@ -163,40 +165,6 @@ This project implements an MCP server that exposes tools for querying and managi
| `get_build_timeline` | Gets the timeline (stages, jobs, tasks) for a build |
| `query_builds` | Advanced query with multiple combined filters |

### Analytics Tools

Tools for analyzing delivery performance, identifying bottlenecks, and tracking work health.

| Tool | Description |
|------|-------------|
| `get_flow_metrics` | Calculates Lead Time, Cycle Time, and Throughput with statistical analysis |
| `compare_flow_metrics` | Compares metrics between two periods to identify trends |
| `get_wip_analysis` | Analyzes Work in Progress by state, area, and person |
| `get_bottlenecks` | Identifies workflow bottlenecks with severity scores and recommendations |
| `get_team_workload` | Analyzes workload distribution across team members |
| `get_aging_report` | Reports aging work items with urgency classification and recommendations |

#### Flow Metrics

- **Lead Time**: Time from work item creation to completion (measures total delivery time)
- **Cycle Time**: Time from work started to completion (measures active work time)
- **Throughput**: Number of items completed per period

#### WIP Analysis

- **By State**: Where work is accumulating
- **By Area**: Which teams/squads are overloaded
- **By Person**: Who has too many items assigned
- **Aging Items**: Work that has been stuck too long

#### Aging Report

Items are classified by urgency based on:
- Priority (P1 items age faster than P4)
- Time since last update
- Current state (blocked items are more urgent)
- Assignment status (unassigned items need attention)

---

## Prerequisites
Expand Down Expand Up @@ -434,19 +402,6 @@ After configuring the MCP client, you can ask questions like:
- "Show me the timeline of build #123"
- "What builds are currently in progress?"

### Analytics and Insights

- "What's our average delivery time (lead time)?"
- "Are we delivering faster or slower than last month?"
- "Where is work piling up? Show me bottlenecks"
- "Who on the team is overloaded?"
- "What items have been stuck for too long?"
- "Show me aging work items that need attention"
- "How many items did we complete last week?"
- "What's our cycle time for bugs vs user stories?"
- "Is the 'Backend' team overloaded?"
- "Compare this sprint's throughput to the previous sprint"

---

## Troubleshooting
Expand Down Expand Up @@ -541,16 +496,13 @@ mcp-azure-devops/
│ │ ├── WorkItemDto.cs # Work item models
│ │ ├── RepositoryDto.cs # Git repository models
│ │ ├── PullRequestDto.cs # Pull request models
│ │ ├── PipelineDto.cs # Pipeline/build models
│ │ ├── FlowMetricsDto.cs # Flow metrics models
│ │ └── WipAnalysisDto.cs # WIP and aging models
│ │ └── PipelineDto.cs # Pipeline/build models
│ ├── Services/ # Azure DevOps SDK integration
│ ├── Tools/ # MCP tool implementations
│ │ ├── WorkItemTools.cs # Work item operations
│ │ ├── GitTools.cs # Git repository operations
│ │ ├── PullRequestTools.cs # Pull request operations
│ │ ├── PipelineTools.cs # Pipeline/build operations
│ │ └── AnalyticsTools.cs # Analytics and metrics
│ │ └── PipelineTools.cs # Pipeline/build operations
│ ├── Program.cs # Entry point
│ ├── appsettings.json # App settings
│ └── Dockerfile # Container definition
Expand Down Expand Up @@ -636,44 +588,6 @@ Build log metadata with Id, Type, Url, LineCount, and timestamps.
#### BuildTimelineRecordDto
Timeline record (stage, job, or task) with Id, ParentId, Type, Name, State, Result, timing information, and error/warning counts.

### Analytics DTOs

#### FlowMetricsDto
Flow metrics analysis results including:
- PeriodStart, PeriodEnd, Throughput (total completed items)
- LeadTime, CycleTime (MetricStatistics with average, median, percentiles)
- ThroughputByPeriod (breakdown by day/week)
- ThroughputByType (breakdown by work item type)
- Items (optional detailed list)

#### MetricStatistics
Statistical measures for a metric including Average, Median, Percentile85, Percentile95, Min, Max, StdDev, and Count.

#### WipAnalysisDto
Work in Progress analysis including:
- TotalWip, ByState, ByArea, ByPerson, ByType
- AgingItems (items stuck too long)
- Insights (auto-generated observations)

#### BottleneckAnalysisDto
Bottleneck identification results with:
- Bottlenecks (list ordered by severity)
- Recommendations (actionable suggestions)

#### BottleneckDto
Individual bottleneck with Type (State/Person/Area), Location, ItemCount, Severity (1-10), Description, and SampleItemIds.

#### AgingReportDto
Comprehensive aging analysis including:
- TotalAgingItems, Summary (statistics)
- ByUrgency (Critical/High/Medium/Low item IDs)
- ByState, ByAssignee, ByArea (grouped counts)
- Items (detailed list with recommendations)
- Recommendations (overall action items)

#### AgingItemDetailDto
Detailed aging item with Id, Title, WorkItemType, State, AssignedTo, AreaPath, Priority, DaysSinceUpdate, DaysSinceCreation, Urgency, UrgencyScore, and Recommendation.

---

## Development
Expand Down
170 changes: 0 additions & 170 deletions src/Viamus.Azure.Devops.Mcp.Server/Models/FlowMetricsDto.cs

This file was deleted.

Loading