dingtalk-mcp 1.0.15 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +15 -16
- package/dingtalk_calendar_mcp_server.yaml +1 -0
- package/dingtalk_notice_mcp_server.yaml +41 -17
- package/dingtalk_robot_im_mcp_server.yaml +3 -7
- package/dist/DingTalkMCPServer.d.ts +1 -0
- package/dist/DingTalkMCPServer.js +54 -41
- package/dist/cli.js +4 -1
- package/dist/index.js +2 -2
- package/dist/types.js +1 -1
- package/package.json +4 -2
- package/dingtalk_servicewindow_mcp_server.yaml +0 -109
- package/dist/DingTalkMCPServer.js.map +0 -1
- package/dist/cli.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/types.js.map +0 -1
- package/dist/utils/apiClient.d.ts +0 -49
- package/dist/utils/apiClient.d.ts.map +0 -1
- package/dist/utils/apiClient.js +0 -85
- package/dist/utils/apiClient.js.map +0 -1
- package/dist/utils/errorFormatter.d.ts +0 -44
- package/dist/utils/errorFormatter.d.ts.map +0 -1
- package/dist/utils/errorFormatter.js +0 -164
- package/dist/utils/errorFormatter.js.map +0 -1
- package/dist/utils/messageBuilder.d.ts +0 -57
- package/dist/utils/messageBuilder.d.ts.map +0 -1
- package/dist/utils/messageBuilder.js +0 -200
- package/dist/utils/messageBuilder.js.map +0 -1
- package/dist/utils/messageProcessor.d.ts +0 -36
- package/dist/utils/messageProcessor.d.ts.map +0 -1
- package/dist/utils/messageProcessor.js +0 -145
- package/dist/utils/messageProcessor.js.map +0 -1
- package/dist/utils/validator.d.ts +0 -64
- package/dist/utils/validator.d.ts.map +0 -1
- package/dist/utils/validator.js +0 -181
- package/dist/utils/validator.js.map +0 -1
package/README.md
CHANGED
|
@@ -9,7 +9,6 @@
|
|
|
9
9
|
- 钉钉待办
|
|
10
10
|
- 钉钉日程
|
|
11
11
|
- 钉钉签到
|
|
12
|
-
- 钉钉服务窗
|
|
13
12
|
- 钉钉工作通知
|
|
14
13
|
- 钉钉应用管理
|
|
15
14
|
|
|
@@ -25,7 +24,8 @@
|
|
|
25
24
|
],
|
|
26
25
|
"env": {
|
|
27
26
|
"DINGTALK_Client_ID": "your dingtalk client id",
|
|
28
|
-
"DINGTALK_Client_Secret": "your dingtalk client secret"
|
|
27
|
+
"DINGTALK_Client_Secret": "your dingtalk client secret",
|
|
28
|
+
"ACTIVE_PROFILES": "dingtalk-contacts,dingtalk-calendar"
|
|
29
29
|
}
|
|
30
30
|
}
|
|
31
31
|
}
|
|
@@ -36,21 +36,20 @@
|
|
|
36
36
|
2. DINGTALK_Client_Secret
|
|
37
37
|
3. ACTIVE_PROFILES,激活哪些钉钉MCP服务,逗号风格,如果是ALL则激活全部。可选集合
|
|
38
38
|
|
|
39
|
-
| ProfileId | Description
|
|
40
|
-
|
|
41
|
-
| dingtalk-contacts |
|
|
42
|
-
| dingtalk-department | 钉钉部门管理
|
|
43
|
-
| dingtalk-robot-send-message | 钉钉机器人发消息/DING
|
|
44
|
-
| dingtalk-honor | 钉钉企业文化荣誉
|
|
45
|
-
| dingtalk-tasks | 钉钉待办
|
|
46
|
-
| dingtalk-calendar | 钉钉日程
|
|
47
|
-
| dingtalk-checkin | 钉钉签到
|
|
48
|
-
| dingtalk-
|
|
49
|
-
| dingtalk-
|
|
50
|
-
| dingtalk-app-manage | 钉钉应用管理 |
|
|
39
|
+
| ProfileId | Description | Permission |
|
|
40
|
+
|-----------------------------|--------------------|----------------------------------------------|
|
|
41
|
+
| dingtalk-contacts | 钉钉通讯录,默认激活 |
|
|
42
|
+
| dingtalk-department | 钉钉部门管理 |
|
|
43
|
+
| dingtalk-robot-send-message | 钉钉机器人发消息/DING,默认激活 |企业内机器人发送消息权限
|
|
44
|
+
| dingtalk-honor | 钉钉企业文化荣誉 |
|
|
45
|
+
| dingtalk-tasks | 钉钉待办 | Todo.Todo.Write<br>Todo.Todo.Read |
|
|
46
|
+
| dingtalk-calendar | 钉钉日程 |
|
|
47
|
+
| dingtalk-checkin | 钉钉签到 |
|
|
48
|
+
| dingtalk-notice | 钉钉工作通知 |
|
|
49
|
+
| dingtalk-app-manage | 钉钉应用管理 | qyapi_microapp_manage<br>qyapi_get_microapp_list
|
|
51
50
|
4. ROBOT_CODE,用于发消息/DING的机器人Code
|
|
52
|
-
5. ROBOT_ACCESS_TOKEN,群自定义机器人
|
|
53
|
-
|
|
51
|
+
5. ROBOT_ACCESS_TOKEN,群自定义机器人ACCESS_TOKEN,用于自定义机器人发消息
|
|
52
|
+
6. DINGTALK_AGENT_ID 用于发送工作通知
|
|
54
53
|
### 如何获取钉钉Client ID和Client Secret
|
|
55
54
|
1. [成为钉钉开发者](https://open.dingtalk.com/document/orgapp/obtain-developer-permissions)
|
|
56
55
|
2. [创建应用](https://open.dingtalk.com/document/orgapp/create-an-application)
|
|
@@ -1,16 +1,22 @@
|
|
|
1
1
|
server:
|
|
2
2
|
name: dingtalk-notice
|
|
3
3
|
version: 1.0.0
|
|
4
|
-
description: DingTalk Work Notice MCP Server - 钉钉工作通知
|
|
4
|
+
description: DingTalk Work Notice MCP Server - 钉钉工作通知MCP服务器
|
|
5
5
|
|
|
6
6
|
tools:
|
|
7
7
|
# 发送工作通知消息
|
|
8
8
|
- name: sendNotice
|
|
9
|
-
description: 发送工作通知消息,支持
|
|
9
|
+
description: 发送工作通知消息,支持 markdown 消息类型
|
|
10
10
|
requestTemplate:
|
|
11
11
|
method: POST
|
|
12
12
|
url: https://oapi.dingtalk.com/topapi/message/corpconversation/asyncsend_v2
|
|
13
13
|
args:
|
|
14
|
+
- name: agent_id
|
|
15
|
+
type: number
|
|
16
|
+
required: true
|
|
17
|
+
position: body
|
|
18
|
+
description: 发送消息时使用的微应用的AgentID
|
|
19
|
+
system: DINGTALK_AGENT_ID
|
|
14
20
|
- name: userid_list
|
|
15
21
|
type: string
|
|
16
22
|
required: false
|
|
@@ -26,11 +32,23 @@ tools:
|
|
|
26
32
|
required: false
|
|
27
33
|
position: body
|
|
28
34
|
description: 是否发送给全员(可选,默认false)
|
|
29
|
-
- name: msg
|
|
30
|
-
|
|
35
|
+
- name: msg.msgtype
|
|
36
|
+
not_need_model_transform: true
|
|
37
|
+
type: string
|
|
38
|
+
required: true
|
|
39
|
+
position: body
|
|
40
|
+
description: markdown消息格式
|
|
41
|
+
default: markdown
|
|
42
|
+
- name: msg.markdown.title
|
|
43
|
+
type: string
|
|
44
|
+
required: true
|
|
45
|
+
position: body
|
|
46
|
+
description: markdown消息标题
|
|
47
|
+
- name: msg.markdown.text
|
|
48
|
+
type: string
|
|
31
49
|
required: true
|
|
32
50
|
position: body
|
|
33
|
-
description:
|
|
51
|
+
description: markdown消息内容
|
|
34
52
|
|
|
35
53
|
# 获取工作通知消息的发送结果
|
|
36
54
|
- name: getSendResult
|
|
@@ -39,6 +57,12 @@ tools:
|
|
|
39
57
|
method: POST
|
|
40
58
|
url: https://oapi.dingtalk.com/topapi/message/corpconversation/getsendresult
|
|
41
59
|
args:
|
|
60
|
+
- name: agent_id
|
|
61
|
+
type: number
|
|
62
|
+
required: true
|
|
63
|
+
position: body
|
|
64
|
+
description: 发送消息时使用的微应用的AgentID
|
|
65
|
+
system: DINGTALK_AGENT_ID
|
|
42
66
|
- name: task_id
|
|
43
67
|
type: number
|
|
44
68
|
required: true
|
|
@@ -52,6 +76,12 @@ tools:
|
|
|
52
76
|
method: POST
|
|
53
77
|
url: https://oapi.dingtalk.com/topapi/message/corpconversation/getsendprogress
|
|
54
78
|
args:
|
|
79
|
+
- name: agent_id
|
|
80
|
+
type: number
|
|
81
|
+
required: true
|
|
82
|
+
position: body
|
|
83
|
+
description: 发送消息时使用的微应用的AgentID
|
|
84
|
+
system: DINGTALK_AGENT_ID
|
|
55
85
|
- name: task_id
|
|
56
86
|
type: number
|
|
57
87
|
required: true
|
|
@@ -65,21 +95,15 @@ tools:
|
|
|
65
95
|
method: POST
|
|
66
96
|
url: https://oapi.dingtalk.com/topapi/message/corpconversation/recall
|
|
67
97
|
args:
|
|
98
|
+
- name: agent_id
|
|
99
|
+
type: number
|
|
100
|
+
required: true
|
|
101
|
+
position: body
|
|
102
|
+
description: 发送消息时使用的微应用的AgentID
|
|
103
|
+
system: DINGTALK_AGENT_ID
|
|
68
104
|
- name: msg_task_id
|
|
69
105
|
type: number
|
|
70
106
|
required: true
|
|
71
107
|
position: body
|
|
72
108
|
description: 要撤回的消息任务ID
|
|
73
109
|
|
|
74
|
-
# 获取消息模板(内置功能)
|
|
75
|
-
- name: getMessageTemplates
|
|
76
|
-
description: 获取所有支持的消息类型模板和示例,帮助用户快速了解消息格式
|
|
77
|
-
requestTemplate:
|
|
78
|
-
method: LOCAL
|
|
79
|
-
url: local://templates
|
|
80
|
-
args:
|
|
81
|
-
- name: msgtype
|
|
82
|
-
type: string
|
|
83
|
-
required: false
|
|
84
|
-
position: query
|
|
85
|
-
description: 指定消息类型(text、link、markdown),不指定则返回所有类型
|
|
@@ -79,11 +79,6 @@ tools:
|
|
|
79
79
|
description: 会话ID。
|
|
80
80
|
position: body
|
|
81
81
|
required: true
|
|
82
|
-
- name: coolAppCode
|
|
83
|
-
type: string
|
|
84
|
-
description: 群聊酷应用编码。
|
|
85
|
-
system: COOL_APP_CODE
|
|
86
|
-
position: body
|
|
87
82
|
- name: msgKey
|
|
88
83
|
type: string
|
|
89
84
|
description: 消息模板key,默认为"sampleMarkdown"。
|
|
@@ -93,10 +88,11 @@ tools:
|
|
|
93
88
|
not_need_model_transform: true
|
|
94
89
|
- name: msgParam
|
|
95
90
|
type: string
|
|
96
|
-
description:
|
|
91
|
+
description: 消息内容,格式为JSON字符串,必须遵循此格式 {"title":"title", "text":"markdown内容"}
|
|
97
92
|
position: body
|
|
98
93
|
required: true
|
|
99
94
|
|
|
95
|
+
|
|
100
96
|
requestTemplate:
|
|
101
97
|
url: https://api.dingtalk.com/v1.0/robot/groupMessages/send
|
|
102
98
|
method: POST
|
|
@@ -162,7 +158,7 @@ tools:
|
|
|
162
158
|
not_need_model_transform: true
|
|
163
159
|
- name: msgParam
|
|
164
160
|
type: string
|
|
165
|
-
description:
|
|
161
|
+
description: 消息内容,格式为JSON字符串,必须遵循此格式 {"title":"title", "text":"markdown内容"}
|
|
166
162
|
position: body
|
|
167
163
|
required: true
|
|
168
164
|
|
|
@@ -319,6 +319,9 @@ export class DingTalkMCPServer {
|
|
|
319
319
|
};
|
|
320
320
|
}
|
|
321
321
|
catch (error) {
|
|
322
|
+
if (this.debug){
|
|
323
|
+
console.log(error)
|
|
324
|
+
}
|
|
322
325
|
let errorMessage = error.message;
|
|
323
326
|
if (axios.isAxiosError(error) && error.response) {
|
|
324
327
|
// 如果是token相关错误,清除缓存
|
|
@@ -375,7 +378,7 @@ export class DingTalkMCPServer {
|
|
|
375
378
|
return finalQuery ? `${baseUrl}?${finalQuery}` : baseUrl;
|
|
376
379
|
}
|
|
377
380
|
// 特殊处理oapi.dingtalk.com接口且配置了security(自定义机器人发消息不使用这个),将access_token作为URL参数传递
|
|
378
|
-
if (url.includes('oapi.dingtalk.com') &&
|
|
381
|
+
if (url.includes('oapi.dingtalk.com') && this.accessToken) {
|
|
379
382
|
const separator = url.includes('?') ? '&' : '?';
|
|
380
383
|
return `${url}${separator}access_token=${encodeURIComponent(this.accessToken)}`;
|
|
381
384
|
}
|
|
@@ -396,6 +399,32 @@ export class DingTalkMCPServer {
|
|
|
396
399
|
}
|
|
397
400
|
return headers;
|
|
398
401
|
}
|
|
402
|
+
|
|
403
|
+
processMultiParam(body, name, value){
|
|
404
|
+
let objParmas = name.split('.');
|
|
405
|
+
if (objParmas && objParmas.length > 1) {
|
|
406
|
+
if (objParmas.length == 2){
|
|
407
|
+
if (!body[objParmas[0]]){
|
|
408
|
+
body[objParmas[0]] = {};
|
|
409
|
+
}
|
|
410
|
+
body[objParmas[0]][objParmas[1]] = value;
|
|
411
|
+
}
|
|
412
|
+
if (objParmas.length == 3){
|
|
413
|
+
if (!body[objParmas[0]]){
|
|
414
|
+
body[objParmas[0]] = {};
|
|
415
|
+
}
|
|
416
|
+
if (!body[objParmas[0]][objParmas[1]]){
|
|
417
|
+
body[objParmas[0]][objParmas[1]] = {};
|
|
418
|
+
}
|
|
419
|
+
body[objParmas[0]][objParmas[1]][objParmas[2]] = value;
|
|
420
|
+
}
|
|
421
|
+
return true;
|
|
422
|
+
} else {
|
|
423
|
+
body[name] = value;
|
|
424
|
+
}
|
|
425
|
+
return false;
|
|
426
|
+
}
|
|
427
|
+
|
|
399
428
|
buildBody(tool, args) {
|
|
400
429
|
if (tool.requestTemplate.method === 'GET' || tool.requestTemplate.method === 'DELETE') {
|
|
401
430
|
return undefined;
|
|
@@ -413,7 +442,7 @@ export class DingTalkMCPServer {
|
|
|
413
442
|
}
|
|
414
443
|
// 不需要模型处理,直接取默认值赋值
|
|
415
444
|
if (arg.not_need_model_transform){
|
|
416
|
-
body
|
|
445
|
+
this.processMultiParam(body, arg.name, arg.default);
|
|
417
446
|
return;
|
|
418
447
|
}
|
|
419
448
|
|
|
@@ -422,56 +451,40 @@ export class DingTalkMCPServer {
|
|
|
422
451
|
return;
|
|
423
452
|
}
|
|
424
453
|
//打平Object类型参数,递归处理
|
|
425
|
-
|
|
426
|
-
if (objParmas && objParmas.length > 1) {
|
|
427
|
-
if (objParmas.length == 2){
|
|
428
|
-
if (!body[objParmas[0]]){
|
|
429
|
-
body[objParmas[0]] = {};
|
|
430
|
-
}
|
|
431
|
-
body[objParmas[0]][objParmas[1]] = args[arg.name];
|
|
432
|
-
}
|
|
433
|
-
if (objParmas.length == 3){
|
|
434
|
-
if (!body[objParmas[0]]){
|
|
435
|
-
body[objParmas[0]] = {};
|
|
436
|
-
}
|
|
437
|
-
if (!body[objParmas[1]]){
|
|
438
|
-
body[objParmas[1]] = {};
|
|
439
|
-
}
|
|
440
|
-
body[objParmas[0]][objParmas[1]][objParmas[2]] = args[arg.name];
|
|
441
|
-
}
|
|
442
|
-
return;
|
|
443
|
-
}
|
|
454
|
+
this.processMultiParam(body, arg.name, args[arg.name]);
|
|
444
455
|
|
|
445
|
-
|
|
446
|
-
// userIds
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
//
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
}
|
|
456
|
+
// // userIds参数直接传递为数组类型,保证请求体为正确的JSON对象
|
|
457
|
+
// if (arg.name === 'userIds' && Array.isArray(args[arg.name])) {
|
|
458
|
+
// body[arg.name] = args[arg.name];
|
|
459
|
+
// }
|
|
460
|
+
// // 搜索用户API参数名称转换,从snake_case转为camelCase
|
|
461
|
+
// else if (tool.name === 'searchUser') {
|
|
462
|
+
// // Convert snake_case to camelCase for the search user API
|
|
463
|
+
// const camelCaseName = arg.name.replace(/_([a-z])/g, (g) => g[1].toUpperCase());
|
|
464
|
+
// body[camelCaseName] = args[arg.name];
|
|
465
|
+
// }
|
|
466
|
+
// else {
|
|
467
|
+
// body[arg.name] = args[arg.name];
|
|
468
|
+
// }
|
|
459
469
|
}
|
|
460
470
|
});
|
|
461
471
|
// 为searchUser/searchDepartment添加默认的分页参数
|
|
462
472
|
|
|
463
473
|
// 设置默认的offset为0
|
|
464
|
-
if (
|
|
465
|
-
body.offset
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
body.size
|
|
474
|
+
if (tool.name === 'searchDepartment' || tool.name === 'searchUser'){
|
|
475
|
+
if (body.offset === undefined) {
|
|
476
|
+
body.offset = 0;
|
|
477
|
+
}
|
|
478
|
+
// 设置默认的size为20
|
|
479
|
+
if (body.size === undefined) {
|
|
480
|
+
body.size = 20;
|
|
481
|
+
}
|
|
470
482
|
}
|
|
471
483
|
console.error(`SearchUser API with params: offset=${body.offset}, size=${body.size}`);
|
|
472
484
|
|
|
473
485
|
return Object.keys(body).length > 0 ? body : undefined;
|
|
474
486
|
}
|
|
487
|
+
|
|
475
488
|
async run() {
|
|
476
489
|
const transport = new StdioServerTransport();
|
|
477
490
|
await this.server.connect(transport);
|
package/dist/cli.js
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { DingTalkMCPServer } from './DingTalkMCPServer.js';
|
|
3
|
+
import {json} from "node:stream/consumers";
|
|
3
4
|
async function main() {
|
|
4
5
|
// 检查环境变量
|
|
5
6
|
const appId = process.env.DINGTALK_Client_ID;
|
|
6
7
|
const appSecret = process.env.DINGTALK_Client_Secret;
|
|
7
8
|
const accessToken = process.env.DINGTALK_ACCESS_TOKEN;
|
|
8
|
-
|
|
9
|
+
|
|
9
10
|
// 如果既没有AppKey/Secret也没有AccessToken,显示帮助信息
|
|
10
11
|
if (!accessToken && (!appId || !appSecret)) {
|
|
11
12
|
console.error('🔧 DingTalk MCP Server 配置指南');
|
|
@@ -50,6 +51,8 @@ async function main() {
|
|
|
50
51
|
console.error('');
|
|
51
52
|
process.exit(1);
|
|
52
53
|
}
|
|
54
|
+
|
|
55
|
+
|
|
53
56
|
}
|
|
54
57
|
// 处理未捕获的异常
|
|
55
58
|
process.on('uncaughtException', (error) => {
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* DingTalk Calendar MCP Server
|
|
3
|
-
|
|
4
|
-
* A TypeScript-based MCP server for DingTalk
|
|
3
|
+
|
|
4
|
+
* A TypeScript-based MCP server for DingTalk integration
|
|
5
5
|
*/
|
|
6
6
|
export { DingTalkMCPServer } from './DingTalkMCPServer.js';
|
|
7
7
|
export * from './types.js';
|
package/dist/types.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dingtalk-mcp",
|
|
3
|
-
"version": "1.0
|
|
3
|
+
"version": "1.1.0",
|
|
4
4
|
"description": "DingTalk MCP Server - A TypeScript-based MCP server for DingTalk integration",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -10,7 +10,9 @@
|
|
|
10
10
|
},
|
|
11
11
|
"files": [
|
|
12
12
|
"dist/**/*",
|
|
13
|
-
"*.yaml"
|
|
13
|
+
"*.yaml",
|
|
14
|
+
"!dist/test.js",
|
|
15
|
+
"!dist/utils"
|
|
14
16
|
],
|
|
15
17
|
"scripts": {
|
|
16
18
|
"build": "tsc",
|
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
server:
|
|
2
|
-
name: dingtalk-servicewindow
|
|
3
|
-
version: 1.0.0
|
|
4
|
-
description: 钉钉服务窗
|
|
5
|
-
securitySchemes:
|
|
6
|
-
- id: DingTalkAuth
|
|
7
|
-
type: apiKey
|
|
8
|
-
in: header
|
|
9
|
-
name: x-acs-dingtalk-access-token
|
|
10
|
-
|
|
11
|
-
# 注意:当前版本的工具定义在代码中,此配置文件为预留扩展
|
|
12
|
-
tools:
|
|
13
|
-
- name: buildServiceWindowMessage
|
|
14
|
-
description: "构建服务窗消息体,支持文本、链接、markdown、卡片等多种类型"
|
|
15
|
-
requestTemplate:
|
|
16
|
-
method: POST
|
|
17
|
-
url: "internal://message-builder"
|
|
18
|
-
|
|
19
|
-
- name: sendServiceWindowMessage
|
|
20
|
-
description: "发送服务窗单人消息"
|
|
21
|
-
requestTemplate:
|
|
22
|
-
method: POST
|
|
23
|
-
url: "https://api.dingtalk.com/v1.0/crm/officialAccounts/oToMessages/send"
|
|
24
|
-
security:
|
|
25
|
-
id: DingTalkAuth
|
|
26
|
-
|
|
27
|
-
- name: batchSendServiceWindowMessage
|
|
28
|
-
description: "批量发送服务窗消息"
|
|
29
|
-
requestTemplate:
|
|
30
|
-
method: POST
|
|
31
|
-
url: "https://api.dingtalk.com/v1.0/crm/officialAccounts/oToMessages/batchSend"
|
|
32
|
-
security:
|
|
33
|
-
id: DingTalkAuth
|
|
34
|
-
|
|
35
|
-
- name: getServiceWindowFollower
|
|
36
|
-
description: "获取关注服务窗的单个用户信息"
|
|
37
|
-
requestTemplate:
|
|
38
|
-
method: GET
|
|
39
|
-
url: "https://api.dingtalk.com/v1.0/link/followers/infos"
|
|
40
|
-
security:
|
|
41
|
-
id: DingTalkAuth
|
|
42
|
-
|
|
43
|
-
- name: listServiceWindowFollowers
|
|
44
|
-
description: "分页获取关注服务窗的用户列表"
|
|
45
|
-
requestTemplate:
|
|
46
|
-
method: GET
|
|
47
|
-
url: "https://api.dingtalk.com/v1.0/link/followers"
|
|
48
|
-
security:
|
|
49
|
-
id: DingTalkAuth
|
|
50
|
-
|
|
51
|
-
- name: getUserFollowStatus
|
|
52
|
-
description: "获取用户的服务窗关注状态"
|
|
53
|
-
requestTemplate:
|
|
54
|
-
method: GET
|
|
55
|
-
url: "https://api.dingtalk.com/v1.0/link/followers/status"
|
|
56
|
-
security:
|
|
57
|
-
id: DingTalkAuth
|
|
58
|
-
|
|
59
|
-
- name: listServiceWindows
|
|
60
|
-
description: "获取企业下的服务窗列表"
|
|
61
|
-
requestTemplate:
|
|
62
|
-
method: GET
|
|
63
|
-
url: "https://api.dingtalk.com/v1.0/link/accounts"
|
|
64
|
-
security:
|
|
65
|
-
id: DingTalkAuth
|
|
66
|
-
|
|
67
|
-
# 消息类型定义
|
|
68
|
-
messageTypes:
|
|
69
|
-
text:
|
|
70
|
-
description: "纯文本消息"
|
|
71
|
-
maxLength: 500
|
|
72
|
-
|
|
73
|
-
link:
|
|
74
|
-
description: "链接消息"
|
|
75
|
-
fields:
|
|
76
|
-
title:
|
|
77
|
-
maxLength: 128
|
|
78
|
-
required: true
|
|
79
|
-
text:
|
|
80
|
-
maxLength: 500
|
|
81
|
-
required: true
|
|
82
|
-
messageUrl:
|
|
83
|
-
pattern: "^https?://.+"
|
|
84
|
-
required: true
|
|
85
|
-
picUrl:
|
|
86
|
-
required: true
|
|
87
|
-
|
|
88
|
-
markdown:
|
|
89
|
-
description: "Markdown格式消息"
|
|
90
|
-
fields:
|
|
91
|
-
title:
|
|
92
|
-
maxLength: 30
|
|
93
|
-
required: true
|
|
94
|
-
text:
|
|
95
|
-
maxLength: 500
|
|
96
|
-
required: true
|
|
97
|
-
|
|
98
|
-
actionCard:
|
|
99
|
-
description: "卡片消息"
|
|
100
|
-
fields:
|
|
101
|
-
title:
|
|
102
|
-
maxLength: 30
|
|
103
|
-
required: true
|
|
104
|
-
markdown:
|
|
105
|
-
maxLength: 1000
|
|
106
|
-
required: true
|
|
107
|
-
cardType:
|
|
108
|
-
enum: ["single", "independent"]
|
|
109
|
-
required: true
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DingTalkMCPServer.js","sourceRoot":"","sources":["../src/DingTalkMCPServer.ts"],"names":[],"mappings":"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"}
|
package/dist/cli.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D,KAAK,UAAU,IAAI;IACjB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,iBAAiB,EAAE,CAAC;QACvC,MAAM,MAAM,CAAC,GAAG,EAAE,CAAC;IACrB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,KAAK,CAAC,CAAC;QAC7D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;IACnB,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE,KAAK,CAAC,CAAC;IAC1C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
|
package/dist/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,cAAc,YAAY,CAAC"}
|
package/dist/types.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* API Client - 抽象DingTalk API调用
|
|
3
|
-
* 负责构建请求、发送API调用和处理响应
|
|
4
|
-
*/
|
|
5
|
-
import { type AxiosResponse } from 'axios';
|
|
6
|
-
import type { DingTalkApiResponse } from '../types.js';
|
|
7
|
-
import type { ProcessedMessage } from './messageProcessor.js';
|
|
8
|
-
export interface ApiClientOptions {
|
|
9
|
-
baseURL?: string;
|
|
10
|
-
timeout?: number;
|
|
11
|
-
retries?: number;
|
|
12
|
-
}
|
|
13
|
-
export declare class ApiClient {
|
|
14
|
-
private readonly baseURL;
|
|
15
|
-
private readonly timeout;
|
|
16
|
-
private readonly retries;
|
|
17
|
-
constructor(options?: ApiClientOptions);
|
|
18
|
-
/**
|
|
19
|
-
* 发送单人消息
|
|
20
|
-
*/
|
|
21
|
-
sendMessage(accessToken: string, message: ProcessedMessage, params: {
|
|
22
|
-
userId?: string;
|
|
23
|
-
unionId?: string;
|
|
24
|
-
bizId?: string;
|
|
25
|
-
accountId?: string;
|
|
26
|
-
}): Promise<AxiosResponse<DingTalkApiResponse>>;
|
|
27
|
-
/**
|
|
28
|
-
* 批量发送消息
|
|
29
|
-
*/
|
|
30
|
-
batchSendMessage(accessToken: string, message: ProcessedMessage, params: {
|
|
31
|
-
userIdList?: string[];
|
|
32
|
-
sendToAll?: boolean;
|
|
33
|
-
bizRequestId?: string;
|
|
34
|
-
bizId?: string;
|
|
35
|
-
accountId?: string;
|
|
36
|
-
}): Promise<AxiosResponse<DingTalkApiResponse>>;
|
|
37
|
-
/**
|
|
38
|
-
* 通用请求方法
|
|
39
|
-
*/
|
|
40
|
-
private makeRequest;
|
|
41
|
-
/**
|
|
42
|
-
* 获取access_token
|
|
43
|
-
*/
|
|
44
|
-
getAccessToken(appId: string, appSecret: string): Promise<{
|
|
45
|
-
access_token: string;
|
|
46
|
-
expires_in: number;
|
|
47
|
-
}>;
|
|
48
|
-
}
|
|
49
|
-
//# sourceMappingURL=apiClient.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"apiClient.d.ts","sourceRoot":"","sources":["../../src/utils/apiClient.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAc,EAAE,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC;AAClD,OAAO,KAAK,EAA+C,mBAAmB,EAAE,MAAM,aAAa,CAAC;AACpG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,MAAM,WAAW,gBAAgB;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;gBAErB,OAAO,GAAE,gBAAqB;IAM1C;;OAEG;IACU,WAAW,CACtB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE;QACN,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,GACA,OAAO,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC;IAqB9C;;OAEG;IACU,gBAAgB,CAC3B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE;QACN,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;QACtB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,GACA,OAAO,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC;IAsB9C;;OAEG;YACW,WAAW;IAmBzB;;OAEG;IACU,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;QACrE,YAAY,EAAE,MAAM,CAAC;QACrB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;CAkBH"}
|