IDE DevOps MCP-Python版本
这是IDE DevOps MCP(模型上下文协议)服务器的Python实现。
安装
pip install azure-devops-mcp用法
服务器支持两种模式:
- stdio模式:用于MCP客户端连接(默认)
- http模式:用于web服务端点
python -m azure_devops_mcp [organization] [options]组织配置
组织名称可以通过两种方式提供:
- 命令行参数:
python -m azure_devops_mcp myorg - 环境变量:设置
AZURE_DEVOPS_ORG=myorg(适用于Azure Web App部署)
如果两者都提供,则命令行参数优先。
选项
organization:Azure DevOps组织名称(如果是可选的AZURE_DEVOPS_ORG设置环境变量)--domains,-d:域启用:“all”代表一切,或特定域,如“repositories build work”。默认为“全部”。--authentication,-a:要使用的身份验证类型。支持的值是“interactive”、“azcli”和“env”(默认值:“interactive“)--tenant,-t:Azure租户ID(可选,在使用“交互式”和“azcli”类型的身份验证时应用)--mode,-m:服务器模式:“stdio”用于MCP客户端连接,“http”用于web服务(默认值:“stdio”)--host:HTTP服务器主机(当模式=HTTP时,默认值:'127.0.0.1')--port,-p:HTTP服务器端口(当模式=HTTP时,默认值:8000)
例子
# Basic usage with stdio mode (for MCP clients)
python -m azure_devops_mcp myorg
# Using environment variable (great for Azure Web Apps)
export AZURE_DEVOPS_ORG=myorg # Linux/Mac
# or
set AZURE_DEVOPS_ORG=myorg # Windows CMD
# or
$env:AZURE_DEVOPS_ORG="myorg" # PowerShell
python -m azure_devops_mcp
# HTTP server mode for web service
python -m azure_devops_mcp myorg --mode http --port 8080
# Use specific domains only
python -m azure_devops_mcp myorg --domains repositories pipelines
# Use Azure CLI authentication
python -m azure_devops_mcp myorg --authentication azcli
# Environment variable authentication with HTTP mode (ideal for cloud deployments)
export AZURE_DEVOPS_ORG=myorg
python -m azure_devops_mcp --authentication env --mode http --host 0.0.0.0 --port 8000HTTP服务器模式
在HTTP模式下运行时,服务器为MCP工具提供web API。这有助于:
- 需要Azure DevOps集成的Web应用程序
- 没有MCP客户端的测试工具
- 构建自定义集成
- Azure Web应用程序部署
传统HTTP模式(环境变量)
python -m azure_devops_mcp myorg --mode httpPAT标头身份验证(建议用于API)
# Start server with PAT authentication mode
python -m azure_devops_mcp myorg --mode http --authentication pat
# Client requests must include PAT in header
curl -X POST "http://127.0.0.1:8000/mcp" \
-H "Content-Type: application/json" \
-H "X-Azure-DevOps-PAT: your-personal-access-token" \
-d '{"method": "tools/call", "params": {"name": "test_connection", "arguments": {}}}'访问 http://127.0.0.1:8000/ 获取服务器信息和可用端点。
备注:PAT身份验证(--authentication pat)仅在HTTP模式下可用,并要求客户端在 X-Azure-DevOps-PAT 每个请求的标题。
发展
设置
git clone https://github.com/microsoft/azure-devops-mcp.git
cd azure-devops-mcp/python-version
pip install -e ".[dev]"测试
pytest代码格式化
black .
ruff check .许可证
MIT许可证-有关详细信息,请参阅License.md。
