AA

aaronsb/ado-mcp

Developer tools

Эта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал

17 stars 8 forks Качество 57 Тренд 21MIT

Azure DevOps MCP Server

Обзор

Этот сервер MCP (Model Context Protocol) предоставляет инструменты для взаимодействия с службами Azure DevOps через помощников AI. Сервер следует архитектуре, основанной на сущности, которая группирует операции по типу ресурса, а не раскрывает многие атомные инструменты. Этот подход дает несколько преимуществ: 1. : Инструменты организуются субъектами, на которых они работают (проекты, хранилища, рабочие элементы и т. д.) 2. : Вместо десятков отдельных инструментов у нас есть несколько инструментов сущности с несколькими операциями 3. : Все инструменты сущности следуют одной и той же схеме для операций и параметров 4. : Каждый инструмент сущности может обрабатывать ошибки, характерные для его домена 5. : Пользователи могут легко обнаруживать доступные операции для каждого объекта Каждый инструмент представляет собой крупный объект Azure DevOps (проекты, репозитории, рабочие элементы и т. д.) и обеспечивает несколько операций (список, получение, создание и т. д.).

Обзор (машинный перевод)

Этот сервер MCP (Model Context Protocol) предоставляет инструменты для взаимодействия с службами Azure DevOps через помощников AI.

Архитектура

Сервер следует архитектуре, основанной на сущности, которая группирует операции по типу ресурса, а не раскрывает многие атомные инструменты. Этот подход дает несколько преимуществ:

1.Интуитивная организация: Инструменты организуются субъектами, с которыми они работают (проекты, хранилища, рабочие элементы и т. Д.). 2.** Сокращение числа инструментов**: Вместо десятков отдельных инструментов у нас есть несколько инструментов с несколькими операциями. 3. ** Согласованный интерфейс**: все инструменты организации следуют одной и той же схеме для операций и параметров 4. Лучшая обработка ошибок: Каждый инструмент может обрабатывать ошибки, характерные для его домена. 5.Упрощенное открытие: Пользователи могут легко обнаруживать доступные операции для каждой организации

Архитектурная схема

Компонентная структура

Ключевые компоненты

Каждый инструмент представляет собой основную сущность Azure DevOps (проекты, репозитории, рабочие элементы и т. Д.) и обеспечивает несколько операций (список, получение, создание и т. Д.) ** Реестр инструментов**: управляет регистрацией и исполнением инструментов организации

Эта страница переведена автоматически. Технические детали смотрите в оригинале.

README

Показан фрагмент оригинального README. Открыть оригинал.

Azure DevOps MCP Server

This MCP (Model Context Protocol) server provides tools for interacting with Azure DevOps services through AI assistants.

Architecture

The server follows an entity-based architecture that groups operations by resource type rather than exposing many atomic tools. This approach provides several benefits:

  1. Intuitive organization: Tools are organized by the entities they operate on (projects, repositories, work items, etc.)
  2. Reduced tool count: Instead of dozens of individual tools, we have a handful of entity tools with multiple operations
  3. Consistent interface: All entity tools follow the same pattern for operations and parameters
  4. Better error handling: Each entity tool can handle errors specific to its domain
  5. Easier discovery: Users can easily discover available operations for each entity

Architecture Diagram

flowchart TB
    Client[AI Assistant] -->|MCP Request| Server[MCP Server]
    Server -->|MCP Response| Client
    
    subgraph "Azure DevOps MCP Server"
        Server --> RequestHandler[Request Handler]
        RequestHandler --> ToolRegistry[Tool Registry]
        ToolRegistry --> EntityTools[Entity Tools]
        EntityTools --> ApiClient[API Client]
        ApiClient --> ErrorUtils[Error Utilities]
        ApiClient --> PaginationUtils[Pagination Utilities]
        ApiClient -->|HTTP Request| AzureDevOps[Azure DevOps API]
        AzureDevOps -->|HTTP Response| ApiClient
        ConfigManager[Configuration Manager] --> ApiClient
    end
    
    classDef primary fill:#4285F4,stroke:#0D47A1,color:white
    classDef secondary fill:#34A853,stroke:#0D652D,color:white
    classDef utility fill:#FBBC05,stroke:#866A00,color:white
    classDef external fill:#EA4335,stroke:#980905,color:white
    
    class Server,RequestHandler primary
    class ToolRegistry,EntityTools,ApiClient secondary
    class ErrorUtils,PaginationUtils,ConfigManager utility
    class Client,AzureDevOps external

Component Structure

classDiagram
    class EntityTool {
        +name: string
        +description: string
        +operations: Record~string, Function~
        +schemas: Record~string, ZodSchema~
        +getDefinition(): ToolDefinition
        +execute(args: unknown): Promise~any~
        #registerOperation(operation, handler, schema, description)
    }
    
    class ADOApiClient {
        +config: ADOApiConfig
        +connection: WebApi
        +getCoreApi()
        +getWorkItemTrackingApi()
        +getGitApi()
        +getPipelineApi()
        +handleError(error, context)
    }
    
    class ToolRegistry {
        +registerTool(tool: Tool)
        +getTool(name: string): Tool
        +getToolDefinitions(): ToolDefinition[]
    }
    
    class ErrorUtils {
        +createError(code, message, context)
        +handleApiError(error, source, operation)
Открыть полный README на GitHub

Установка

docker run -i --rm -e ADO_ORGANIZATION=your-org -e ADO_PAT=your-pat azure-devops-mcp:local
Новичок в MCP? Начните с руководства на mcpskill.org →