Skip to main content
Glama
Vortiago
by Vortiago

get_process_details

Retrieve detailed information about Azure DevOps processes, including properties, configuration, work item types, and default status.

Instructions

    Gets detailed information about a specific process.
    
    Use this tool when you need to:
    - View process properties and configuration
    - Get a list of work item types defined in a process
    - Check if a process is the default for the organization
    
    Args:
        process_id: The ID of the process
        
    Returns:
        Detailed information about the process including properties and
        available work item types
    

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
process_idYes

Implementation Reference

  • Core handler logic that retrieves process details using Azure DevOps Work Item Tracking Process Client, including properties and work item types, formatted as Markdown.
    def _get_process_details_impl(process_id: str) -> str:
        """Implementation of process details retrieval."""
        try:
            process_client = get_work_item_tracking_process_client()
            process = process_client.get_process_by_its_id(process_id)
            
            if not process:
                return f"Process with ID '{process_id}' not found."
            
            result = [f"# Process: {process.name}"]
            
            if hasattr(process, "description") and process.description:
                result.append(f"\nDescription: {process.description}")
            
            result.append(
                f"Reference Name: {getattr(process, 'reference_name', 'N/A')}")
            result.append(f"Type ID: {getattr(process, 'type_id', 'N/A')}")
            
            # Get process properties like isDefault, isEnabled, etc.
            properties = getattr(process, "properties", None)
            if properties:
                result.append("\n## Properties")
                for attr in ["is_default", "is_enabled"]:
                    value = getattr(properties, attr, None)
                    if value is not None:
                        attr_name = attr.replace("_", " ").capitalize()
                        result.append(f"{attr_name}: {value}")
            
            # Get work item types for this process
            wit_types = process_client.get_process_work_item_types(process_id)
            if wit_types:
                result.append("\n## Work Item Types")
                
                headers = ["Name", "Reference Name", "Description"]
                rows = [
                    f"| {wit.name} | {getattr(wit, 'reference_name', 'N/A')} | " +
                    f"{getattr(wit, 'description', 'N/A')} |"
                    for wit in wit_types
                ]
                
                result.append(_format_table(headers, rows))
            
            return "\n".join(result)
        except Exception as e:
            return (f"Error retrieving process details for process ID "
                    f"'{process_id}': {str(e)}")
  • MCP tool registration using @mcp.tool() decorator, defining the entry point for 'get_process_details' which delegates to the implementation.
    @mcp.tool()
    def get_process_details(process_id: str) -> str:
        """
        Gets detailed information about a specific process.
        
        Use this tool when you need to:
        - View process properties and configuration
        - Get a list of work item types defined in a process
        - Check if a process is the default for the organization
        
        Args:
            process_id: The ID of the process
            
        Returns:
            Detailed information about the process including properties and
            available work item types
        """
        try:
            return _get_process_details_impl(process_id)
        except Exception as e:
            return f"Error: {str(e)}"
  • Docstring providing input schema (process_id: str) and output description for the get_process_details tool.
    """
    Gets detailed information about a specific process.
    
    Use this tool when you need to:
    - View process properties and configuration
    - Get a list of work item types defined in a process
    - Check if a process is the default for the organization
    
    Args:
        process_id: The ID of the process
        
    Returns:
        Detailed information about the process including properties and
        available work item types
    """
  • Invocation of process.register_tools(mcp) which registers the get_process_details tool among others.
    process.register_tools(mcp)
  • Utility function used to format lists of work item types and other tabular data into Markdown tables.
    def _format_table(headers, rows):
        """Format data as a markdown table."""
        result = []
        result.append("| " + " | ".join(headers) + " |")
        result.append("| " + " | ".join(["----"] * len(headers)) + " |")
        result.extend(rows)
        return "\n".join(result)

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Vortiago/mcp-azure-devops'

If you have feedback or need assistance with the MCP directory API, please join our Discord server