coding devops mcp server

Local 2025-09-01 00:37:41 0

Implements Model Context Protocol (MCP) to enable interaction with CODING DevOps platform through standardized interfaces for managing projects and work items.


CODING DevOps MCP Server 是一个基于 Model Context Protocol (MCP) 的服务器实现,用于与 CODING DevOps 平台进行交互。它提供了一套标准化的接口,使得用户可以方便地管理 CODING 平台上的项目和工作项。

功能特性

  • 项目管理
  • 列出用户可访问的项目
  • 按项目名称搜索项目
  • 工作项(Issues)管理
  • 创建工作项
  • 列出工作项
  • 删除工作项
  • 支持工作项类型、优先级等属性设置

安装

  1. Clone this repository:

    git clone https://github.com/yupengfei1209/coding_devops_mcp_server.git
    cd coding_devops_mcp_server

  2. Install dependencies:

    npm install

  3. Build the server:

    npm run build

配置

服务器需要以下配置项:

  1. CODING Personal Access Token (必需)
  2. 项目名称 (可选)

添加到 MCP Client

{
  "mcpServers": {
    "coding-devops": {
      "command": "node",
      "args": [
        "/your_path/coding_devops_mcp_server/build/index.js"
      ],
      "env": {
        "CODING_TOKEN": "coding-token",
        "PROJECT": "default project" // 默认项目,可选配置
      },
      "disabled": false,
      "autoApprove": []
    },
  }
}

功能

项目管理

  • list_projects: 列出用户可访问的项目
    // 可选参数
    {
      projectName?: string; // 按项目名称筛选
    }

工作项管理

  • list_work_items: 列出工作项

    // 参数
    {
      projectName: string;
      issueType?: string;
      limit?: string;
      offset?: string;
      sortKey?: string;
      sortValue?: string;
    }

  • create_work_item: 创建工作项

    // 参数
    {
      projectName: string;
      name: string;
      type: string;
      priority: string;
      description: string;
    }

  • delete_work_item: 删除工作项

    // 参数
    {
      projectName: string;
      issueCode: number;
    }

开发

项目结构

src/
├── api/               # API 实现
├── config/            # 配置相关
├── tools/            # 工具实现
│   ├── issue/        # 工作项相关功能
│   └── project/      # 项目相关功能
├── errors.ts         # 错误定义
└── index.ts         # 主入口文件

许可证

本项目采用 MIT 许可证。详见 LICENSE 文件。

[
  {
    "description": "查询我最近更新的工作项,可以根据其中IssueType查询,默认查询limit为20条",
    "inputSchema": {
      "properties": {
        "issueType": {
          "description": "事项类型,可选值为: ALL - 全部事项 DEFECT - 缺陷 REQUIREMENT - 需求 MISSION - 任务 EPIC - 史诗",
          "type": "string"
        },
        "limit": {
          "description": "事项数量,默认为20条",
          "type": "string"
        },
        "projectName": {
          "description": "项目名称",
          "type": "string"
        }
      },
      "required": [
        "projectName"
      ],
      "type": "object"
    },
    "name": "list_issues"
  },
  {
    "description": "创建新的工作项",
    "inputSchema": {
      "properties": {
        "description": {
          "description": "事项描述",
          "type": "string"
        },
        "name": {
          "description": "事项标题",
          "type": "string"
        },
        "priority": {
          "description": "优先级,可选值为:0 - 低 1 - 中 2 - 高 3 - 紧急",
          "type": "string"
        },
        "projectName": {
          "description": "项目名称",
          "type": "string"
        },
        "type": {
          "description": "事项类型,可选值为: DEFECT - 缺陷 REQUIREMENT - 需求 MISSION - 任务 EPIC - 史诗",
          "type": "string"
        }
      },
      "required": [
        "projectName",
        "name",
        "type",
        "priority",
        "description"
      ],
      "type": "object"
    },
    "name": "create_issue"
  },
  {
    "description": "删除工作项",
    "inputSchema": {
      "properties": {
        "issueCode": {
          "description": "事项编号",
          "type": "number"
        },
        "projectName": {
          "description": "项目名称",
          "type": "string"
        }
      },
      "required": [
        "projectName",
        "issueCode"
      ],
      "type": "object"
    },
    "name": "delete_issue"
  },
  {
    "description": "删除 CODING DevOps 中的指定项目",
    "inputSchema": {
      "properties": {
        "projectId": {
          "description": "要删除的项目ID",
          "type": "string"
        }
      },
      "required": [
        "projectId"
      ],
      "type": "object"
    },
    "name": "delete_project"
  },
  {
    "description": "查询当前用户在 CODING DevOps 中的项目列表",
    "inputSchema": {
      "properties": {
        "projectName": {
          "description": "项目名称,支持模糊匹配",
          "type": "string"
        }
      },
      "required": [],
      "type": "object"
    },
    "name": "list_projects"
  },
  {
    "description": "在 CODING DevOps 中创建新项目",
    "inputSchema": {
      "properties": {
        "description": {
          "description": "项目描述",
          "type": "string"
        },
        "displayName": {
          "description": "项目显示名称,用于展示的项目名称",
          "type": "string"
        },
        "name": {
          "description": "项目标识,用于系统内部标识项目",
          "type": "string"
        },
        "projectTemplate": {
          "description": "项目模版类型",
          "enum": [
            "DEV_OPS",
            "DEMO_BEGIN",
            "CHOICE_DEMAND",
            "PROJECT_MANAGE",
            "CODE_HOST"
          ],
          "type": "string"
        },
        "shared": {
          "description": "项目可见性设置(0:私有,1:公开),默认不公开",
          "enum": [
            "0",
            "1"
          ],
          "type": "string"
        }
      },
      "required": [
        "name",
        "displayName",
        "projectTemplate",
        "shared"
      ],
      "type": "object"
    },
    "name": "create_project"
  }
]