
aaronsb/ado-mcp
Developer toolsЭта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал
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:
- Intuitive organization: Tools are organized by the entities they operate on (projects, repositories, work items, etc.)
- Reduced tool count: Instead of dozens of individual tools, we have a handful of entity tools with multiple operations
- Consistent interface: All entity tools follow the same pattern for operations and parameters
- Better error handling: Each entity tool can handle errors specific to its domain
- 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)
Установка
docker run -i --rm -e ADO_ORGANIZATION=your-org -e ADO_PAT=your-pat azure-devops-mcp:local