使用说明
Azure DevOps MCP服务器
模型上下文协议(MCP)服务器,通过FastAPI提供与Azure DevOps服务的无缝集成。此服务器将Azure DevOps操作作为MCP工具公开,使AI助手和其他MCP客户端能够与Azure DevOps项目、存储库、wiki和文件内容进行交互。
特性
- 项目管理:列出并检索有关Azure DevOps项目的信息
- 存储库操作:浏览存储库、列出文件和文件夹以及检索文件内容
- Wiki集成:访问和检索Azure DevOps wiki页面和内容
- SSE 运输:支持服务器发送事件进行实时通信
可用的MCP工具
1. get_azure_devops_projects
从Azure DevOps组织中检索所有项目。
参数:
organization_url(可选):Azure DevOps组织URL
退货: JSON,包含项目详细信息,包括ID、名称、描述、URL和状态。
2. get_repositories
列出特定Azure DevOps项目中的所有存储库。
参数:
project_name(必填):Azure DevOps项目的名称organization_url(可选):Azure DevOps组织URL
退货: JSON,包含存储库信息,包括ID、名称、URL、默认分支和状态。
3. get_repository_items
浏览Git存储库中的文件和文件夹。
参数:
project_name(必填):Azure DevOps项目的名称repository_id(必填):存储库IDpath(可选):要浏览的特定路径(默认为root)recursive(可选):是否递归列出项目(默认值:False)organization_url(可选):Azure DevOps组织URL
退货: JSON,包含文件/文件夹列表,包括路径、类型、大小和URL。
4. get_file_content
从Git存储库中检索特定文件的内容。
参数:
project_name(必填):Azure DevOps项目的名称repository_id(必填):存储库IDfile_path(必填):文件路径organization_url(可选):Azure DevOps组织URL
退货: JSON,具有文件内容、元数据和二进制文件检测功能。
5. get_wiki_pages
访问Azure DevOps维基页面及其内容。
参数:
project_name(必填):Azure DevOps项目的名称wiki_id_or_name(必填):Wiki标识符或名称path(可选):特定wiki页面路径(默认为root)organization_url(可选):Azure DevOps组织URL
退货: JSON,包含wiki页面内容、元数据和URL。
先决条件
- Python 3.13或更高版本
- Azure DevOps个人访问令牌(PAT),参考https://github.com/microsoft/azure-devops-python-api
- 访问Azure DevOps组织
安装
- 克隆此存储库:
git clone <repository-url>
cd azdo-mcp
- 使用uv安装依赖项:
pip install uv
uv lock
uv sync
配置
环境变量
创建一个 .env 项目根目录中的文件,包含以下变量:
AZURE_DEVOPS_PAT=your_personal_access_token_here
AZURE_DEVOPS_ORG_URL=https://dev.azure.com/your-organization
Azure DevOps设置
-
在Azure DevOps中生成个人访问令牌(PAT):
- 转到Azure DevOps→ 用户设置→ 个人访问令牌
- 创建具有适当作用域的新令牌(代码:读取,Wiki:读取,项目和团队:读取)
-
记下您的组织URL(通常
https://dev.azure.com/your-organization)
用法
运行服务器
启动MCP服务器:
python main.py
服务器将使用服务器发送事件(SSE)传输在端口8080上启动。
发展
项目结构
azdo-mcp/
├── main.py # Main MCP server implementation
├── pyproject.toml # Project configuration
├── .env # Environment variables (create this)
├── README.md # This file
备注:此服务器提供对Azure DevOps资源的只读访问。确保您已经查看了个人访问令牌(PAT)访问所需资源的必要权限和范围。
另请参阅 Azure DevOps Python API文档 有关可用操作和配置的更多详细信息。
