README
🚀 Azure DevOps MCP 服务器指南
本指南聚焦于Azure DevOps MCP服务器,借助MCP(机器类协议)与Azure DevOps服务交互,可自动化并管理各类开发任务,提升开发效率。
🚀 快速开始
身份验证设置
要连接到Azure DevOps,身份验证配置必不可少,支持以下两种方法:
- 个人访问令牌(PAT):
az devops login --organization https://dev.azure.com/your-org --username your-username --password your-pat
- OAuth2.0:
- 登录Azure DevOps。
- 生成新的访问令牌。
- 使用生成的令牌进行身份验证。
连接到Azure DevOps组织
在项目配置文件中明确指定目标组织:
export const config = {
organization: 'your-org',
project: 'your-project',
// 其他配置...
};
✨ 主要特性
- 借助MCP协议与Azure DevOps服务交互,实现开发任务自动化与管理。
- 支持多种身份验证方式,保障连接安全。
- 具备完善的服务层和工具层,涵盖工作项操作、代码仓库管理、构建与发布管理等功能。
📦 安装指南
本部分主要涉及身份验证和组织连接的配置,按上述快速开始部分的步骤操作即可完成项目的初步配置。
💻 使用示例
基础用法
以下是WorkItemService类的基础使用示例,用于获取工作项:
// src/Services/WorkItemService.ts
export class WorkItemService {
private client: WorkItemHttpClient;
constructor() {
this.client = new WorkItemHttpClient();
}
public async getWorkItems(query: string): Promise<WorkItem[]> {
return await this.client.queryWorkItems(query);
}
}
📚 详细文档
项目结构
项目主要分为以下几个部分:
src/Interfaces/:负责定义参数和响应的类型。Services/:处理与Azure DevOps API的通信。Tools/:提供MCP协议接口的功能实现。index.ts:服务器启动的入口点。config.ts:进行配置管理。
服务层
核心服务类
- WorkItemService:处理工作项操作,如创建、更新和查询。
- GitService:管理代码仓库,涵盖分支、标签和提交操作。
- BuildService:控制构建过程,监控构建状态。
- ReleaseService:管理发布管道,执行环境配置。
工具层
工具实现
- GitTools:提供代码仓库操作接口,如
listRepositories、getBranches等。 - BuildTools:封装构建相关功能,如
queueBuild、getBuildStatus等。
配置管理
项目配置存储在config.ts文件中:
export const config = {
organizationUrl: 'https://dev.azure.com/your-org',
projectId: 'your-project-id',
authentication: {
type: 'pat', // 可选:'oauth2'
token: 'your-personal-access-token'
}
};
身份验证流程
- 初始化身份验证提供程序:
const authProvider = new AzureAuthProvider(config.authentication);
- 获取访问令牌:
async function getAccessToken(): Promise<string> {
return await authProvider.getAccessToken();
}
🔧 技术细节
核心服务类功能
- WorkItemService:借助
WorkItemHttpClient与Azure DevOps的工作项API进行交互,实现工作项的创建、更新和查询等操作。 - GitService:管理代码仓库的分支、标签和提交等操作,确保代码版本的有效管理。
- BuildService:控制构建过程,通过与Azure DevOps的构建API通信,监控构建状态。
- ReleaseService:管理发布管道,执行环境配置,保障软件的顺利发布。
工具层实现
- GitTools:封装了代码仓库的常见操作,提供简洁的接口供开发者使用,提高开发效率。
- BuildTools:将构建相关的功能进行封装,如排队构建、获取构建状态等,方便开发者进行构建管理。
📄 许可证
项目遵循MIT许可证,具体内容可查看LICENSE文件。
❗ 故障排除
常见问题
1. 认证错误
- 确保个人访问令牌有效且具有正确的权限。
- 检查组织URL是否正确。
2. TypeScript编译错误
- 使用
npm run build:ignore-errors跳过类型检查。 - 检查是否有缺失或错误的类型定义。
👏 贡献指南
欢迎大家为项目贡献力量,按以下步骤操作:
- Fork仓库。
- 创建功能分支:
git checkout -b feature/amazing-feature
- 提交更改:
git add .
git commit -m "添加新功能"
- 推送到GitHub:
git push origin feature/amazing-feature
通过以上指南,您能够成功配置和使用Azure DevOps MCP服务器,实现开发流程的自动化管理。
Scan to contact