Skip to main content
Glama

PingCode MCP

讓 VS Code、Cursor、Qoder、ZCode 等 Coding Agent 安全連接 PingCode:讀取 Wiki、工作項目、Test Case 與測試庫上下文,並以 Preview → Approval → Commit 流程控管寫入與同步。適合 UAT 規劃、需求追蹤和測試資料維護,不提供任意 REST API 代理。

支援範圍

支援 Wiki、Task/工作項目、Test Case、測試庫、Project、Ship、Relation、使用者與成員角色的讀取,以及受控的 Task/Test Case、Project、Test Library、Ship、Relation、成員角色與需求模組寫入流程。寫入固定要求獨立權限、Preview、有效 Approval、幂等與稽核。

不支援 Wiki 寫入、Task/Project/Test Library/Idea 刪除或任意 PingCode REST API 代理;也不會主動刪除關係另一端資源。

Related MCP server: gitbook-mcp

快速安裝(推薦)

需要 Node.js 20 以上,以及在 PingCode 建立的 enterprise 應用程式憑據。npm 套件是 scoped package @xurenxiang1219/pingcode-mcp;請保留 scope,避免安裝到另一個同名套件。

1. 設定 PingCode 憑據

有兩種方式,選一種即可。

推薦:使用私有環境檔

.env.stdio.local.example 複製到只供本機使用的位置(例如 /absolute/private/path/pingcode-mcp.env),填入:

PINGCODE_AUTH_MODE=enterprise
PINGCODE_CLIENT_ID=your-pingcode-client-id
PINGCODE_CLIENT_SECRET=your-pingcode-client-secret

懶人模式:直接放進 Client 的 env

不想另外建立環境檔時,可以直接在 MCP 設定的 env 中加入:

"env": {
  "PINGCODE_AUTH_MODE": "enterprise",
  "PINGCODE_CLIENT_ID": "your-pingcode-client-id",
  "PINGCODE_CLIENT_SECRET": "your-pingcode-client-secret"
}

這種方式最省事,但 Secret 會以明文保存在 Client 設定檔,只建議用於個人本機;不要提交、同步或分享該設定。stdio 模式會在程序記憶體中產生短效 Approval Secret,不需要手動產生或貼上 Approval Token。

2. 連接 MCP Client

VS Code

在終端機執行以下命令,將 Server 加入 VS Code 的 MCP 設定。請把環境檔路徑換成你的絕對路徑:

code --add-mcp '{"name":"pingcode","command":"npx","args":["-y","@xurenxiang1219/pingcode-mcp","--stdio","--env-file","/absolute/private/path/pingcode-mcp.env"]}'

不想建立環境檔時,也可以直接在命令中傳入憑據:

code --add-mcp '{"name":"pingcode","command":"npx","args":["-y","@xurenxiang1219/pingcode-mcp","--stdio"],"env":{"PINGCODE_AUTH_MODE":"enterprise","PINGCODE_CLIENT_ID":"your-pingcode-client-id","PINGCODE_CLIENT_SECRET":"your-pingcode-client-secret"}}'

直接傳入的 Secret 會保存在 VS Code MCP 設定中,只建議用於個人本機;不要提交、同步或分享該設定。

也可以在工作區 .vscode/mcp.json 使用相同的 stdio Server;本 repository 已提供可直接使用的範例。

Cursor、Qoder、ZCode

這些 Client 使用 mcpServers 設定。將下列區塊放入各自的 MCP 設定檔(或在設定介面新增同等欄位),並替換環境檔的絕對路徑:

{
  "mcpServers": {
    "pingcode": {
      "command": "npx",
      "args": [
        "-y",
        "@xurenxiang1219/pingcode-mcp",
        "--stdio",
        "--env-file",
        "/absolute/private/path/pingcode-mcp.env"
      ]
    }
  }
}

不想建立環境檔時,使用下面的完整設定,直接填入 Client ID 與 Client Secret:

{
  "mcpServers": {
    "pingcode": {
      "command": "npx",
      "args": ["-y", "@xurenxiang1219/pingcode-mcp", "--stdio"],
      "env": {
        "PINGCODE_AUTH_MODE": "enterprise",
        "PINGCODE_CLIENT_ID": "your-pingcode-client-id",
        "PINGCODE_CLIENT_SECRET": "your-pingcode-client-secret"
      }
    }
  }
}

如 Client 不支援 --env-file 參數,也可改用 env 傳入 PINGCODE_ENV_FILE,讓 Server 從私有環境檔讀取:

{
  "mcpServers": {
    "pingcode": {
      "command": "npx",
      "args": ["-y", "@xurenxiang1219/pingcode-mcp", "--stdio"],
      "env": {
        "PINGCODE_ENV_FILE": "/absolute/private/path/pingcode-mcp.env"
      }
    }
  }
}

3. 啟動與首次寫入

啟動後先使用 Preview Tool 檢視變更,再由 Agent 呼叫對應的 Commit Tool。Server 會驗證 Preview hash、Approval Context、會話綁定、request hash、幂等鍵並記錄 auditId;是否顯示額外的 MCP Client 確認由 PINGCODE_WRITE_CONFIRMATION 控制(預設 required)。

stdio 本機模式不要求使用者手動生成 Approval Token;是否顯示額外確認由 PINGCODE_WRITE_CONFIRMATION 決定。

認證與環境變數

最小 stdio 設定只有以下三項:

變數

說明

PINGCODE_AUTH_MODE

stdio 使用 enterprise

PINGCODE_CLIENT_ID

PingCode 應用程式 Client ID

PINGCODE_CLIENT_SECRET

PingCode 應用程式 Client Secret;建議放在私有環境檔或 Secret Manager,個人本機可直接設在 Client env

程式也支援 --env-file /path/to/file--env-file=/path/to/file,以及 PINGCODE_ENV_FILE。未指定時才會嘗試目前 package 目錄下的 .env

進階:從原始碼執行

適合需要修改程式、執行測試或使用工作區 .vscode/mcp.json 的情境:

git clone https://github.com/xurenxiang1219/pingcode-mcp.git
cd pingcode-mcp
npm ci
cp .env.stdio.local.example .env
# 編輯 .env,填入 PINGCODE_CLIENT_ID 與 PINGCODE_CLIENT_SECRET
npm run build

完成後可在 VS Code 開啟此資料夾。.vscode/mcp.json 會以 ${workspaceFolder}/dist/index.js --stdio 啟動 Server,並讀取同資料夾的 .env

也可以直接啟動 npm 套件:

npx -y @xurenxiang1219/pingcode-mcp --stdio --env-file /absolute/private/path/pingcode-mcp.env

首次發佈由 package 維護者執行 npm login 後再執行 npm publish --access public;本 repository 不會在開發或測試時自動發佈。

工具

唯讀與上下文

  • pingcode_uat_runtime_info

  • pingcode_wiki_list_spaces

  • pingcode_wiki_list_pages

  • pingcode_wiki_get_requirement_context

  • pingcode_task_list

  • pingcode_task_get

  • pingcode_test_case_list

  • pingcode_test_case_get

  • pingcode_project_list

  • pingcode_work_item_metadata_get

  • pingcode_test_library_list

  • pingcode_test_library_get

  • pingcode_test_case_metadata_get

  • pingcode_user_list

  • pingcode_role_list

  • pingcode_user_search

  • pingcode_project_context_get

  • pingcode_project_context_save

  • pingcode_ship_product_list

  • pingcode_ship_product_get

  • pingcode_ship_idea_list

  • pingcode_ship_product_idea_list

  • pingcode_ship_idea_get

  • pingcode_ship_product_suite_list

  • pingcode_ship_product_suite_get

  • pingcode_relation_list

  • pingcode_relation_get

  • pingcode_member_role_get

Preview、Commit 與受控寫入

  • pingcode_test_case_delete_preview / pingcode_test_case_delete_commit

  • pingcode_test_case_bulk_create_preview / pingcode_test_case_bulk_create_commit

  • pingcode_ship_product_sync_preview / pingcode_ship_product_sync_commit

  • pingcode_ship_idea_sync_preview / pingcode_ship_idea_sync_commit

  • pingcode_task_sync_preview / pingcode_task_sync_commit

  • pingcode_test_case_sync_preview / pingcode_test_case_sync_commit

  • pingcode_ship_product_suite_create_preview / pingcode_ship_product_suite_create_commit

  • pingcode_ship_product_suite_remove_preview / pingcode_ship_product_suite_remove_commit

  • pingcode_relation_sync_preview / pingcode_relation_sync_commit

  • pingcode_member_role_update_preview / pingcode_member_role_update_commit

  • pingcode_project_create_preview / pingcode_project_create_commit

  • pingcode_test_library_create_preview / pingcode_test_library_create_commit

安全機制與限制

  • 唯讀與 Preview Tool 不修改 PingCode;所有 Commit Tool 都需要有效 Approval、不可變 request hash、Preview 證據、Approval Context、會話綁定和 idempotency key。

  • PingCode 寫入請求不自動重試;結果不確定時,先用對應唯讀 Tool 回讀確認。

  • Test Case 刪除必須先 Preview,再由獨立 Commit Tool 執行;完成後 MCP 會回讀確認用例不存在,並保留 Approval、hash、幂等鍵與稽核資料。

  • 資源名稱、ID、成員與其他候選都必須來自 PingCode 目錄或使用者明確確認,不得猜測,也不得用空字串、@* 作為通配符。

  • 需要建立 private 專案或重用既有上下文時,Agent 必須先取得使用者確認;沒有確認的唯一候選也不能直接套用。

  • Client ID、Client Secret、Token、Cookie 與客戶資料只應放在本機私有環境或 Secret Manager,不要提交、同步或分享。

本機開發驗證

npm run typecheck
npm test
npm run build

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

No tool schema history has been recorded yet.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/xurenxiang1219/pingcode-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server