Aliyun Yunxiao Projex Mcp

io.github.MrLinWang由 GitHub 帳號 MrLinWang 發布v0.1.3更新於 Nov 7, 2026

Alibaba Cloud Yunxiao Projex MCP with self-assignee detection and authenticated file downloads.

已驗證STDIO僅桌面效率與工作流開發者工具

概覽

AI 產生的概覽

阿里雲雲效 Projex 的 MCP 伺服器,讓助理讀取並管理單一專案的工作項、迭代、留言與成員。

可以做什麼
  • 讀取專案中繼資料、目前使用者、成員、工作項類型、欄位與狀態
  • 列出並取得工作項,可篩選「指派給我」的項目
  • 讀取並下載工作項附件,可存到本機路徑
  • 建立與更新工作項及其留言
  • 建立迭代,並在帶入確認參數後刪除工作項或留言
適用情境
適合團隊在阿里雲雲效 Projex 管理工作時使用,讓助理查詢、分派、更新或留言工作項與迭代,例如實作任務時同步狀態,或把 PR 連結寫回工作項。
執行需求
以 stdio 在本機執行,通常透過 uvx 從 PyPI 啟動,需要 Python/uv 執行環境。需要雲效 Bot 的 AccessKey ID 與 Secret(YUNXIAO_USER_ACCESS_KEY_ID、YUNXIAO_USER_ACCESS_KEY_SECRET)、組織 ID(YUNXIAO_API_ORG_ID)與專案 ID(YUNXIAO_API_PROJECT_ID);YUNXIAO_USER_NAME 與 YUNXIAO_API_ENDPOINT 為選填。需要可連線雲效 API 的網路。
安裝前請注意
AccessKey Secret 屬於憑證,不應提交到版本庫。所有工具只作用於設定的專案,但寫入類工具會建立與更新工作項、留言與迭代,刪除類工具會刪除工作項與留言(需傳 confirm=true)。Bot 角色無法修改專案欄位或管理成員,工作項刪除為非同步生效。附件以 Bot Key 下載,並可存到本機磁碟。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Aliyun Yunxiao Projex Mcp,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

云效 Projex 项目管理 MCP

[PyPI] [License: MIT]

An MCP server for Alibaba Cloud Yunxiao (阿里云云效) Projex project management. It exposes work items, sprints, comments, members, current-user identity, project metadata and authenticated file downloads as MCP tools over stdio.

基于阿里云云效 Projex OpenAPI 的 MCP 服务。使用 YUNXIAO_USER_* Bot Key,所有工具固定作用于 YUNXIAO_API_PROJECT_ID 指定的项目,无法访问其他项目。

安装

从 PyPI 运行,无需本地克隆:

bash
uvx yunxiao-projex-mcp

或安装到本地环境:

bash
uv tool install yunxiao-projex-mcp

本地开发:

bash
uv sync --all-extras

配置

支持以下环境变量:

变量必填说明
YUNXIAO_USER_ACCESS_KEY_ID是云效 Bot AccessKey ID
YUNXIAO_USER_ACCESS_KEY_SECRET是云效 Bot AccessKey Secret
YUNXIAO_USER_NAME否当前 AccessKey 用户的云效显示名(如 yunxiao-bot);设置后严格校验,省略时自动识别
YUNXIAO_API_ORG_ID是云效组织 ID
YUNXIAO_API_PROJECT_ID是云效 Projex 项目 ID
YUNXIAO_API_ENDPOINT否默认 devops.cn-hangzhou.aliyuncs.com

标准 mcpServers 配置(Magpie / Claude Desktop / Cursor 等通用):

json
{  "mcpServers": {    "aliyun-yunxiao-projex": {      "command": "uvx",      "args": ["yunxiao-projex-mcp"],      "env": {        "YUNXIAO_USER_ACCESS_KEY_ID": "your-access-key-id",        "YUNXIAO_USER_ACCESS_KEY_SECRET": "your-access-key-secret",        "YUNXIAO_USER_NAME": "yunxiao-bot",        "YUNXIAO_API_ORG_ID": "your-organization-id",        "YUNXIAO_API_PROJECT_ID": "your-project-id",        "YUNXIAO_API_ENDPOINT": "devops.cn-hangzhou.aliyuncs.com"      }    }  }}

YUNXIAO_API_ENDPOINT 可省略,省略时使用默认值;YUNXIAO_USER_NAME 也可省略,MCP 会通过当前 AccessKey 自动识别。 如果设置 YUNXIAO_USER_NAME,值必须与当前 AccessKey 用户在云效的显示名完全一致(不是 AccessKey ID,也不是 aliyun_ram:... 完整 username)。 多个 Agent 要区分身份时,必须各自使用独立的 AccessKey;共享同一个 AccessKey 会被视为同一个用户。

本地 .env

从源码运行时,可在项目根目录放置 .env:

dotenv
YUNXIAO_API_ORG_ID=...YUNXIAO_API_PROJECT_ID=...YUNXIAO_API_ENDPOINT=devops.cn-hangzhou.aliyuncs.comYUNXIAO_USER_ACCESS_KEY_ID=...YUNXIAO_USER_ACCESS_KEY_SECRET=...YUNXIAO_USER_NAME=yunxiao-bot

建议执行 chmod 600 .env,并确保 .env 不被提交到版本库。

接入 Codex

bash
codex mcp add aliyun-yunxiao-projex \  --env YUNXIAO_API_ORG_ID=... \  --env YUNXIAO_API_PROJECT_ID=... \  --env YUNXIAO_USER_ACCESS_KEY_ID=... \  --env YUNXIAO_USER_ACCESS_KEY_SECRET=... \  --env YUNXIAO_USER_NAME=yunxiao-bot \  -- uvx yunxiao-projex-mcpcodex mcp list

等价的 ~/.codex/config.toml 配置:

toml
[mcp_servers.aliyun-yunxiao-projex]command = "uvx"args = ["yunxiao-projex-mcp"]
[mcp_servers.aliyun-yunxiao-projex.env]YUNXIAO_API_ORG_ID = "..."YUNXIAO_API_PROJECT_ID = "..."YUNXIAO_USER_ACCESS_KEY_ID = "..."YUNXIAO_USER_ACCESS_KEY_SECRET = "..."YUNXIAO_USER_NAME = "yunxiao-bot"

接入 Magpie

该服务已发布到官方 MCP Registry,名称为 io.github.MrLinWang/aliyun-yunxiao-projex-mcp。在 Magpie 的 Discover 中搜索 yunxiao、projex、aliyun 或 mcp 即可找到,安装时按提示填写环境变量。

也可以直接编辑 Magpie 的 MCP 配置,使用上面的 mcpServers JSON 片段。

配套 Skill

仓库中的 skills/yunxiao-projex/ 是配合本 MCP 使用的 Agent Skill,包含查询、写入、工作项生命周期状态同步、自身负责人识别和附件下载约定。 在仓库根目录执行以下命令,链接到 Codex 技能目录,后续 git pull 会自动同步。 如果目标位置已有实体目录,先移走,避免在其中生成嵌套链接:

bash
mkdir -p "${CODEX_HOME:-$HOME/.codex}/skills"ln -sfn "$PWD/skills/yunxiao-projex" "${CODEX_HOME:-$HOME/.codex}/skills/yunxiao-projex"

该 Skill 依赖已配置的 aliyun-yunxiao-projex MCP(若注册为其他名称,工具前缀会随之变化), 不会另行保存或读取云效凭据。 新增或修改 MCP 工具、参数或权限边界时,应同步更新该 Skill,并运行:

bash
python3 "${CODEX_HOME:-$HOME/.codex}/skills/.system/skill-creator/scripts/quick_validate.py" \  skills/yunxiao-projex

工具

只读:get_project、get_current_user、list_project_members、list_workitem_types、list_workitem_fields、list_workitem_statuses、list_workitems、get_workitem、get_workitem_file、list_workitem_comments、list_sprints、get_sprint。

写入:create_workitem、update_workitem、create_workitem_comment、update_workitem_comment、create_sprint。

删除:delete_workitem、delete_workitem_comment,均要求 confirm=true。

使用约定

  • assigned_to、owner_ids、participants、trackers、verifier 使用项目成员的账号 ID,可通过 list_project_members 获取。
  • 判断工作项负责人是否为自己时,调用 get_current_user 获取当前用户的 identifier,或直接使用 list_workitems 的 assigned_to_me=true;list_workitems/get_workitem 返回的 isMine 为 true/false。isMine 为 null 表示未配置 YUNXIAO_USER_NAME 且自动识别失败,可调用 get_current_user 查看原因。
  • YUNXIAO_USER_NAME 只用于识别当前用户,不能直接传给 assigned_to;assigned_to 仍使用成员 identifier。
  • 提交 PR 后,Skill 会把实际 PR 链接写回对应云效工作项的评论;已有交付评论时优先更新,不能只写在最终答复里。
  • 创建工作项前先查 list_workitem_types、list_workitem_fields 和 list_workitem_statuses;必填自定义字段(例如 priority)通过 custom_fields 传入选项 ID。
  • 实现或修复已绑定的工作项时,Skill 会先读取当前状态流并按阶段推进:开工进入进行中,交付进入验证态,验收后再关闭;只读查询不改状态。
  • list_project_members 内部固定使用 targetType=Space。
  • 描述和评论默认使用 Markdown;日期使用 YYYY-MM-DD。
  • get_workitem_file 使用 Bot Key 认证获取下载地址并下载内容。传入工作项 identifier(workitem_id)及描述等富文本图片 URL 中的 fileIdentifier(file_id);PNG、JPEG、GIF、WebP 以图片内容返回,其他文件以 Base64 嵌入资源返回,最大 10 MiB。
  • 客户端只读取 structuredContent、不渲染 MCP 图片块时,给 get_workitem_file 传 save_to(目录或完整文件名)将附件保存到本地;返回 JSON 中的 path 可直接用于 view_image 等本地查看工具。
  • 删除评论和删除工作项会先校验资源属于当前项目,再执行删除;工作项删除为异步生效,列表索引可能需要数秒刷新。
  • create_workitem_comment 默认创建顶级评论,回复评论时才需要传 parent_id。

权限限制

  • 当前 Bot 角色为“开发机器人”,修改项目字段、管理项目成员会返回 403。
  • 不包含工时/预估、附件上传、工作项关联、工作项动态、项目创建/删除、迭代修改/删除。
  • 代码库与流水线不在本服务范围内。

测试

bash
.venv/bin/python -m pytest -m "not live"YUNXIAO_LIVE_TESTS=1 .venv/bin/python -m pytest -m "live and not live_write"YUNXIAO_LIVE_TESTS=1 YUNXIAO_LIVE_WRITE_TESTS=1 .venv/bin/python -m pytest -m live_write

写入测试会创建 __mcp_probe__ 临时工作项并在结束时删除;create_sprint 不做线上写入测试,因为云效未提供删除迭代接口。

许可证

MIT

來源:README.md,提交 bae17fd

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

3
  1. v0.1.3最新Nov 7, 2026
  2. v0.1.2Nov 5, 2026
  3. v0.1.0Nov 4, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分