flycode-mcp 1.9.1 → 1.10.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.
Files changed (63) hide show
  1. package/README.md +69 -18
  2. package/dist/flycode-mcp.min.js +2 -0
  3. package/package.json +21 -8
  4. package/dist/clients/authClient.js +0 -43
  5. package/dist/clients/authClient.js.map +0 -1
  6. package/dist/clients/databaseFunctionClient.js +0 -16
  7. package/dist/clients/databaseFunctionClient.js.map +0 -1
  8. package/dist/clients/entityClient.js +0 -28
  9. package/dist/clients/entityClient.js.map +0 -1
  10. package/dist/clients/formClient.js +0 -30
  11. package/dist/clients/formClient.js.map +0 -1
  12. package/dist/clients/functionClient.js +0 -30
  13. package/dist/clients/functionClient.js.map +0 -1
  14. package/dist/clients/logicClient.js +0 -45
  15. package/dist/clients/logicClient.js.map +0 -1
  16. package/dist/clients/runClient.js +0 -16
  17. package/dist/clients/runClient.js.map +0 -1
  18. package/dist/clients/types.js +0 -7
  19. package/dist/clients/types.js.map +0 -1
  20. package/dist/index.js +0 -53
  21. package/dist/index.js.map +0 -1
  22. package/dist/service/auth.js +0 -84
  23. package/dist/service/auth.js.map +0 -1
  24. package/dist/service/logic.js +0 -261
  25. package/dist/service/logic.js.map +0 -1
  26. package/dist/store/tenant.js +0 -20
  27. package/dist/store/tenant.js.map +0 -1
  28. package/dist/store/token.js +0 -25
  29. package/dist/store/token.js.map +0 -1
  30. package/dist/tools/common.js +0 -61
  31. package/dist/tools/common.js.map +0 -1
  32. package/dist/tools/database-function/read.js +0 -98
  33. package/dist/tools/database-function/read.js.map +0 -1
  34. package/dist/tools/entity/read.js +0 -169
  35. package/dist/tools/entity/read.js.map +0 -1
  36. package/dist/tools/entity/schemas.js +0 -65
  37. package/dist/tools/entity/schemas.js.map +0 -1
  38. package/dist/tools/form/read.js +0 -202
  39. package/dist/tools/form/read.js.map +0 -1
  40. package/dist/tools/function/read.js +0 -187
  41. package/dist/tools/function/read.js.map +0 -1
  42. package/dist/tools/logic/read.js +0 -170
  43. package/dist/tools/logic/read.js.map +0 -1
  44. package/dist/tools/logic/schemas.js +0 -122
  45. package/dist/tools/logic/schemas.js.map +0 -1
  46. package/dist/tools/logic/write.js +0 -296
  47. package/dist/tools/logic/write.js.map +0 -1
  48. package/dist/tools/run/read.js +0 -65
  49. package/dist/tools/run/read.js.map +0 -1
  50. package/dist/utils/config.js +0 -26
  51. package/dist/utils/config.js.map +0 -1
  52. package/dist/utils/date.js +0 -45
  53. package/dist/utils/date.js.map +0 -1
  54. package/dist/utils/error.js +0 -30
  55. package/dist/utils/error.js.map +0 -1
  56. package/dist/utils/mcp-types.js +0 -2
  57. package/dist/utils/mcp-types.js.map +0 -1
  58. package/dist/utils/request.js +0 -74
  59. package/dist/utils/request.js.map +0 -1
  60. package/dist/utils/snowflake.js +0 -119
  61. package/dist/utils/snowflake.js.map +0 -1
  62. package/dist/utils/str-replace.js +0 -353
  63. package/dist/utils/str-replace.js.map +0 -1
@@ -1,202 +0,0 @@
1
- import { z } from 'zod';
2
- import { extractError } from '../../utils/error.js';
3
- import { pageFormList, getForm } from '../../clients/formClient.js';
4
- /**
5
- * 表单/页面列表查询结果的 outputSchema。
6
- * 字段类型严格依据 formClient.ts 中的 FormPageResult 接口声明构建:
7
- * 除 code 外,其余字段均为 string | null | undefined(可选且可空)。
8
- * string|null -> z.union([z.string(), z.null()]);
9
- * number|null -> z.coerce.number().nullable()(对字符串型数字容错)。
10
- * 描述文字直接采用 formClient.ts 中 FormPageResult 的注释内容。
11
- * catchall 实现有其他字段时原样透传
12
- */
13
- const formPageResultShape = z.object({
14
- createtime: z.union([z.string(), z.null()]).optional().describe('创建时间'),
15
- createaccountcode: z.union([z.string(), z.null()]).optional().describe('创建人的账号编码'),
16
- createaccountname: z.union([z.string(), z.null()]).optional().describe('创建人姓名'),
17
- code: z.string().describe('表单/页面的编码'),
18
- clientcategorycode: z.union([z.string(), z.null()]).optional().describe('用户端分类编码,1-web端;2-app端;6-小程序端'),
19
- confsource: z.coerce.number().nullable().optional().describe('配置来源,含义:1-IDE配置;2-用户级配置'),
20
- directorytypecode: z.union([z.string(), z.null()]).optional().describe('所属目录分类的编码'),
21
- directorytypename: z.union([z.string(), z.null()]).optional().describe('所属目录分类的名称'),
22
- marktype: z.coerce.number().nullable().optional().describe('创建标记:0-平台;1-产品;2-租户'),
23
- metamodelcode: z.union([z.string(), z.null()]).optional().describe('领域模型编码,和 code 共同构成复合主键'),
24
- pagetemplatecode: z.union([z.string(), z.null()]).optional().describe('页面模板编码'),
25
- pagetypename: z.union([z.string(), z.null()]).optional().describe('页面类型名称'),
26
- pagedescr: z.union([z.string(), z.null()]).optional().describe('页面描述'),
27
- ref: z.union([z.string(), z.null()]).optional().describe('外部引用,一般传空字符串'),
28
- status: z.coerce.number().nullable().optional().describe('状态,含义:1-启用;2-停用'),
29
- title: z.union([z.string(), z.null()]).optional().describe('标题'),
30
- type: z.coerce.number().nullable().optional().describe('类型(整数)含义:5-列表查询;1-普通页面;99-二开页面;10-switchpage;11-树导航列表;100-原生页面;101-空白页面;7-报表页面;12-排序页面;300-步骤管理表单;1000-全局函数'),
31
- updatetime: z.union([z.string(), z.null()]).optional().describe('最近更新时间'),
32
- updateaccountcode: z.union([z.string(), z.null()]).optional().describe('最近更新人的账号编码'),
33
- updateaccountname: z.union([z.string(), z.null()]).optional().describe('最近更新人的姓名'),
34
- versionnum: z.union([z.string(), z.null()]).optional().describe('版本号')
35
- }).catchall(z.unknown());
36
- /**
37
- * 表单/页面详情查询结果(FormResult)的 outputSchema 形状。
38
- * 描述文字直接采用 formClient.ts 中 FormResult 接口及其各字段的注释内容。
39
- * 由于 FormResult 内部包含递归的 view 节点树、带索引签名的控件结构等复杂类型,
40
- * 子对象(pageinfo / businessmodel / presenter / view / controls 等)统一以 z.any()
41
- * 承接,仅对顶层各字段给出语义描述;本形状作为原始 ZodRawShape 直接传给
42
- * registerTool 由 SDK 包装为 z.object,兼容服务端偶发返回的额外顶层字段时由
43
- * 调用方(client)原样透传,避免 -32602 Output validation 报错。
44
- */
45
- const formResultShape = {
46
- renderinfo: z.any().optional().describe('IDE 渲染标记'),
47
- pageinfo: z.any().optional().describe('核心对象 1:页面基础信息'),
48
- businessmodel: z.any().optional().describe('页面引用到的后端业务模型(接口),结构同 logicClient 的 LogicResult'),
49
- actionlogic: z.any().optional().describe('动作逻辑,仅部分页面存在,非核心对象'),
50
- presenter: z.any().optional().describe('核心对象 2:定义的各种事件,在不同时机触发,如按钮点击、下拉框选择的值改变、首次加载等'),
51
- view: z.any().optional().describe('核心对象 3:定义的页面结构,页面由哪些控件构成,控件的属性、样式,绑定哪些事件等'),
52
- controls: z.any().optional().describe('控件,仅部分页面存在,非核心对象'),
53
- pageswitch: z.any().optional().describe('仅 switchpage 类型的表单有此字段,描述 switchpage 包含哪些页面'),
54
- message: z.string().nullable().optional().describe('提交信息,每次保存时填写的,类似 git 的提交信息')
55
- };
56
- /** 只读类工具:查询、列表、读取等不会修改数据的操作。 */
57
- export const readTools = [
58
- {
59
- name: 'page_form_list',
60
- config: {
61
- title: '分页查询表单/页面',
62
- description: `根据查询条件分页查询表单/页面列表(Form/Page)。适用于查找页面及其元信息。
63
-
64
- 【整数映射速查】(输入筛选按字符串传入,如 status 传 "1"、type 传 "5";输出字段以数字返回)
65
- - type(页面类型):5-列表查询;1-普通页面;99-二开页面;10-switchpage;11-树导航列表;100-原生页面;101-空白页面;7-报表页面;12-排序页面;300-步骤管理表单;1000-全局函数
66
- - status(状态):1-启用;2-停用
67
- - clientcategorycode(用户端):1-web端;2-app端;6-小程序端
68
- - marktype(创建标记,仅输出):0-平台;1-产品;2-租户
69
- - confsource(配置来源,仅输出):1-IDE配置;2-用户级配置`,
70
- inputSchema: {
71
- status: z.string().optional().describe('状态,整数含义:1-启用;2-停用。示例传 "1"'),
72
- keys: z.string().optional().describe('模糊匹配表单 code / title'),
73
- keywords: z.string().optional().describe('模糊匹配表单中的关键词'),
74
- clientcategorycode: z.string().optional().describe('用户端分类编码,1-web端;2-app端;6-小程序端'),
75
- page: z.string().optional().describe('分页,当前页,从 1 开始'),
76
- rows: z.string().optional().describe('分页,每页记录数'),
77
- type: z.string().optional().describe('类型(整数)含义:5-列表查询;1-普通页面;99-二开页面;10-switchpage;11-树导航列表;100-原生页面;101-空白页面;7-报表页面;12-排序页面;300-步骤管理表单;1000-全局函数'),
78
- updateopname: z.string().optional().describe('最近修改人姓名'),
79
- updatetimestart: z.string().optional().describe('修改开始时间,与修改结束时间成对出现,格式:yyyy-MM-dd hh:mm:ss'),
80
- updatetimeend: z.string().optional().describe('修改结束时间,与修改开始时间成对出现,格式:yyyy-MM-dd hh:mm:ss')
81
- },
82
- outputSchema: {
83
- data: z.array(formPageResultShape).describe('这一页的业务数据'),
84
- pageCount: z.coerce.number().describe('总页数'),
85
- pageIndex: z.coerce.number().describe('第几页'),
86
- pageSize: z.coerce.number().describe('每页记录数'),
87
- resultCount: z.coerce.number().describe('总记录数')
88
- },
89
- annotations: {
90
- readOnlyHint: true, // 此操作不会修改数据
91
- destructiveHint: false, // 此操作不具有破坏性
92
- idempotentHint: true // 重复调用结果相同
93
- }
94
- },
95
- handler: async (args) => {
96
- const { status = '', keys = '', keywords = '', clientcategorycode = '', page = 1, rows = 20, type = '', updateopname = '', updatetimestart = '', updatetimeend = '' } = args;
97
- try {
98
- const res = await pageFormList({
99
- // 以下为接口固定默认传值,不对外暴露
100
- centercode: '',
101
- directorytypecode: 'rootNode',
102
- starttime: '',
103
- status,
104
- keys,
105
- keywords,
106
- clientcategorycode,
107
- page: Number(page) || 1,
108
- rows: Number(rows) || 20,
109
- type,
110
- updateopname,
111
- updatetimestart,
112
- updatetimeend
113
- });
114
- return {
115
- content: [{
116
- type: 'text',
117
- text: JSON.stringify(res.resp_data)
118
- }],
119
- // outputSchema 已在工具上声明,SDK 1.30 要求调用结果必须携带
120
- // structuredContent 与之匹配,否则会抛 -32602;这里同时返回
121
- // 文本(给人/模型阅读)和结构化内容(供 schema 校验)。
122
- structuredContent: res.resp_data
123
- };
124
- }
125
- catch (e) {
126
- // 业务/网络错误:HTTP 非 200 时 Axios 已在传输层抛出,
127
- // 错误体形如 {"error_type":600,"error_code":"token无效,请重新登录","error_params":null}
128
- // 将其原始 JSON 原样返回给模型,不做二次包装。
129
- return {
130
- isError: true,
131
- content: [{
132
- type: 'text',
133
- text: extractError(e)
134
- }]
135
- };
136
- }
137
- },
138
- },
139
- {
140
- name: 'get_form',
141
- config: {
142
- title: '查询表单/页面详情',
143
- description: `根据表单/页面的唯一编码 code 获取其完整详情。返回结构为顶层对象,包含:
144
- - pageinfo:页面基础信息
145
- - businessmodel:引用的后端业务模型/接口(结构同 logicClient 的 LogicResult)
146
- - presenter:事件处理器(加载/按钮点击/下拉改变等时机触发)
147
- - view:页面结构,递归的控件节点树
148
- - controls:扁平控件数组(部分页面才有)
149
- - pageswitch:仅 switchpage 类型才有的页面切换配置
150
- - message:每次保存填写的提交信息(类似 git 提交信息)
151
-
152
- 【字段速查(编码字段与关键结构,供理解返回 JSON)】
153
- pageinfo 关键字段:
154
- code 编码;title 标题;type 页面类型整数(同 page_form_list 的 type:5-列表查询/1-普通页面/99-二开/10-switchpage/11-树导航列表/100-原生/101-空白/7-报表/12-排序/300-步骤管理/1000-全局函数);status 状态(1-启用/2-停用);marktype 创建标记(0-平台/1-产品/2-租户);versionnum 版本号;directorytypecode 目录分类编码;pagetemplatecode 模板编码;clientcategorycode 用户端(1-web/2-app/6-小程序);pagedescr 描述;ref 外部引用(一般空);eventlist 页面级事件(如 onload,含 trigger/handler);reportdesclist 关联报表(reportcode/desccode);cache 缓存配置(keys/enable/submitevents)。
155
- businessmodel(数组,每项):actioncategory/actiontype 动作类型;marktype 创建标记;modelcode 模型编码;modellogiccode/modellogicname 逻辑编码/名称;input/output 业务对象及其 properties(name/objectcode/propertycode/propertytypecode);operations 执行步骤(seq 序号/status/templateref 模板引用/templateparams);status 状态。
156
- presenter:initial 初始化处理器、interface 对外接口(供其他页面调用,靠 key 标识)、handlers 事件处理器(按钮点击等);每项含 code/desc/name/key/condition(flycode 条件)/actions;action 的 type(receivelink 接收参数/flycode 脚本/datarequest 请求后端/eventlink 事件/exportfile 导出/popup 弹窗等)、script(flycode 脚本体)、logiccode(关联后端逻辑)、param(receivelink 传参:datatype/name/ctrlcode/properties)。
157
- view(递归节点树):每个节点 type 为控件种类判别符(layout 布局/report 报表/datagrid 表格/textinput 文本输入/button 按钮/table 表格/dateinput 日期/select 下拉/checkbox 多选/image 图片/upload 上传/text 文本 等),content 为子节点数组(递归),eventlist 节点事件;常用样式/交互属性:title 标题、hidden 隐藏('1'/'0')、readonly 只读、required 必填、placeholder 占位提示、text 文本、icon 图标、width/height 尺寸、color/backgroundcolor 颜色、flex/flexdirection/flexgrow 弹性布局、margin*/padding* 边距/内边距、display 显示方式、bordervisible 边框、checkable 可勾选、multiselectable 多选、searchable 可搜索、maxlength 最大长度、format 格式(如日期)、decimaldigits 小数位、options 下拉选项([{key,text}])、cols 表格列定义。
158
- controls(扁平数组):type/code/name/title/eventlist/options/rows,属性含义同 view 节点。
159
- pageswitch(仅 switchpage):mode 切换模式、menu 菜单、pagerefs 被引用页面(pagecode/functioncode/title/hidden/marktype)、eventlist。
160
- message:提交信息文本。`,
161
- inputSchema: {
162
- code: z.string().describe('表单/页面的唯一编码')
163
- },
164
- // z.looseObject 实现有额外字段时原样透传
165
- outputSchema: z.looseObject(formResultShape),
166
- annotations: {
167
- readOnlyHint: true, // 此操作不会修改数据
168
- destructiveHint: false, // 此操作不具有破坏性
169
- idempotentHint: true // 重复调用结果相同
170
- }
171
- },
172
- handler: async (args) => {
173
- const { code } = args;
174
- try {
175
- const res = await getForm({ code });
176
- return {
177
- content: [{
178
- type: 'text',
179
- text: JSON.stringify(res.resp_data)
180
- }],
181
- // outputSchema 已在工具上声明,SDK 1.30 要求调用结果必须携带
182
- // structuredContent 与之匹配,否则会抛 -32602;这里同时返回
183
- // 文本(给人/模型阅读)和结构化内容(供 schema 校验)。
184
- structuredContent: res.resp_data
185
- };
186
- }
187
- catch (e) {
188
- // 业务/网络错误:HTTP 非 200 时 Axios 已在传输层抛出,
189
- // 错误体形如 {"error_type":600,"error_code":"token无效,请重新登录","error_params":null}
190
- // 将其原始 JSON 原样返回给模型,不做二次包装。
191
- return {
192
- isError: true,
193
- content: [{
194
- type: 'text',
195
- text: extractError(e)
196
- }]
197
- };
198
- }
199
- }
200
- }
201
- ];
202
- //# sourceMappingURL=read.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"read.js","sourceRoot":"","sources":["../../../src/tools/form/read.ts"],"names":[],"mappings":"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"}
@@ -1,187 +0,0 @@
1
- import { z } from 'zod';
2
- import { extractError } from '../../utils/error.js';
3
- import { getFunction, pageFunctionList } from '../../clients/functionClient.js';
4
- /**
5
- * flycode 函数列表查询结果的 outputSchema。
6
- * 字段类型严格依据 functionClient.ts 中的 FunctionPageResult 接口声明构建:
7
- * 除 string | null 外,其余字段均为 number | string | null(可选且可空)。
8
- * string | null -> z.union([z.string(), z.null()]).optional()
9
- * number | string | null -> z.union([z.string(), z.number()]).nullable().optional()
10
- * 描述文字直接采用 functionClient.ts 中 FunctionPageParams / FunctionPageResult 的注释内容;
11
- * catchall 实现服务端返回的额外字段原样透传(不被 SDK 的 outputSchema 校验剥离)。
12
- */
13
- const functionPageResultShape = z.object({
14
- classname: z.union([z.string(), z.null()]).optional().describe('函数英文名'),
15
- createaccountcode: z.union([z.string(), z.number()]).nullable().optional().describe('创建人的账号 code'),
16
- createaccountname: z.union([z.string(), z.null()]).optional().describe('创建人姓名'),
17
- createtime: z.union([z.string(), z.null()]).optional().describe('创建时间'),
18
- dddlayer: z.union([z.string(), z.number()]).nullable().optional().describe('函数层级标识,列表查询时固定传 3,输出同步返回该值'),
19
- directorytypecode: z.union([z.string(), z.number()]).nullable().optional().describe('所属目录分类的编码'),
20
- marktype: z.union([z.string(), z.number()]).nullable().optional().describe('创建标记:0-平台;1-产品;2-租户'),
21
- metamodelcode: z.union([z.string(), z.number()]).nullable().optional().describe('领域模型编码,和 modelcode 共同构成复合主键'),
22
- modelcode: z.union([z.string(), z.number()]).nullable().optional().describe('函数的编码'),
23
- modeldescr: z.union([z.string(), z.null()]).optional().describe('函数描述'),
24
- modelname: z.union([z.string(), z.null()]).optional().describe('函数中文名'),
25
- seq: z.union([z.string(), z.number()]).nullable().optional().describe('顺序'),
26
- status: z.union([z.string(), z.number()]).nullable().optional().describe('状态,含义:1-启用;2-停用'),
27
- tablename: z.union([z.string(), z.null()]).optional().describe('数据库表名(函数一般无对应表,通常为空)'),
28
- updateaccountcode: z.union([z.string(), z.number()]).nullable().optional().describe('最近更新人的账号 code'),
29
- updateaccountname: z.union([z.string(), z.null()]).optional().describe('最近更新人姓名'),
30
- updatetime: z.union([z.string(), z.null()]).optional().describe('最近更新时间')
31
- }).catchall(z.unknown());
32
- /**
33
- * flycode 函数详情查询结果(FunctionResult)的 outputSchema 形状。
34
- * FunctionResult 继承 FunctionPageResult 并额外携带 confjson(flycode 函数代码内容)。
35
- * 描述文字直接采用 functionClient.ts 中 FunctionPageParams / FunctionResult 的注释内容。
36
- * 顶层使用 z.looseObject 实现 passthrough,兼容服务端可能返回的额外顶层字段,
37
- * 避免 -32602 Output validation 报错(详情接口返回结构不稳定时尤其重要)。
38
- */
39
- const functionResultShape = {
40
- classname: z.union([z.string(), z.null()]).optional().describe('函数英文名'),
41
- createaccountcode: z.union([z.string(), z.number()]).nullable().optional().describe('创建人的账号 code'),
42
- createaccountname: z.union([z.string(), z.null()]).optional().describe('创建人姓名'),
43
- createtime: z.union([z.string(), z.null()]).optional().describe('创建时间'),
44
- dddlayer: z.union([z.string(), z.number()]).nullable().optional().describe('函数层级标识,列表查询时固定传 3,输出同步返回该值'),
45
- directorytypecode: z.union([z.string(), z.number()]).nullable().optional().describe('所属目录分类的编码'),
46
- marktype: z.union([z.string(), z.number()]).nullable().optional().describe('创建标记:0-平台;1-产品;2-租户'),
47
- metamodelcode: z.union([z.string(), z.number()]).nullable().optional().describe('领域模型编码,和 modelcode 共同构成复合主键'),
48
- modelcode: z.union([z.string(), z.number()]).nullable().optional().describe('函数的编码'),
49
- modeldescr: z.union([z.string(), z.null()]).optional().describe('函数描述'),
50
- modelname: z.union([z.string(), z.null()]).optional().describe('函数中文名'),
51
- seq: z.union([z.string(), z.number()]).nullable().optional().describe('顺序'),
52
- status: z.union([z.string(), z.number()]).nullable().optional().describe('状态,含义:1-启用;2-停用'),
53
- tablename: z.union([z.string(), z.null()]).optional().describe('数据库表名(函数一般无对应表,通常为空)'),
54
- updateaccountcode: z.union([z.string(), z.number()]).nullable().optional().describe('最近更新人的账号 code'),
55
- updateaccountname: z.union([z.string(), z.null()]).optional().describe('最近更新人姓名'),
56
- updatetime: z.union([z.string(), z.null()]).optional().describe('最近更新时间'),
57
- /** flycode 函数代码内容(详情接口专有字段) */
58
- confjson: z.string().nullable().optional().describe('flycode 函数代码内容')
59
- };
60
- /** 只读类工具:查询、列表、读取等不会修改数据的操作。 */
61
- export const readTools = [
62
- {
63
- name: 'page_function_list',
64
- config: {
65
- title: '分页查询 flycode 函数',
66
- description: `根据查询条件分页查询 flycode 函数列表(Function)。适用于查找函数及其元信息。
67
-
68
- 【整数映射速查】(输入筛选按字符串传入,如 status 传 "1"、dddlayer 固定传 "3";输出字段以数字或字符串返回,两种都兼容)
69
- - dddlayer(函数层级):固定传 3,代表函数类
70
- - marktype(创建标记,仅输出):0-平台;1-产品;2-租户
71
- - status(状态,仅输出):1-启用;2-停用`,
72
- inputSchema: {
73
- classname: z.string().optional().describe('函数英文名'),
74
- name: z.string().optional().describe('函数中文名,通常和 modelname 一致'),
75
- modelname: z.string().optional().describe('函数中文名,通常和 name 一致'),
76
- flycodekey: z.string().optional().describe('函数内容关键字'),
77
- page: z.string().optional().describe('分页,当前页,从 1 开始'),
78
- rows: z.string().optional().describe('分页,每页记录数')
79
- },
80
- outputSchema: {
81
- data: z.array(functionPageResultShape).describe('这一页的业务数据'),
82
- pageCount: z.coerce.number().describe('总页数'),
83
- pageIndex: z.coerce.number().describe('第几页'),
84
- pageSize: z.coerce.number().describe('每页记录数'),
85
- resultCount: z.coerce.number().describe('总记录数')
86
- },
87
- annotations: {
88
- readOnlyHint: true, // 此操作不会修改数据
89
- destructiveHint: false, // 此操作不具有破坏性
90
- idempotentHint: true // 重复调用结果相同
91
- }
92
- },
93
- handler: async (args) => {
94
- const { classname = '', name = '', modelname = '', flycodekey = '', page = 1, rows = 20 } = args;
95
- try {
96
- const res = await pageFunctionList({
97
- // 以下为接口固定默认传值,不对外暴露
98
- dddlayer: 3,
99
- directorytypecode: '',
100
- starttime: '',
101
- classname,
102
- name,
103
- modelname,
104
- flycodekey,
105
- page: Number(page) || 1,
106
- rows: Number(rows) || 20
107
- });
108
- return {
109
- content: [{
110
- type: 'text',
111
- text: JSON.stringify(res.resp_data)
112
- }],
113
- // outputSchema 已在工具上声明,SDK 1.30 要求调用结果必须携带
114
- // structuredContent 与之匹配,否则会抛 -32602;这里同时返回
115
- // 文本(给人/模型阅读)和结构化内容(供 schema 校验)。
116
- structuredContent: res.resp_data
117
- };
118
- }
119
- catch (e) {
120
- // 业务/网络错误:HTTP 非 200 时 Axios 已在传输层抛出,
121
- // 错误体形如 {"error_type":600,"error_code":"token无效,请重新登录","error_params":null}
122
- // 将其原始 JSON 原样返回给模型,不做二次包装。
123
- return {
124
- isError: true,
125
- content: [{
126
- type: 'text',
127
- text: extractError(e)
128
- }]
129
- };
130
- }
131
- }
132
- },
133
- {
134
- name: 'get_function',
135
- config: {
136
- title: '查询 flycode 函数详情',
137
- description: `根据函数的编码 modelcode 查询其完整详情:包含函数的基本信息(英文名、中文名、描述、层级、状态等)以及函数的代码内容 confjson。
138
- 注意:此处的代码和业务逻辑的 flycode 稍有不同,此处的代码仅仅是运行在 Java Nashorn 引擎的 ES5 Javascript 代码,没有 flycode 代码一样的编译 FlyQL 处理、内置对象。
139
- 在业务逻辑 flycode 中通过 loadex("方法名") 加载。
140
-
141
- 【整数/枚举映射速查】(详情返回字段,部分以数字返回、部分以字符串返回,解析时两种都兼容)
142
- - dddlayer(函数层级):固定传 3,代表函数类
143
- - marktype(创建标记):0-平台;1-产品;2-租户
144
- - status(状态):1-启用;2-停用
145
- - confjson:flycode 函数代码内容,是函数实现体的核心字段`,
146
- inputSchema: {
147
- modelcode: z.string().describe('函数的编码')
148
- },
149
- // z.looseObject 实现有额外字段时原样透传
150
- outputSchema: z.looseObject(functionResultShape),
151
- annotations: {
152
- readOnlyHint: true, // 此操作不会修改数据
153
- destructiveHint: false, // 此操作不具有破坏性
154
- idempotentHint: true // 重复调用结果相同
155
- }
156
- },
157
- handler: async (args) => {
158
- const { modelcode } = args;
159
- try {
160
- const res = await getFunction({ modelcode });
161
- return {
162
- content: [{
163
- type: 'text',
164
- text: JSON.stringify(res.resp_data)
165
- }],
166
- // outputSchema 已在工具上声明,SDK 1.30 要求调用结果必须携带
167
- // structuredContent 与之匹配,否则会抛 -32602;这里同时返回
168
- // 文本(给人/模型阅读)和结构化内容(供 schema 校验)。
169
- structuredContent: res.resp_data
170
- };
171
- }
172
- catch (e) {
173
- // 业务/网络错误:HTTP 非 200 时 Axios 已在传输层抛出,
174
- // 错误体形如 {"error_type":600,"error_code":"token无效,请重新登录","error_params":null}
175
- // 将其原始 JSON 原样返回给模型,不做二次包装。
176
- return {
177
- isError: true,
178
- content: [{
179
- type: 'text',
180
- text: extractError(e)
181
- }]
182
- };
183
- }
184
- }
185
- }
186
- ];
187
- //# sourceMappingURL=read.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"read.js","sourceRoot":"","sources":["../../../src/tools/function/read.ts"],"names":[],"mappings":"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"}
@@ -1,170 +0,0 @@
1
- import { z } from 'zod';
2
- import { extractError } from '../../utils/error.js';
3
- import { getModelLogic, pageModelLogicList } from '../../clients/logicClient.js';
4
- import { logicResultShape } from './schemas.js';
5
- /** 只读类工具:查询、列表、读取等不会修改数据的操作。 */
6
- export const readTools = [
7
- {
8
- name: 'page_model_logic_list',
9
- config: {
10
- title: '分页查询业务逻辑',
11
- description: `根据查询条件分页查询业务逻辑列表(ModelLogic)。适用于查找某业务逻辑及其元信息。
12
-
13
- 【整数映射速查】(输入筛选按字符串传入,如 actiontype 传 "3";输出字段以数字返回)
14
- - actiontype(操作类型):1-列表查询;2-单个查询;3-数据提交;4-批量提交;5-导入;6-导出;7-离线数据获取;8-流程;9-业务调度;10-ipaas接口
15
- - actioncategory(行为类型):1-flycode接口;2-微服务;3-内部函数;4-导入;5-导出;6-flycode导入;7-flycode导出
16
- - jobstatus(定时调度任务状态):1-启用;0-停用;2-无调度
17
- - tenantdbname(脚本操作数据库类型):字符串枚举,值=只读 / 读写 / 报表
18
- - execmode(执行方式,仅输出):1-同步;2-异步
19
- - marktype(创建标记,仅输出):0-平台;1-产品;2-租户
20
- - status(状态,仅输出):1-启用
21
- - confsource(配置来源,仅输出):1-IDE配置;2-用户级配置`,
22
- inputSchema: {
23
- keys: z.string().optional().describe('业务逻辑的标题、modellogiccode、或者行为方法名,模糊匹配'),
24
- keywords: z.string().optional().describe('完整 JSON (内含代码) 中的关键字,模糊匹配'),
25
- page: z.string().optional().describe('分页参数,当前页,从 1 开始'),
26
- rows: z.string().optional().describe('分页参数,每页记录数'),
27
- updateopname: z.string().optional().describe('最近修改人姓名,模糊匹配'),
28
- updatetimestart: z.string().optional().describe('最近修改时间 - 开始时间,格式:yyyy-MM-dd hh:mm:ss,和最近修改结束时间成对出现'),
29
- updatetimeend: z.string().optional().describe('最近修改时间 - 结束时间,格式:yyyy-MM-dd hh:mm:ss,和最近修改开始时间成对出现'),
30
- actiontype: z.string().optional().describe('操作类型, 整数, 含义:1-列表查询;2-单个查询;3-数据提交;4-批量提交;5-导入;6-导出;7-离线数据获取;8-流程;9-业务调度;10-ipaas接口'),
31
- actioncategory: z.string().optional().describe('行为类型,整数,含义:1-flycode接口;2-微服务;3-内部函数;4-导入;5-导出;6-flycode导入;7-flycode导出'),
32
- tenantdbname: z.string().optional().describe('脚本操作数据库的类型,字符串枚举,枚举值:只读、读写、报表'),
33
- jobstatus: z.string().optional().describe('定时调度任务状态,整数,含义:1-启用;0-停用;2-无调度')
34
- },
35
- outputSchema: {
36
- data: z.array(z.object({
37
- actiontype: z.coerce.number().optional().nullable().describe('操作类型, 整数, 含义:1-列表查询;2-单个查询;3-数据提交;4-批量提交;5-导入;6-导出;7-离线数据获取;8-流程;9-业务调度;10-ipaas接口'),
38
- createtime: z.string().optional().nullable().describe('创建时间'),
39
- createaccountcode: z.coerce.number().optional().nullable().describe('创建人的账号的唯一编码'),
40
- modelname: z.string().optional().nullable().describe('此业务逻辑所属的业务模型名'),
41
- modellogiccode: z.string().describe('此业务逻辑的编码,和 metamodelcode 共同构成复合主键'),
42
- modellogicname: z.string().optional().nullable().describe('此业务逻辑的标题'),
43
- metamodelcode: z.string().optional().nullable().describe('领域模型编码,和 modellogiccode 共同构成复合主键'),
44
- execmode: z.coerce.number().optional().nullable().describe('执行方式,1-同步;2-异步'),
45
- functionname: z.string().optional().nullable().describe('此业务逻辑的函数命名(A业务逻辑中调用B业务逻辑时要写函数名)'),
46
- actioncategory: z.coerce.number().optional().nullable().describe('行为类型,整数,含义:1-flycode接口;2-微服务;3-内部函数;4-导入;5-导出;6-flycode导入;7-flycode导出'),
47
- modelcode: z.string().describe('此业务逻辑所属的业务模型的唯一编码'),
48
- marktype: z.coerce.number().optional().nullable().describe('创建标记:0-平台;1-产品;2-租户'),
49
- updatetime: z.string().optional().nullable().describe('最近更新时间'),
50
- updateaccountname: z.string().optional().nullable().describe('最近更新人姓名'),
51
- createaccountname: z.string().optional().nullable().describe('创建人姓名'),
52
- seq: z.coerce.number().optional().nullable().describe('顺序'),
53
- status: z.coerce.number().optional().nullable().describe('状态,1-启用'),
54
- confsource: z.coerce.number().optional().nullable().describe('配置来源:1-IDE配置;2-用户级配置'),
55
- updateaccountcode: z.coerce.number().optional().nullable().describe('最近更新人账号的唯一编码')
56
- }).catchall(z.unknown())).describe('这一页的业务数据'),
57
- pageCount: z.coerce.number().describe('总页数'),
58
- pageIndex: z.coerce.number().describe('第几页'),
59
- pageSize: z.coerce.number().describe('每页记录数'),
60
- resultCount: z.coerce.number().describe('总记录数')
61
- },
62
- annotations: {
63
- readOnlyHint: true, // 此操作不会修改数据
64
- destructiveHint: false, // 此操作不具有破坏性
65
- idempotentHint: true // 重复调用结果相同
66
- }
67
- },
68
- handler: async (args) => {
69
- const { keys = '', keywords = '', page = 1, rows = 20, updateopname = '', updatetimestart = '', updatetimeend = '', actiontype = '', actioncategory = '', tenantdbname = '', jobstatus = null } = args;
70
- try {
71
- const res = await pageModelLogicList({
72
- actioncategory,
73
- actiontype,
74
- centercode: '',
75
- directorytypecode: 'rootNode',
76
- jobstatus,
77
- keys,
78
- keywords,
79
- modelcode: 'rootNode',
80
- page: Number(page) || 1,
81
- rows: Number(rows) || 20,
82
- tenantdbname,
83
- updateopname,
84
- updatetimeend,
85
- updatetimestart,
86
- });
87
- return {
88
- content: [{
89
- type: 'text',
90
- text: JSON.stringify(res.resp_data)
91
- }],
92
- // outputSchema 已在工具上声明,SDK 1.30 要求调用结果必须携带
93
- // structuredContent 与之匹配,否则会抛 -32602;这里同时返回
94
- // 文本(给人/模型阅读)和结构化内容(供 schema 校验)。
95
- structuredContent: res.resp_data
96
- };
97
- }
98
- catch (e) {
99
- // 业务/网络错误:HTTP 非 200 时 Axios 已在传输层抛出,
100
- // 错误体形如 {"error_type":600,"error_code":"token无效,请重新登录","error_params":null}
101
- // 将其原始 JSON 原样返回给模型,不做二次包装。
102
- return {
103
- isError: true,
104
- content: [{
105
- type: 'text',
106
- text: extractError(e)
107
- }]
108
- };
109
- }
110
- }
111
- },
112
- {
113
- name: 'get_model_logic',
114
- config: {
115
- title: '查询业务逻辑详情',
116
- description: `根据业务逻辑的编码 modellogiccode 查询其完整详情:包含 flycode 脚本(operations 内 templateparams.flycode)、输入输出参数(input/output,分别定义 flycode 内置对象 IN / OUT 的结构与字段属性 properties,含 propertytypecode 字段类型)以及操作步骤等。
117
-
118
- 【整数/枚举映射速查】(详情返回字段,部分以数字返回、部分以字符串返回,解析时两种都兼容)
119
- - actioncategory(行为类型):1-flycode接口;2-微服务;3-内部函数;4-导入;5-导出;6-flycode导入;7-flycode导出
120
- - actiontype(操作类型):1-列表查询;2-单个查询;3-数据提交;4-批量提交;5-导入;6-导出;7-离线数据获取;8-流程;9-业务调度;10-ipaas接口
121
- - execmode(执行方式):1-同步;2-异步
122
- - executionmode(执行模式):standard-标准模式;strict-严格模式
123
- - marktype(创建标记):0-平台;1-产品;2-租户
124
- - status(状态):1-启用
125
- - confsource(配置来源):1-IDE配置;2-用户级配置
126
- - tenantdbname(租户数据库操作权限):只读-只能查询;读写-可增删改查;报表-保留字段
127
- - usedatarule(是否使用数据权限):1 代表使用数据权限
128
- - input/output[].datatype(参数形态):0-单实体(IN.name 是对象);1-数组(IN.name 是数组)
129
- - input/output[].properties[].propertytypecode(字段类型):1-主键(int8);2-名称(200);3-文本(200);4-长文本;5-整数(int4);6-长整数(int8);10-数字(numeric);7-日期时间(ts);30-时间范围;29-年月日(date);18-状态(int4);16-图片;26-附件;17-定位;19-选项集;200000000000-关联对象;100000000000-业务对象;10000000000-字典对象;300000000000-复杂关联对象;1000000000-本对象;8-创建人(int8);9-修改人(int8);11-创建时间(ts);12-修改时间(ts);31-拼音;100-是否默认;13-手机号;15-固定电话;14-邮箱;27-邮编;20-排序(int4)`,
130
- inputSchema: {
131
- modellogiccode: z.string().describe('要查详情的业务逻辑的编码')
132
- },
133
- outputSchema: logicResultShape,
134
- annotations: {
135
- readOnlyHint: true, // 此操作不会修改数据
136
- destructiveHint: false, // 此操作不具有破坏性
137
- idempotentHint: true // 重复调用结果相同
138
- }
139
- },
140
- handler: async (args) => {
141
- const { modellogiccode } = args;
142
- try {
143
- const res = await getModelLogic({ modellogiccode });
144
- return {
145
- content: [{
146
- type: 'text',
147
- text: JSON.stringify(res.resp_data)
148
- }],
149
- // outputSchema 已在工具上声明,SDK 1.30 要求调用结果必须携带
150
- // structuredContent 与之匹配,否则会抛 -32602;这里同时返回
151
- // 文本(给人/模型阅读)和结构化内容(供 schema 校验)。
152
- structuredContent: res.resp_data
153
- };
154
- }
155
- catch (e) {
156
- // 业务/网络错误:HTTP 非 200 时 Axios 已在传输层抛出,
157
- // 错误体形如 {"error_type":600,"error_code":"token无效,请重新登录","error_params":null}
158
- // 将其原始 JSON 原样返回给模型,不做二次包装。
159
- return {
160
- isError: true,
161
- content: [{
162
- type: 'text',
163
- text: extractError(e)
164
- }]
165
- };
166
- }
167
- }
168
- }
169
- ];
170
- //# sourceMappingURL=read.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"read.js","sourceRoot":"","sources":["../../../src/tools/logic/read.ts"],"names":[],"mappings":"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"}