Azure DevOps MCP 服务器

项目简介

本项目 'azure-devops-mcp-server' 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在为大型语言模型 (LLM) 应用提供与 Azure DevOps 工作项进行交互的能力。通过此服务器,LLM 可以获取 Azure DevOps 中的工作项信息,并执行创建、更新、删除工作项等操作,从而实现智能化的项目管理和任务协同。

主要功能点

  • 资源 (Resources):
    • 获取最近的工作项列表
    • 根据ID获取单个工作项的详细信息
    • 根据ID列表批量获取工作项信息
  • 工具 (Tools):
    • 创建新的工作项(例如:用户故事、任务)
    • 根据ID删除工作项
    • 更新工作项的字段(例如:标题、描述、状态等)
  • Prompt 模板 (Prompts):
    • 生成用于分析工作项的 Prompt,帮助 LLM 理解工作项内容和状态
    • 生成用于建议更新工作项的 Prompt,辅助用户进行工作项的修改

安装步骤

  1. 克隆仓库:
    git clone https://github.com/munishm/azure-devops-mcp-server.git
    cd azure-devops-mcp-server
  2. 安装依赖: 确保已安装 Python 和 pip,然后运行以下命令安装项目依赖:
    pip install fastmcp python-dotenv requests
  3. 配置环境变量: 在项目根目录下创建 '.env' 文件,并填入以下 Azure DevOps 相关的环境变量:
    ORGANIZATION=<您的Azure DevOps组织名称>
    PROJECT=<您的Azure DevOps项目名称>
    AZURE_DEVOPS_PAT=<您的Azure DevOps个人访问令牌>
    # BASE_URL=https://dev.azure.com  (可选,默认为 dev.azure.com,如果使用Azure DevOps Server,请修改此项)
    请将 '<您的Azure DevOps组织名称>'、'<您的Azure DevOps项目名称>'、'<您的Azure DevOps个人访问令牌>' 替换为您的实际信息。 个人访问令牌 (PAT) 需要在 Azure DevOps 中生成,并赋予足够的操作工作项的权限。

服务器配置

MCP 客户端需要以下 JSON 配置信息来启动和连接 'azure-devops-mcp-server':

{
  "serverName": "azure-devops-work-items-manager",
  "command": "python",
  "args": ["azure_devops_work_items_mcp.py"]
}
  • 'serverName': 自定义的服务名称,用于在 MCP 客户端中标识该服务器。
  • 'command': 启动服务器的命令,这里使用 'python' 解释器。
  • 'args': 命令参数,指定了服务器脚本的路径 'azure_devops_work_items_mcp.py'。请确保在 MCP 客户端启动时,当前工作目录是 'azure_devops-mcp-server' 仓库的根目录,或者提供脚本的完整路径。

基本使用方法

  1. 启动 MCP 服务器: 在配置好 MCP 客户端后,启动名为 'azure-devops-work-items-manager' 的服务器。服务器将通过标准输入/输出 (stdio) 与 MCP 客户端进行通信。

  2. 通过 MCP 客户端与 Azure DevOps 交互: 使用 MCP 客户端,你可以向 'azure-devops-work-items-manager' 服务器发送符合 MCP 协议的 JSON-RPC 请求,以访问资源、调用工具或获取 Prompt。

    • 资源示例: 例如,使用资源 URI 'workitems://recent' 可以获取最近的工作项列表。
    • 工具示例: 调用工具 'create_work_item' 并提供 'type'、'title' 和 'description' 参数,可以在 Azure DevOps 中创建一个新的工作项。
    • Prompt 示例: 调用 Prompt 'analyze_work_item' 并提供 'work_item_id' 参数,可以生成一个用于分析指定工作项的 Prompt。

    具体的资源、工具和 Prompt 的 URI 和参数定义,请参考 'azure_devops_work_items_mcp.py' 文件中的代码注释和 '@mcp.resource', '@mcp.tool', '@mcp.prompt' 装饰器的使用方式。

信息

分类

开发者工具