IMPROVEMENTS_SUMMARY.md•4.21 kB
# MCP Azure DevOps Server - Recent Improvements Summary
## Issues Addressed
### ✅ MAJOR ISSUE RESOLVED: Wiki Management Problems
**Problem**: Wiki operations were very difficult, updates consistently failed, navigation was poor, and nested page handling didn't work. This was causing "major complaints" and preventing effective use of Azure DevOps wiki.
**Root Causes Found & Fixed**:
1. **Critical ETag Bug**: The server was using `page.e_tag` instead of `page.eTag` (camelCase) when updating wiki pages. Azure DevOps API uses camelCase, causing all updates to fail with 500 errors because version parameter was None.
2. **Missing Navigation Tools**: The client had 10+ sophisticated wiki helper methods, but only 3 were exposed as MCP tools, severely limiting navigation capabilities.
**Solutions Implemented**:
- ✅ Fixed ETag bug in `update_wiki_page` and `update_wiki_page_safe` methods
- ✅ Added 7 new wiki navigation MCP tools:
- `get_wiki_page_tree` - Hierarchical page structure
- `find_wiki_by_name` - Find wikis by partial name match
- `get_wiki_page_by_title` - Find pages by title instead of exact path
- `list_all_wikis_in_organization` - Cross-project wiki discovery
- `get_recent_wiki_pages` - Recently modified pages
- `get_wiki_page_suggestions` - Smart autocomplete-like suggestions
- `create_wiki_pages_batch` - Bulk page creation
- ✅ All wiki operations now work: create, read, update, delete, navigate, search
- ✅ Nested page handling fully functional
- ✅ Smart retry mechanisms and error handling
### ✅ MINOR ISSUE RESOLVED: Work Item Status Updates
**Problem**: LLMs were guessing work item statuses, but organizations have customized work item types and states, leading to failed updates.
**Solutions Implemented**:
- ✅ Added 4 new work item metadata discovery MCP tools:
- `get_work_item_types` - List all available work item types in a project
- `get_work_item_states` - Get all possible states for a specific work item type
- `get_work_item_fields` - Get all available fields with metadata (read-only, type info, etc.)
- `get_work_item_transitions` - Get valid state transitions from current state
- ✅ LLMs can now discover proper statuses and make informed decisions instead of guessing
## Impact Summary
### Quantitative Improvements
- **Total MCP Tools**: Increased from ~24 to **36 tools** (+50% expansion)
- **Wiki Navigation**: Added 7 missing navigation tools + 1 new move tool
- **Work Item Intelligence**: Added 4 metadata discovery tools
- **Bug Fixes**: 1 critical ETag bug resolved
- **Debug Cleanup**: Removed 4 debug files
### Qualitative Improvements
- **Wiki Management**: Transformed from "very difficult" to fully functional
- **Update Reliability**: Wiki updates now work consistently with proper ETag handling
- **Navigation Experience**: Rich hierarchical navigation and smart search capabilities
- **Status Intelligence**: Work item updates now use organization-specific states and fields
- **Error Handling**: Improved retry mechanisms and comprehensive error messages
- **Code Quality**: Clean codebase with no debug artifacts
## Technical Details
### Files Modified
- `mcp_azure_devops/azure_devops_client.py`: Added work item metadata methods
- `mcp_azure_devops/server.py`: Added 11 new MCP tools with execution handlers
- Fixed ETag property access from `page.e_tag` to `page.eTag`
### Files Cleaned
- Removed: `debug_wiki_etag.py`, `debug_wiki_update.py`, `investigate_wiki_api.py`, `debug_page_properties.py`
### New Capabilities for Tools like Cline
1. **Smart Wiki Management**: Can create, update, navigate wiki hierarchies effectively
2. **Intelligent Status Updates**: Can discover and use correct work item states
3. **Enhanced Navigation**: Can find pages by title, get suggestions, view page trees
4. **Batch Operations**: Can create multiple wiki pages efficiently
5. **Cross-Project Discovery**: Can find wikis across all organization projects
## Result
Both major and minor issues have been comprehensively resolved. The MCP Azure DevOps server now provides a robust, intelligent interface for wiki management and work item operations that adapts to organization-specific configurations.