@oomol-lab/open-connector 1.6.3 → 1.6.5

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.
Files changed (108) hide show
  1. package/assets/open-connector/catalog/apps/aisa.json +568 -0
  2. package/assets/open-connector/catalog/apps/bilibili.json +2586 -0
  3. package/assets/open-connector/catalog/apps/bitwarden.json +1423 -0
  4. package/assets/open-connector/catalog/apps/cronfree.json +303 -0
  5. package/assets/open-connector/catalog/apps/cufinder.json +368 -0
  6. package/assets/open-connector/catalog/apps/feishu_app_bot.json +2 -2
  7. package/assets/open-connector/catalog/apps/gmail.json +73 -0
  8. package/assets/open-connector/catalog/apps/investoday_mcp.json +22228 -197
  9. package/assets/open-connector/catalog/apps/ixspy.json +2274 -0
  10. package/assets/open-connector/catalog/apps/jin10.json +1 -1
  11. package/assets/open-connector/catalog/apps/osv.json +663 -0
  12. package/assets/open-connector/catalog/apps/pdf_vector.json +329 -0
  13. package/assets/open-connector/catalog/apps/pulsetic.json +406 -0
  14. package/assets/open-connector/catalog/apps/shopee.json +1785 -0
  15. package/assets/open-connector/catalog/apps/slack.json +81 -0
  16. package/assets/open-connector/catalog/apps/slackbot.json +81 -0
  17. package/assets/open-connector/catalog/apps/speak_ai.json +360 -0
  18. package/assets/open-connector/catalog/apps/tongdaxin.json +11 -440
  19. package/assets/open-connector/catalog/apps/zyhub.json +1585 -0
  20. package/assets/open-connector/catalog/apps-index.json +1 -1
  21. package/package.json +1 -1
  22. package/src/core/json-schema.d.ts +5 -1
  23. package/src/core/json-schema.js +14 -2
  24. package/src/core/types.d.ts +9 -0
  25. package/src/oauth/oauth-credential-refresh-service.js +3 -1
  26. package/src/oauth/oauth-flow-service.js +17 -2
  27. package/src/oauth/oauth-token.d.ts +13 -0
  28. package/src/providers/action-contracts.generated.d.ts +16 -4
  29. package/src/providers/aisa/executors.d.ts +4 -0
  30. package/src/providers/aisa/executors.js +176 -0
  31. package/src/providers/bilibili/articles.d.ts +3 -0
  32. package/src/providers/bilibili/articles.js +369 -0
  33. package/src/providers/bilibili/executors.d.ts +8 -0
  34. package/src/providers/bilibili/executors.js +262 -0
  35. package/src/providers/bilibili/runtime.d.ts +95 -0
  36. package/src/providers/bilibili/runtime.js +238 -0
  37. package/src/providers/bilibili/upload.d.ts +14 -0
  38. package/src/providers/bilibili/upload.js +105 -0
  39. package/src/providers/bitwarden/executors.d.ts +3 -0
  40. package/src/providers/bitwarden/executors.js +146 -0
  41. package/src/providers/cronfree/executors.d.ts +4 -0
  42. package/src/providers/cronfree/executors.js +89 -0
  43. package/src/providers/cufinder/executors.d.ts +4 -0
  44. package/src/providers/cufinder/executors.js +105 -0
  45. package/src/providers/dropbox/executors.js +21 -3
  46. package/src/providers/elevenreader/runtime.js +6 -5
  47. package/src/providers/feishu_app_bot/scopes.js +1 -1
  48. package/src/providers/gmail/attachment-stream.d.ts +2 -0
  49. package/src/providers/gmail/attachment-stream.js +162 -0
  50. package/src/providers/gmail/executors.d.ts +3 -1
  51. package/src/providers/gmail/executors.js +53 -25
  52. package/src/providers/investoday_mcp/official-actions.js +19 -372
  53. package/src/providers/investoday_mcp/official-tool-types.d.ts +10 -0
  54. package/src/providers/investoday_mcp/official-tool-types.js +4 -0
  55. package/src/providers/investoday_mcp/official-tools/charts.d.ts +2 -0
  56. package/src/providers/investoday_mcp/official-tools/charts.js +32 -0
  57. package/src/providers/investoday_mcp/official-tools/fixed-income.d.ts +2 -0
  58. package/src/providers/investoday_mcp/official-tools/fixed-income.js +326 -0
  59. package/src/providers/investoday_mcp/official-tools/funds.d.ts +2 -0
  60. package/src/providers/investoday_mcp/official-tools/funds.js +1085 -0
  61. package/src/providers/investoday_mcp/official-tools/hong-kong.d.ts +2 -0
  62. package/src/providers/investoday_mcp/official-tools/hong-kong.js +275 -0
  63. package/src/providers/investoday_mcp/official-tools/indices-industries.d.ts +2 -0
  64. package/src/providers/investoday_mcp/official-tools/indices-industries.js +642 -0
  65. package/src/providers/investoday_mcp/official-tools/macro-calendar.d.ts +2 -0
  66. package/src/providers/investoday_mcp/official-tools/macro-calendar.js +398 -0
  67. package/src/providers/investoday_mcp/official-tools/other.d.ts +2 -0
  68. package/src/providers/investoday_mcp/official-tools/other.js +131 -0
  69. package/src/providers/investoday_mcp/official-tools/research-news.d.ts +2 -0
  70. package/src/providers/investoday_mcp/official-tools/research-news.js +302 -0
  71. package/src/providers/investoday_mcp/official-tools/stocks.d.ts +2 -0
  72. package/src/providers/investoday_mcp/official-tools/stocks.js +2829 -0
  73. package/src/providers/ixspy/executors.d.ts +3 -0
  74. package/src/providers/ixspy/executors.js +220 -0
  75. package/src/providers/mcp-client.d.ts +1 -0
  76. package/src/providers/mcp-client.js +41 -27
  77. package/src/providers/osv/executors.d.ts +2 -0
  78. package/src/providers/osv/executors.js +11 -0
  79. package/src/providers/osv/runtime.d.ts +9 -0
  80. package/src/providers/osv/runtime.js +66 -0
  81. package/src/providers/pdf_vector/executors.d.ts +4 -0
  82. package/src/providers/pdf_vector/executors.js +108 -0
  83. package/src/providers/provider-runtime.d.ts +3 -0
  84. package/src/providers/provider-runtime.js +4 -1
  85. package/src/providers/pulsetic/executors.d.ts +4 -0
  86. package/src/providers/pulsetic/executors.js +126 -0
  87. package/src/providers/registry.generated.js +12 -0
  88. package/src/providers/sellersprite_mcp/executors.js +2 -1
  89. package/src/providers/shopee/actions.d.ts +2 -0
  90. package/src/providers/shopee/actions.js +474 -0
  91. package/src/providers/shopee/executors.d.ts +3 -0
  92. package/src/providers/shopee/executors.js +85 -0
  93. package/src/providers/shopee/runtime.d.ts +79 -0
  94. package/src/providers/shopee/runtime.js +693 -0
  95. package/src/providers/slack/actions.js +17 -0
  96. package/src/providers/slack/runtime.js +62 -4
  97. package/src/providers/speak_ai/executors.d.ts +3 -0
  98. package/src/providers/speak_ai/executors.js +187 -0
  99. package/src/providers/tongdaxin/executors.js +5 -4
  100. package/src/providers/tongdaxin/named-action-output.js +3 -9
  101. package/src/providers/tongdaxin/named-action-routing.js +1 -1
  102. package/src/providers/tongdaxin/named-actions.js +1 -6
  103. package/src/providers/tushare/runtime.js +22 -9
  104. package/src/providers/twenty_crm/runtime.js +4 -2
  105. package/src/providers/zyhub/executors.d.ts +3 -0
  106. package/src/providers/zyhub/executors.js +240 -0
  107. package/src/server/files/transit-files.d.ts +3 -2
  108. package/src/server/files/transit-files.js +31 -35
@@ -0,0 +1,398 @@
1
+ import { s } from "../../../core/json-schema.js";
2
+ import { investodayCodeDataOutputSchema } from "../official-tool-types.js";
3
+ // 此文件按 2026-09-21 官方 MCP tools/list 审核。
4
+ export const macroCalendarOfficialTools = [
5
+ {
6
+ name: "list_economic_cn_cpi",
7
+ toolName: "list_economic_cn_cpi",
8
+ description: "List economic China cpi data from Investoday.",
9
+ operationType: "read",
10
+ inputSchema: s.object("Arguments for the Investoday list_economic_cn_cpi operation.", {
11
+ beginDate: s.withExamples(s.date("Start date in YYYY-MM-DD format Accepted by Investoday for list_economic_cn_cpi.", { minLength: 1 }), ["2025-01-01"]),
12
+ endDate: s.withExamples(s.date("End date in YYYY-MM-DD format Accepted by Investoday for list_economic_cn_cpi.", {
13
+ minLength: 1,
14
+ }), ["2025-01-01"]),
15
+ pageSize: s.withExamples(s.integer("Number of records per page Accepted by Investoday for list_economic_cn_cpi.", {
16
+ minimum: 1,
17
+ maximum: 500,
18
+ }), [10]),
19
+ pageNum: s.withExamples(s.integer("Page number, starting at 1 Accepted by Investoday for list_economic_cn_cpi.", {
20
+ minimum: 1,
21
+ }), [1]),
22
+ }, { required: [] }),
23
+ outputSchema: investodayCodeDataOutputSchema,
24
+ },
25
+ {
26
+ name: "list_economic_cn_ppi",
27
+ toolName: "list_economic_cn_ppi",
28
+ description: "List economic China ppi data from Investoday.",
29
+ operationType: "read",
30
+ inputSchema: s.object("Arguments for the Investoday list_economic_cn_ppi operation.", {
31
+ beginDate: s.withExamples(s.date("Start date in YYYY-MM-DD format Accepted by Investoday for list_economic_cn_ppi.", { minLength: 1 }), ["2025-01-01"]),
32
+ endDate: s.withExamples(s.date("End date in YYYY-MM-DD format Accepted by Investoday for list_economic_cn_ppi.", {
33
+ minLength: 1,
34
+ }), ["2025-01-01"]),
35
+ pageSize: s.withExamples(s.integer("Number of records per page Accepted by Investoday for list_economic_cn_ppi.", {
36
+ minimum: 1,
37
+ maximum: 500,
38
+ }), [10]),
39
+ pageNum: s.withExamples(s.integer("Page number, starting at 1 Accepted by Investoday for list_economic_cn_ppi.", {
40
+ minimum: 1,
41
+ }), [1]),
42
+ }, { required: [] }),
43
+ outputSchema: investodayCodeDataOutputSchema,
44
+ },
45
+ {
46
+ name: "list_gover_bond_yield",
47
+ toolName: "list_gover_bond_yield",
48
+ description: "List gover bond yield data from Investoday.",
49
+ operationType: "read",
50
+ inputSchema: s.object("Arguments for the Investoday list_gover_bond_yield operation.", {
51
+ beginDate: s.withExamples(s.date("Start date in YYYY-MM-DD format Accepted by Investoday for list_gover_bond_yield.", { minLength: 1 }), ["2020-01-01"]),
52
+ endDate: s.withExamples(s.date("End date in YYYY-MM-DD format Accepted by Investoday for list_gover_bond_yield.", { minLength: 1 }), ["2025-01-01"]),
53
+ pageSize: s.withExamples(s.integer("Number of records per page Accepted by Investoday for list_gover_bond_yield.", {
54
+ minimum: 1,
55
+ maximum: 500,
56
+ }), [10]),
57
+ pageNum: s.withExamples(s.integer("Page number, starting at 1 Accepted by Investoday for list_gover_bond_yield.", { minimum: 1 }), [1]),
58
+ }, { required: [] }),
59
+ outputSchema: investodayCodeDataOutputSchema,
60
+ },
61
+ {
62
+ name: "list_money_market_repo_in",
63
+ toolName: "list_money_market_repo_in",
64
+ description: "List money market repo in data from Investoday.",
65
+ operationType: "read",
66
+ inputSchema: s.object("Arguments for the Investoday list_money_market_repo_in operation.", {
67
+ beginDate: s.withExamples(s.date("Start date in YYYY-MM-DD format Accepted by Investoday for list_money_market_repo_in.", {
68
+ minLength: 1,
69
+ }), ["2020-01-01"]),
70
+ endDate: s.withExamples(s.date("End date in YYYY-MM-DD format Accepted by Investoday for list_money_market_repo_in.", {
71
+ minLength: 1,
72
+ }), ["2025-01-01"]),
73
+ pageSize: s.withExamples(s.integer("Number of records per page Accepted by Investoday for list_money_market_repo_in.", {
74
+ minimum: 1,
75
+ maximum: 500,
76
+ }), [10]),
77
+ pageNum: s.withExamples(s.integer("Page number, starting at 1 Accepted by Investoday for list_money_market_repo_in.", { minimum: 1 }), [1]),
78
+ }, { required: [] }),
79
+ outputSchema: investodayCodeDataOutputSchema,
80
+ },
81
+ {
82
+ name: "list_money_supplies",
83
+ toolName: "list_money_supplies",
84
+ description: "List money supplies data from Investoday.",
85
+ operationType: "read",
86
+ inputSchema: s.object("Arguments for the Investoday list_money_supplies operation.", {
87
+ beginDate: s.withExamples(s.date("Start date in YYYY-MM-DD format Accepted by Investoday for list_money_supplies.", { minLength: 1 }), ["2020-01-01"]),
88
+ endDate: s.withExamples(s.date("End date in YYYY-MM-DD format Accepted by Investoday for list_money_supplies.", {
89
+ minLength: 1,
90
+ }), ["2025-01-01"]),
91
+ pageSize: s.withExamples(s.integer("Number of records per page Accepted by Investoday for list_money_supplies.", {
92
+ minimum: 1,
93
+ maximum: 500,
94
+ }), [10]),
95
+ pageNum: s.withExamples(s.integer("Page number, starting at 1 Accepted by Investoday for list_money_supplies.", {
96
+ minimum: 1,
97
+ }), [1]),
98
+ }, { required: [] }),
99
+ outputSchema: investodayCodeDataOutputSchema,
100
+ },
101
+ {
102
+ name: "list_social_financing_sto",
103
+ toolName: "list_social_financing_sto",
104
+ description: "List social financing sto data from Investoday.",
105
+ operationType: "read",
106
+ inputSchema: s.object("Arguments for the Investoday list_social_financing_sto operation.", {
107
+ beginDate: s.withExamples(s.date("Start date in YYYY-MM-DD format Accepted by Investoday for list_social_financing_sto.", {
108
+ minLength: 1,
109
+ }), ["2020-01-01"]),
110
+ endDate: s.withExamples(s.date("End date in YYYY-MM-DD format Accepted by Investoday for list_social_financing_sto.", {
111
+ minLength: 1,
112
+ }), ["2025-01-01"]),
113
+ pageSize: s.withExamples(s.integer("Number of records per page Accepted by Investoday for list_social_financing_sto.", {
114
+ minimum: 1,
115
+ maximum: 500,
116
+ }), [10]),
117
+ pageNum: s.withExamples(s.integer("Page number, starting at 1 Accepted by Investoday for list_social_financing_sto.", { minimum: 1 }), [1]),
118
+ }, { required: [] }),
119
+ outputSchema: investodayCodeDataOutputSchema,
120
+ },
121
+ {
122
+ name: "list_macro_equity_val",
123
+ toolName: "list_macro_equity_val",
124
+ description: "List macro equity valuation data from Investoday.",
125
+ operationType: "read",
126
+ inputSchema: s.object("Arguments for the Investoday list_macro_equity_val operation.", {
127
+ beginDate: s.withExamples(s.date("Start date in YYYY-MM-DD format Accepted by Investoday for list_macro_equity_val.", { minLength: 1 }), ["2024-01-01"]),
128
+ marketName: s.withExamples(s.stringEnum("Market name Accepted by Investoday for list_macro_equity_val.", [
129
+ "United States",
130
+ "Canada",
131
+ "United Kingdom",
132
+ "France",
133
+ "Germany",
134
+ "Italy",
135
+ "South Korea",
136
+ "India",
137
+ "Japan",
138
+ "China",
139
+ "Hong Kong",
140
+ "Taiwan",
141
+ "Australia",
142
+ "Global Equity Markets",
143
+ ]), ["United States"]),
144
+ endDate: s.withExamples(s.date("End date in YYYY-MM-DD format Accepted by Investoday for list_macro_equity_val.", { minLength: 1 }), ["2026-08-14"]),
145
+ pageSize: s.withExamples(s.integer("Number of records per page Accepted by Investoday for list_macro_equity_val.", {
146
+ minimum: 1,
147
+ maximum: 500,
148
+ }), [10]),
149
+ pageNum: s.withExamples(s.integer("Page number, starting at 1 Accepted by Investoday for list_macro_equity_val.", { minimum: 1 }), [1]),
150
+ }, { required: [] }),
151
+ outputSchema: investodayCodeDataOutputSchema,
152
+ },
153
+ {
154
+ name: "list_macro_exch_rates",
155
+ toolName: "list_macro_exch_rates",
156
+ description: "List macro exch rates data from Investoday.",
157
+ operationType: "read",
158
+ inputSchema: s.object("Arguments for the Investoday list_macro_exch_rates operation.", {
159
+ beginDate: s.withExamples(s.date("Start date in YYYY-MM-DD format Accepted by Investoday for list_macro_exch_rates.", { minLength: 1 }), ["2024-01-01"]),
160
+ endDate: s.withExamples(s.date("End date in YYYY-MM-DD format Accepted by Investoday for list_macro_exch_rates.", { minLength: 1 }), ["2024-12-31"]),
161
+ pageSize: s.withExamples(s.integer("Number of records per page Accepted by Investoday for list_macro_exch_rates.", {
162
+ minimum: 1,
163
+ maximum: 500,
164
+ }), [10]),
165
+ currencyCode: s.array("Currency code Accepted by Investoday for list_macro_exch_rates.", s.stringEnum("One currencyCode value.", [
166
+ "AED",
167
+ "AUD",
168
+ "CAD",
169
+ "CHF",
170
+ "DKK",
171
+ "EUR",
172
+ "GBP",
173
+ "HKD",
174
+ "HUF",
175
+ "JPY",
176
+ "KRW",
177
+ "MOP",
178
+ "MXN",
179
+ "MYR",
180
+ "NOK",
181
+ "NZD",
182
+ "PLN",
183
+ "RUB",
184
+ "SEK",
185
+ "SGD",
186
+ "THB",
187
+ "TRY",
188
+ "USD",
189
+ "ZAR",
190
+ ])),
191
+ pageNum: s.withExamples(s.integer("Page number, starting at 1 Accepted by Investoday for list_macro_exch_rates.", { minimum: 1 }), [1]),
192
+ }, { required: [] }),
193
+ outputSchema: investodayCodeDataOutputSchema,
194
+ },
195
+ {
196
+ name: "list_macro_fiscal_exp",
197
+ toolName: "list_macro_fiscal_exp",
198
+ description: "List macro fiscal exp data from Investoday.",
199
+ operationType: "read",
200
+ inputSchema: s.object("Arguments for the Investoday list_macro_fiscal_exp operation.", {
201
+ beginDate: s.withExamples(s.date("Start date in YYYY-MM-DD format Accepted by Investoday for list_macro_fiscal_exp.", { minLength: 1 }), ["2023-01-31"]),
202
+ endDate: s.withExamples(s.date("End date in YYYY-MM-DD format Accepted by Investoday for list_macro_fiscal_exp.", { minLength: 1 }), ["2023-09-30"]),
203
+ indCodes: s.withExamples(s.array("Industry codes Accepted by Investoday for list_macro_fiscal_exp.", s.withEnum(s.integer("One indCode value."), [110002480, 110002481])), [[110002480, 110002481]]),
204
+ pageSize: s.withExamples(s.integer("Number of records per page Accepted by Investoday for list_macro_fiscal_exp.", {
205
+ minimum: 1,
206
+ maximum: 500,
207
+ }), [10]),
208
+ pageNum: s.withExamples(s.integer("Page number, starting at 1 Accepted by Investoday for list_macro_fiscal_exp.", { minimum: 1 }), [1]),
209
+ }, { required: [] }),
210
+ outputSchema: investodayCodeDataOutputSchema,
211
+ },
212
+ {
213
+ name: "list_macro_fixed_asset",
214
+ toolName: "list_macro_fixed_asset",
215
+ description: "List macro fixed asset data from Investoday.",
216
+ operationType: "read",
217
+ inputSchema: s.object("Arguments for the Investoday list_macro_fixed_asset operation.", {
218
+ beginDate: s.withExamples(s.date("Start date in YYYY-MM-DD format Accepted by Investoday for list_macro_fixed_asset.", {
219
+ minLength: 1,
220
+ }), ["2023-01-31"]),
221
+ endDate: s.withExamples(s.date("End date in YYYY-MM-DD format Accepted by Investoday for list_macro_fixed_asset.", { minLength: 1 }), ["2023-09-30"]),
222
+ indCodes: s.withExamples(s.array("Industry codes Accepted by Investoday for list_macro_fixed_asset.", s.withEnum(s.integer("One indCode value."), [110115280, 110114485, 110114484, 110114483, 110114481, 110114479, 110114672])), [[110115280, 110114485]]),
223
+ pageSize: s.withExamples(s.integer("Number of records per page Accepted by Investoday for list_macro_fixed_asset.", {
224
+ minimum: 1,
225
+ maximum: 500,
226
+ }), [10]),
227
+ pageNum: s.withExamples(s.integer("Page number, starting at 1 Accepted by Investoday for list_macro_fixed_asset.", { minimum: 1 }), [1]),
228
+ }, { required: [] }),
229
+ outputSchema: investodayCodeDataOutputSchema,
230
+ },
231
+ {
232
+ name: "list_macro_goods_trade",
233
+ toolName: "list_macro_goods_trade",
234
+ description: "List macro goods trade data from Investoday.",
235
+ operationType: "read",
236
+ inputSchema: s.object("Arguments for the Investoday list_macro_goods_trade operation.", {
237
+ beginDate: s.withExamples(s.date("Start date in YYYY-MM-DD format Accepted by Investoday for list_macro_goods_trade.", {
238
+ minLength: 1,
239
+ }), ["2023-01-31"]),
240
+ endDate: s.withExamples(s.date("End date in YYYY-MM-DD format Accepted by Investoday for list_macro_goods_trade.", { minLength: 1 }), ["2023-09-30"]),
241
+ indCodes: s.withExamples(s.array("Industry codes Accepted by Investoday for list_macro_goods_trade.", s.withEnum(s.integer("One indCode value."), [
242
+ 110081729, 110081749, 110183587, 110183586, 110127295, 110006286, 110183585, 110183584, 110005221,
243
+ 110005222, 110183583, 110183582, 210032348, 210032347,
244
+ ])), [[110081729, 110127295]]),
245
+ pageSize: s.withExamples(s.integer("Number of records per page Accepted by Investoday for list_macro_goods_trade.", {
246
+ minimum: 1,
247
+ maximum: 500,
248
+ }), [10]),
249
+ pageNum: s.withExamples(s.integer("Page number, starting at 1 Accepted by Investoday for list_macro_goods_trade.", { minimum: 1 }), [1]),
250
+ }, { required: [] }),
251
+ outputSchema: investodayCodeDataOutputSchema,
252
+ },
253
+ {
254
+ name: "list_macro_re_invest",
255
+ toolName: "list_macro_re_invest",
256
+ description: "List macro re invest data from Investoday.",
257
+ operationType: "read",
258
+ inputSchema: s.object("Arguments for the Investoday list_macro_re_invest operation.", {
259
+ beginDate: s.withExamples(s.date("Start date in YYYY-MM-DD format Accepted by Investoday for list_macro_re_invest.", { minLength: 1 }), ["2023-01-31"]),
260
+ endDate: s.withExamples(s.date("End date in YYYY-MM-DD format Accepted by Investoday for list_macro_re_invest.", {
261
+ minLength: 1,
262
+ }), ["2023-09-30"]),
263
+ indCodes: s.withExamples(s.array("Industry codes Accepted by Investoday for list_macro_re_invest.", s.withEnum(s.integer("One indCode value."), [110116170, 110116171, 110116448, 110116449, 110116444, 110116445, 110116442, 110116443])), [[110116170, 110116171]]),
264
+ pageSize: s.withExamples(s.integer("Number of records per page Accepted by Investoday for list_macro_re_invest.", {
265
+ minimum: 1,
266
+ maximum: 500,
267
+ }), [10]),
268
+ pageNum: s.withExamples(s.integer("Page number, starting at 1 Accepted by Investoday for list_macro_re_invest.", {
269
+ minimum: 1,
270
+ }), [1]),
271
+ }, { required: [] }),
272
+ outputSchema: investodayCodeDataOutputSchema,
273
+ },
274
+ {
275
+ name: "list_macro_retail_area",
276
+ toolName: "list_macro_retail_area",
277
+ description: "List macro retail area data from Investoday.",
278
+ operationType: "read",
279
+ inputSchema: s.object("Arguments for the Investoday list_macro_retail_area operation.", {
280
+ beginDate: s.withExamples(s.date("Start date in YYYY-MM-DD format Accepted by Investoday for list_macro_retail_area.", {
281
+ minLength: 1,
282
+ }), ["2023-01-31"]),
283
+ endDate: s.withExamples(s.date("End date in YYYY-MM-DD format Accepted by Investoday for list_macro_retail_area.", { minLength: 1 }), ["2023-09-30"]),
284
+ indCodes: s.withExamples(s.array("Industry codes Accepted by Investoday for list_macro_retail_area.", s.withEnum(s.integer("One indCode value."), [110232455, 110232456, 110232460, 110232459, 110232462, 110232461, 110232468, 110232466])), [[110232455, 110232456]]),
285
+ pageSize: s.withExamples(s.integer("Number of records per page Accepted by Investoday for list_macro_retail_area.", {
286
+ minimum: 1,
287
+ maximum: 500,
288
+ }), [10]),
289
+ pageNum: s.withExamples(s.integer("Page number, starting at 1 Accepted by Investoday for list_macro_retail_area.", { minimum: 1 }), [1]),
290
+ }, { required: [] }),
291
+ outputSchema: investodayCodeDataOutputSchema,
292
+ },
293
+ {
294
+ name: "list_macro_rmb_credit",
295
+ toolName: "list_macro_rmb_credit",
296
+ description: "List macro rmb credit data from Investoday.",
297
+ operationType: "read",
298
+ inputSchema: s.object("Arguments for the Investoday list_macro_rmb_credit operation.", {
299
+ beginDate: s.withExamples(s.date("Start date in YYYY-MM-DD format Accepted by Investoday for list_macro_rmb_credit.", { minLength: 1 }), ["2023-01-31"]),
300
+ endDate: s.withExamples(s.date("End date in YYYY-MM-DD format Accepted by Investoday for list_macro_rmb_credit.", { minLength: 1 }), ["2023-09-30"]),
301
+ indCodes: s.withExamples(s.array("Industry codes Accepted by Investoday for list_macro_rmb_credit.", s.withEnum(s.integer("One indCode value."), [
302
+ 191000657, 701013601, 191000654, 701013594, 701013595, 191000664, 701013597, 701013598, 701013600,
303
+ 191000652, 701013603, 701013602, 191000668, 191000669, 191000665, 110138331, 110138333, 191000660,
304
+ 110232974, 110233159, 701013616, 110255549, 110255550, 701013617, 110233153, 110255552, 110233154,
305
+ 110233148, 110233152, 110255554, 701013622, 701013623, 701013624, 110255557, 110111032, 110242346,
306
+ 191000667, 191000677, 191000672, 110138330,
307
+ ])), [[191000657, 191000660]]),
308
+ pageSize: s.withExamples(s.integer("Number of records per page Accepted by Investoday for list_macro_rmb_credit.", {
309
+ minimum: 1,
310
+ maximum: 500,
311
+ }), [10]),
312
+ pageNum: s.withExamples(s.integer("Page number, starting at 1 Accepted by Investoday for list_macro_rmb_credit.", { minimum: 1 }), [1]),
313
+ }, { required: [] }),
314
+ outputSchema: investodayCodeDataOutputSchema,
315
+ },
316
+ {
317
+ name: "list_macro_soc_fin",
318
+ toolName: "list_macro_soc_fin",
319
+ description: "List macro soc financial data from Investoday.",
320
+ operationType: "read",
321
+ inputSchema: s.object("Arguments for the Investoday list_macro_soc_fin operation.", {
322
+ beginDate: s.withExamples(s.date("Start date in YYYY-MM-DD format Accepted by Investoday for list_macro_soc_fin.", {
323
+ minLength: 1,
324
+ }), ["2023-01-31"]),
325
+ endDate: s.withExamples(s.date("End date in YYYY-MM-DD format Accepted by Investoday for list_macro_soc_fin.", {
326
+ minLength: 1,
327
+ }), ["2023-09-30"]),
328
+ indCodes: s.withExamples(s.array("Industry codes Accepted by Investoday for list_macro_soc_fin.", s.withEnum(s.integer("One indCode value."), [
329
+ 150000075, 150000076, 150000077, 150000664, 150000665, 150000666, 150000667, 150008052, 150000668,
330
+ 150008054, 150008055,
331
+ ])), [[150000075, 150000076]]),
332
+ pageSize: s.withExamples(s.integer("Number of records per page Accepted by Investoday for list_macro_soc_fin.", {
333
+ minimum: 1,
334
+ maximum: 500,
335
+ }), [10]),
336
+ pageNum: s.withExamples(s.integer("Page number, starting at 1 Accepted by Investoday for list_macro_soc_fin.", {
337
+ minimum: 1,
338
+ }), [1]),
339
+ }, { required: [] }),
340
+ outputSchema: investodayCodeDataOutputSchema,
341
+ },
342
+ {
343
+ name: "list_macro_spot_quotes",
344
+ toolName: "list_macro_spot_quotes",
345
+ description: "List macro spot quotes data from Investoday.",
346
+ operationType: "read",
347
+ inputSchema: s.object("Arguments for the Investoday list_macro_spot_quotes operation.", {
348
+ beginDate: s.withExamples(s.date("Start date in YYYY-MM-DD format Accepted by Investoday for list_macro_spot_quotes.", {
349
+ minLength: 1,
350
+ }), ["2026-01-01"]),
351
+ spotCode: s.withExamples(s.nonEmptyString("Spot instrument code Accepted by Investoday for list_macro_spot_quotes."), ["SPOT001"]),
352
+ endDate: s.withExamples(s.date("End date in YYYY-MM-DD format Accepted by Investoday for list_macro_spot_quotes.", { minLength: 1 }), ["2026-08-14"]),
353
+ pageSize: s.withExamples(s.integer("Number of records per page Accepted by Investoday for list_macro_spot_quotes.", {
354
+ minimum: 1,
355
+ maximum: 500,
356
+ }), [10]),
357
+ pageNum: s.withExamples(s.integer("Page number, starting at 1 Accepted by Investoday for list_macro_spot_quotes.", { minimum: 1 }), [1]),
358
+ }, { required: [] }),
359
+ outputSchema: investodayCodeDataOutputSchema,
360
+ },
361
+ {
362
+ name: "is_trade_date",
363
+ toolName: "is_trade_date",
364
+ description: "Check whether trade date with Investoday.",
365
+ operationType: "read",
366
+ inputSchema: s.object("Arguments for the Investoday is_trade_date operation.", {
367
+ tDate: s.withExamples(s.nonEmptyString("Trading date in YYYY-MM-DD format Accepted by Investoday for is_trade_date."), ["2025-12-22"]),
368
+ }, { required: ["tDate"] }),
369
+ outputSchema: investodayCodeDataOutputSchema,
370
+ },
371
+ {
372
+ name: "get_trade_special_date",
373
+ toolName: "get_trade_special_date",
374
+ description: "Get trade special date data from Investoday.",
375
+ operationType: "read",
376
+ inputSchema: s.object("Arguments for the Investoday get_trade_special_date operation.", {
377
+ tradeDate: s.withExamples(s.date("Trading date in YYYY-MM-DD format Accepted by Investoday for get_trade_special_date.", {
378
+ minLength: 1,
379
+ }), ["2025-05-19"]),
380
+ }, { required: [] }),
381
+ outputSchema: investodayCodeDataOutputSchema,
382
+ },
383
+ {
384
+ name: "get_cn_trade_calender_list",
385
+ toolName: "get_cn_trade_calender_list",
386
+ description: "Get China trade calender list data from Investoday.",
387
+ operationType: "read",
388
+ inputSchema: s.object("Arguments for the Investoday get_cn_trade_calender_list operation.", {
389
+ cycle: s.withExamples(s.stringEnum("Analysis cycle Accepted by Investoday for get_cn_trade_calender_list.", [
390
+ "M1",
391
+ "M3",
392
+ "M6",
393
+ "Y1",
394
+ ]), ["Y1"]),
395
+ }, { required: ["cycle"] }),
396
+ outputSchema: investodayCodeDataOutputSchema,
397
+ },
398
+ ];
@@ -0,0 +1,2 @@
1
+ import type { InvestodayOfficialToolDefinition } from "../official-tool-types.ts";
2
+ export declare const otherOfficialTools: readonly InvestodayOfficialToolDefinition[];
@@ -0,0 +1,131 @@
1
+ import { s } from "../../../core/json-schema.js";
2
+ import { investodayCodeDataOutputSchema } from "../official-tool-types.js";
3
+ // 此文件按 2026-09-21 官方 MCP tools/list 审核。
4
+ export const otherOfficialTools = [
5
+ {
6
+ name: "search",
7
+ toolName: "search",
8
+ description: "Search securities, funds, indices, industries and concepts by name or code.",
9
+ operationType: "read",
10
+ inputSchema: s.object("Arguments for search.", {
11
+ key: s.string("Search keyword, such as a company name or security code."),
12
+ type: s.nonEmptyString("Comma-separated search types: 11 A-shares, 12 indices, 13 ETF benchmarks, 21 funds, 22 ETFs, 23 LOFs, 27 fund managers, 28 fund companies, 29 fund themes, 31 Hong Kong stocks, 71/72 Shenwan level 1/2 industries, 81/82 Juyuan/Cailian concepts."),
13
+ pageNum: s.integer("Page number, starting at 1.", { minimum: 1 }),
14
+ pageSize: s.integer("Records per page, from 1 to 500.", { minimum: 1, maximum: 500 }),
15
+ }, { required: ["type"] }),
16
+ outputSchema: investodayCodeDataOutputSchema,
17
+ },
18
+ {
19
+ name: "get_market_change_ratio_status",
20
+ toolName: "get_market_change_ratio_status",
21
+ description: "Get current market breadth, including rising, falling and limit-up or limit-down stock counts.",
22
+ operationType: "read",
23
+ inputSchema: s.object("Arguments for get_market_change_ratio_status.", {}, { required: [] }),
24
+ outputSchema: investodayCodeDataOutputSchema,
25
+ },
26
+ {
27
+ name: "get_fund_quote_realtime",
28
+ toolName: "get_fund_quote_realtime",
29
+ description: "Get fund quote realtime data from Investoday.",
30
+ operationType: "read",
31
+ inputSchema: s.object("Arguments for the Investoday get_fund_quote_realtime operation.", {
32
+ fundCode: s.withExamples(s.nonEmptyString("Fund code Accepted by Investoday for get_fund_quote_realtime."), [
33
+ "159001",
34
+ ]),
35
+ }, { required: ["fundCode"] }),
36
+ outputSchema: investodayCodeDataOutputSchema,
37
+ },
38
+ {
39
+ name: "get_industry_realtime_quote",
40
+ toolName: "get_industry_realtime_quote",
41
+ description: "Get industry realtime quote data from Investoday.",
42
+ operationType: "read",
43
+ inputSchema: s.object("Arguments for the Investoday get_industry_realtime_quote operation.", {
44
+ industryCode: s.withExamples(s.nonEmptyString("Industry code Accepted by Investoday for get_industry_realtime_quote."), ["330000"]),
45
+ }, { required: ["industryCode"] }),
46
+ outputSchema: investodayCodeDataOutputSchema,
47
+ },
48
+ {
49
+ name: "list_ind_real_quote_v2",
50
+ toolName: "list_ind_real_quote_v2",
51
+ description: "List indicator real quote v2 data from Investoday.",
52
+ operationType: "read",
53
+ inputSchema: s.object("Arguments for the Investoday list_ind_real_quote_v2 operation.", {
54
+ sortColumn: s.withExamples(s.nonEmptyString("Column used to sort the result Accepted by Investoday for list_ind_real_quote_v2."), ["changeRatio"]),
55
+ industryType: s.withExamples(s.nonEmptyString("Industry classification type Accepted by Investoday for list_ind_real_quote_v2."), ["SW"]),
56
+ industryLevel: s.withExamples(s.integer("Industry classification level Accepted by Investoday for list_ind_real_quote_v2."), [1]),
57
+ pageSize: s.withExamples(s.integer("Number of records per page Accepted by Investoday for list_ind_real_quote_v2.", {
58
+ minimum: 1,
59
+ maximum: 500,
60
+ }), [10]),
61
+ industryCodes: s.array("Industry codes Accepted by Investoday for list_ind_real_quote_v2.", s.string("One industryCode value.")),
62
+ pageNum: s.withExamples(s.integer("Page number, starting at 1 Accepted by Investoday for list_ind_real_quote_v2.", { minimum: 1 }), [1]),
63
+ order: s.withExamples(s.nonEmptyString("Sort order Accepted by Investoday for list_ind_real_quote_v2."), [
64
+ "desc",
65
+ ]),
66
+ }, { required: ["sortColumn"] }),
67
+ outputSchema: investodayCodeDataOutputSchema,
68
+ },
69
+ {
70
+ name: "get_industry_stock_realtime_quote",
71
+ toolName: "get_industry_stock_realtime_quote",
72
+ description: "Get industry stock realtime quote data from Investoday.",
73
+ operationType: "read",
74
+ inputSchema: s.object("Arguments for the Investoday get_industry_stock_realtime_quote operation.", {
75
+ sortColumn: s.withExamples(s.nonEmptyString("Column used to sort the result Accepted by Investoday for get_industry_stock_realtime_quote."), ["changeRatio"]),
76
+ pageSize: s.withExamples(s.integer("Number of records per page Accepted by Investoday for get_industry_stock_realtime_quote."), [10]),
77
+ page: s.withExamples(s.integer("Page number, starting at 1 Accepted by Investoday for get_industry_stock_realtime_quote."), [1]),
78
+ industryCode: s.withExamples(s.nonEmptyString("Industry code Accepted by Investoday for get_industry_stock_realtime_quote."), ["740000"]),
79
+ order: s.withExamples(s.stringEnum("Sort order Accepted by Investoday for get_industry_stock_realtime_quote.", ["asc", "desc"]), ["desc"]),
80
+ }, { required: ["industryCode"] }),
81
+ outputSchema: investodayCodeDataOutputSchema,
82
+ },
83
+ {
84
+ name: "get_stk_unwind_sig_stat",
85
+ toolName: "get_stk_unwind_sig_stat",
86
+ description: "Get stock unwind sig stat data from Investoday.",
87
+ operationType: "read",
88
+ inputSchema: s.requireExactlyOneProperty(s.object("Arguments for the Investoday get_stk_unwind_sig_stat operation.", {
89
+ stockCodes: s.withExamples(s.array("Stock codes Supply exactly one of stockCodes or stockCode.", s.string("One stockCode value."), {
90
+ minItems: 1,
91
+ }), [["000001", "600519"]]),
92
+ pageSize: s.withExamples(s.integer("Number of records per page Accepted by Investoday for get_stk_unwind_sig_stat.", {
93
+ minimum: 1,
94
+ maximum: 500,
95
+ }), [10]),
96
+ pageNum: s.withExamples(s.integer("Page number, starting at 1 Accepted by Investoday for get_stk_unwind_sig_stat.", { minimum: 1 }), [1]),
97
+ stockCode: s.withExamples(s.nonEmptyString("Stock code Supply exactly one of stockCode or stockCodes."), [
98
+ "002594",
99
+ ]),
100
+ }, { required: [] }), ["stockCode", "stockCodes"]),
101
+ outputSchema: investodayCodeDataOutputSchema,
102
+ },
103
+ {
104
+ name: "list_stk_unwind_signal_de",
105
+ toolName: "list_stk_unwind_signal_de",
106
+ description: "List stock unwind signal de data from Investoday.",
107
+ operationType: "read",
108
+ inputSchema: s.requireExactlyOneProperty(s.object("Arguments for the Investoday list_stk_unwind_signal_de operation.", {
109
+ beginDate: s.withExamples(s.date("Start date in YYYY-MM-DD format Accepted by Investoday for list_stk_unwind_signal_de.", {
110
+ minLength: 1,
111
+ }), ["2020-01-01"]),
112
+ endDate: s.withExamples(s.date("End date in YYYY-MM-DD format Accepted by Investoday for list_stk_unwind_signal_de.", {
113
+ minLength: 1,
114
+ }), ["2025-01-01"]),
115
+ stockCodes: s.withExamples(s.array("Stock codes Supply exactly one of stockCodes or stockCode.", s.string("One stockCode value."), {
116
+ minItems: 1,
117
+ }), [["000001", "600519"]]),
118
+ pageSize: s.withExamples(s.integer("Number of records per page Accepted by Investoday for list_stk_unwind_signal_de.", {
119
+ minimum: 1,
120
+ maximum: 500,
121
+ }), [10]),
122
+ pageNum: s.withExamples(s.integer("Page number, starting at 1 Accepted by Investoday for list_stk_unwind_signal_de.", {
123
+ minimum: 1,
124
+ }), [1]),
125
+ stockCode: s.withExamples(s.nonEmptyString("Stock code Supply exactly one of stockCode or stockCodes."), [
126
+ "002594",
127
+ ]),
128
+ }, { required: [] }), ["stockCode", "stockCodes"]),
129
+ outputSchema: investodayCodeDataOutputSchema,
130
+ },
131
+ ];
@@ -0,0 +1,2 @@
1
+ import type { InvestodayOfficialToolDefinition } from "../official-tool-types.ts";
2
+ export declare const researchNewsOfficialTools: readonly InvestodayOfficialToolDefinition[];