
DingTalk MCP Server V2

2025.01.06
3
Python钉钉机器人消息服务日历管理交流协作日程管理
DingTalk MCP Server V2 是一个基于 MCP (Model Control Protocol) 的钉钉机器人服务器实现。它提供了与钉钉进行交互的各种功能,包括发送消息、获取会话信息、用户信息和日历事件等。
View on GitHub
Overview
基本能力
产品定位
DingTalk MCP Server V2 是一个钉钉机器人服务器,主要用于与钉钉平台进行交互,实现消息发送、会话管理、用户信息查询和日历事件管理等功能。
核心功能
- 发送消息到钉钉会话(支持多种消息类型:文本、Markdown、链接等)
- 获取钉钉会话信息
- 获取钉钉用户信息
- 查询用户日历事件
适用场景
- 企业内部沟通自动化
- 钉钉机器人开发
- 钉钉日历事件管理
- 钉钉用户信息查询
工具列表
- send_message: 发送消息到钉钉会话
- 参数:conversation_id(会话 ID)、message(消息内容)、msg_type(消息类型,默认为 text)
- get_conversation_info: 获取钉钉会话信息
- 参数:conversation_id(会话 ID)
- get_user_info: 获取钉钉用户信息
- 参数:user_id(用户 ID)
- get_calendar_list: 查询用户的日历事件列表
- 参数:userid(用户 ID)、start_time(开始时间戳)、end_time(结束时间戳)、max_results(最大返回结果数,默认 50)、next_token(分页 token)
常见问题解答
- 安全性问题
- 妥善保管钉钉 API 凭证
- 不要在公共场合分享配置文件
- 建议使用环境变量而不是硬编码凭证
- 故障排除
- 检查 API 凭证是否正确
- 确保网络连接正常
- 查看日志输出了解详细错误信息
使用教程
使用依赖
- Python 3.10+
- MCP 0.1.0+
- aiohttp 3.9.1+
安装教程
本地安装
pip install -r requirements.txt
Docker 安装
# 清理旧容器
docker ps -a | grep mcp-dingding-v2 | awk '{print $1}' | xargs -r docker rm -f
# 构建并运行新容器
docker build -t dingding-mcp-v2 .
docker run -i --rm --name mcp-dingding-v2 \
-e DINGTALK_APP_KEY=your_app_key \
-e DINGTALK_APP_SECRET=your_app_secret \
dingding-mcp-v2
调试方式
直接运行服务器
python src/server.py
在 Claude 客户端中使用
- 在
claude_desktop_config.json
中添加配置:
{
"mcpServers": {
"dingding": {
"command": "sh",
"args": [
"-c",
"docker ps -a | grep mcp-dingding-v2 | awk '{print $1}' | xargs -r docker rm -f > /dev/null 2>&1; docker pull ghcr.io/wllcnm/mcp-dingding-v2:latest > /dev/null 2>&1; docker run -i --rm --name mcp-dingding-v2 -e DINGTALK_APP_KEY=你的AppKey -e DINGTALK_APP_SECRET=你的AppSecret ghcr.io/wllcnm/mcp-dingding-v2:latest"
]
}
}
}
- 重启 Claude 客户端