Dingtalk Calendar

👤 javazhengwu 📦 v1.0.2 ⭐ 4.2 ⬇️ 2.8K 下載
📄 辦公效率 免費

📖 技能介紹


name: dingtalk-calendar description: 釘釘日程管理(建立日程、查詢閒忙、會議室預訂)。使用 mcporter CLI 連線釘釘 MCP server 執行日程管理、日程查詢、會議室預訂等操作。使用場景:日程建立管理、會議預訂、查詢他人閒忙、會議室預約等。


釘釘日程管理

使用 mcporter CLI 呼叫釘釘日曆 MCP 建立和管理日程。

前置要求

安裝 mcporter CLI

7w4.net收錄了海量優質技能外掛。

本技能依賴 mcporter 工具。請在終端中手動執行以下命令安裝:

# 使用 npm 安裝
npm install -g mcporter

# 或使用 bun 安裝
bun install -g mcporter

驗證安裝:

mcporter --version

配置 MCP Server

本技能需要配置兩個 MCP 服務:釘釘日曆釘釘通訊錄

步驟一:獲取 Streamable HTTP URL

  1. 訪問釘釘 MCP 廣場:https://mcp.dingtalk.com
  2. 搜尋 釘釘日曆,點選進入服務詳情頁
  3. 在頁面右側找到 Streamable HTTP URL,點選複製按鈕
  4. 同樣的方法,獲取 釘釘通訊錄 的 URL

步驟二:使用 mcporter 配置 MCP 服務

# 新增釘釘日曆 MCP 服務
mcporter config add dingtalk-calendar --url "這裡貼上釘釘日曆的URL"

# 新增釘釘通訊錄 MCP 服務  
mcporter config add dingtalk-contacts --url "這裡貼上釘釘通訊錄的URL"

步驟三:驗證配置

# 檢視已配置的服務
mcporter config list

# 測試連線(列出可用工具)
mcporter call dingtalk-calendar list_tools --output json
mcporter call dingtalk-contacts list_tools --output json

基本命令模式

所有操作通過 mcporter call dingtalk-calendar <tool> 執行:

# 建立日程
mcporter call dingtalk-calendar create_calendar_event \
  --args '{"summary":"會議","startDateTime":"2026-02-28T14:00:00+08:00","endDateTime":"2026-02-28T15:00:00+08:00"}' \
  --output json

# 查詢日程
mcporter call dingtalk-calendar list_calendar_events \
  --args '{"startTime":1738128000000,"endTime":1738214400000}' \
  --output json

# 查詢閒忙
mcporter call dingtalk-calendar query_busy_status \
  --args '{"userIds":["userId1"],"startTime":1738128000000,"endTime":1738214400000}' \
  --output json

核心工具

1. 建立日程

# 基本建立
mcporter call dingtalk-calendar create_calendar_event \
  --args '{
    "summary": "專案評審會議",
    "startDateTime": "2026-02-28T14:00:00+08:00",
    "endDateTime": "2026-02-28T15:00:00+08:00",
    "description": "討論 Q1 進度",
    "attendees": ["userId1", "userId2"]
  }' \
  --output json

引數說明: | 引數 | 必填 | 說明 | |------|------|------| | summary | ✅ | 日程標題(最長 2048 字元) | | startDateTime | ✅ | 開始時間(ISO-8601 格式,如 2026-02-28T14:00:00+08:00) | | endDateTime | ✅ | 結束時間(ISO-8601 格式) | | description | ❌ | 日程描述(最長 5000 字元) | | attendees | ❌ | 參與人 userId 列表(最多 500 人) |

2. 查詢日程列表

# 查詢指定時間範圍的日程
mcporter call dingtalk-calendar list_calendar_events \
  --args '{
    "startTime": 1738128000000,
    "endTime": 1738214400000
  }' \
  --output json

3. 查詢他人閒忙

mcporter call dingtalk-calendar query_busy_status \
  --args '{
    "userIds": ["userId1", "userId2"],
    "startTime": 1738128000000,
    "endTime": 1738214400000
  }' \
  --output json

4. 查詢空閒會議室

mcporter call dingtalk-calendar query_available_meeting_room \
  --args '{
    "startTime": "1738128000000",
    "endTime": "1738131600000"
  }' \
  --output json

5. 為日程新增會議室

mcporter call dingtalk-calendar add_meeting_room \
  --args '{
    "eventId": "日程ID",
    "roomIds": ["會議室ID1"]
  }' \
  --output json

6. 更新日程

mcporter call dingtalk-calendar update_calendar_event \
  --args '{
    "eventId": "日程ID",
    "summary": "新標題",
    "description": "新描述"
  }' \
  --output json

7. 刪除日程

mcporter call dingtalk-calendar delete_calendar_event \
  --args '{"eventId": "日程ID"}' \
  --output json

通訊錄工具

搜尋使用者

mcporter call dingtalk-contacts search_user_by_key_word \
  --args '{"keyWord": "張三"}' \
  --output json

獲取使用者詳情

mcporter call dingtalk-contacts get_user_info_by_user_ids \
  --args '{"user_id_list": ["userId1", "userId2"]}' \
  --output json

常用時間格式

import time
from datetime import datetime

# 獲取當前時間戳(毫秒)
int(time.time() * 1000)

# 時間戳轉 ISO 8601
datetime.fromtimestamp(1738128000000 / 1000).strftime("%Y-%m-%dT%H:%M:%S+08:00")

# ISO 8601 轉時間戳(毫秒)
int(datetime.fromisoxt("2026-02-28T14:00:00+08:00").timestamp() * 1000)

使用示例

建立會議並預訂會議室

# 1. 查詢14:00-15:00的空閒會議室
mcporter call dingtalk-calendar query_available_meeting_room \
  --args '{"startTime":"1738128000000","endTime":"1738131600000"}' \
  --output json

# 2. 建立日程(假設獲取到會議室ID: room123)
mcporter call dingtalk-calendar create_calendar_event \
  --args '{
    "summary": "週會",
    "startDateTime": "2026-02-28T14:00:00+08:00",
    "endDateTime": "2026-02-28T15:00:00+08:00"
  }' \
  --output json

# 3. 新增會議室(假設日程ID: event123)
mcporter call dingtalk-calendar add_meeting_room \
  --args '{"eventId":"event123","roomIds":["room123"]}' \
  --output json

🤖 AI 評測

這個 Skill 質量中等偏上,功能實用,能滿足日程管理的基本需求。優點是指引清晰,新手也能快速上手,核心功能覆蓋完整。不足之處是版本資訊有些混亂,且缺少常見問題的解決方案,使用中遇到錯誤可能不知道如何處理。整體來說是一個可用但還有改進空間的工具。

📊 多維度評分

適應性4.3
規範性4
有效性4.4
可靠性3.8
可信度5

📁 包含檔案 (4 個)

📄 CHANGELOG.md 337 B
📄 SKILL.md 5.5 KB
📄 _meta.json 136 B
📄 package.json 737 B