CODING DevOps MCP Server 是一个基于 Model Context Protocol (MCP) 的服务器实现,用于与 CODING DevOps 平台进行交互。它提供了一套标准化的接口,使得用户可以方便地管理 CODING 平台上的项目和工作项。
功能特性
- 项目管理
- 列出用户可访问的项目
- 按项目名称搜索项目
- 工作项(Issues)管理
- 创建工作项
- 列出工作项
- 删除工作项
- 支持工作项类型、优先级等属性设置
安装
-
Clone this repository:
git clone https://github.com/yupengfei1209/coding_devops_mcp_server.git
cd coding_devops_mcp_server
-
Install dependencies:
npm install
-
Build the server:
npm run build
配置
服务器需要以下配置项:
- CODING Personal Access Token (必需)
- 项目名称 (可选)
添加到 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_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"
}
]