@tiwater/office-mcp 0.17.33 → 0.18.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.
@@ -7,19 +7,31 @@
7
7
  "minLength": 1,
8
8
  "x-tiwater-file-role": "read"
9
9
  },
10
- "refs": {
11
- "description": "Object refs from one current DOCX observation, returned in this order. Use row, cell, or paragraph refs; table-rooted reads are rejected.",
10
+ "addresses": {
11
+ "minItems": 1,
12
12
  "type": "array",
13
- "items": { "type": "string", "pattern": "^dox1_[0-9a-f]{64}$" },
14
- "minItems": 1
15
- },
16
- "revision": {
17
- "description": "Optional expected revision id from the observation receipt; a changed document fails as stale.",
18
- "type": "string",
19
- "pattern": "^docx-rev-v1-[0-9a-f]{64}$"
13
+ "items": {
14
+ "type": "object",
15
+ "properties": {
16
+ "part": {
17
+ "type": "string",
18
+ "minLength": 1
19
+ },
20
+ "path": {
21
+ "type": "string",
22
+ "pattern": "^\\/"
23
+ }
24
+ },
25
+ "required": [
26
+ "part",
27
+ "path"
28
+ ],
29
+ "additionalProperties": false
30
+ },
31
+ "description": "OpenXML addresses returned by observation."
20
32
  },
21
33
  "kinds": {
22
- "description": "Object kinds required by the next operation. Include paragraph for table content boundaries. Request run or text only when ref identifies a cell or paragraph, never a whole table.",
34
+ "minItems": 1,
23
35
  "type": "array",
24
36
  "items": {
25
37
  "type": "string",
@@ -34,18 +46,17 @@
34
46
  "drawing"
35
47
  ]
36
48
  },
37
- "minItems": 1
49
+ "description": "Descendant object kinds to return."
38
50
  },
39
51
  "output": {
40
52
  "type": "string",
41
53
  "minLength": 1,
42
- "description": "Absolute path for a new JSON artifact containing the selected native object and only the requested descendant kinds.",
43
54
  "x-tiwater-file-role": "write"
44
55
  }
45
56
  },
46
57
  "required": [
47
58
  "input",
48
- "refs",
59
+ "addresses",
49
60
  "kinds",
50
61
  "output"
51
62
  ],
@@ -1,120 +1,297 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "tiwater.office-mcp-input/docx_replace_table_rows",
4
3
  "type": "object",
5
4
  "properties": {
6
- "targetDocument": {
7
- "type": "object",
8
- "description": "Exact current target document for every table replacement in this call.",
9
- "properties": {
10
- "input": { "type": "string", "minLength": 1, "x-tiwater-file-role": "read" }
11
- },
12
- "required": ["input"],
13
- "additionalProperties": false
5
+ "input": {
6
+ "type": "string",
7
+ "minLength": 1,
8
+ "x-tiwater-file-role": "read"
14
9
  },
15
10
  "tables": {
16
- "type": "array",
17
- "description": "One or more table replacements for targetDocument. Each item may use a different source document.",
18
11
  "minItems": 1,
12
+ "type": "array",
19
13
  "items": {
20
14
  "type": "object",
21
15
  "properties": {
22
- "sourceDocument": {
16
+ "sourceInput": {
17
+ "type": "string",
18
+ "minLength": 1,
19
+ "x-tiwater-file-role": "read"
20
+ },
21
+ "sourceTable": {
23
22
  "type": "object",
24
- "description": "Exact source document for this table edit.",
25
23
  "properties": {
26
- "input": { "type": "string", "minLength": 1, "x-tiwater-file-role": "read" }
24
+ "part": {
25
+ "type": "string",
26
+ "minLength": 1
27
+ },
28
+ "path": {
29
+ "type": "string",
30
+ "pattern": "^\\/"
31
+ }
27
32
  },
28
- "required": ["input"],
33
+ "required": [
34
+ "part",
35
+ "path"
36
+ ],
29
37
  "additionalProperties": false
30
38
  },
31
- "sourceTableRef": { "type": "string", "pattern": "^dox1_[0-9a-f]{64}$" },
32
39
  "sourceRows": {
33
40
  "type": "object",
34
- "description": "Exact contiguous source rows to copy. Select only wanted rows; the range cannot begin or end inside a vertical merge.",
35
41
  "properties": {
36
- "firstRef": { "type": "string", "pattern": "^dox1_[0-9a-f]{64}$" },
37
- "lastRef": { "type": "string", "pattern": "^dox1_[0-9a-f]{64}$" }
42
+ "first": {
43
+ "type": "object",
44
+ "properties": {
45
+ "part": {
46
+ "type": "string",
47
+ "minLength": 1
48
+ },
49
+ "path": {
50
+ "type": "string",
51
+ "pattern": "^\\/"
52
+ }
53
+ },
54
+ "required": [
55
+ "part",
56
+ "path"
57
+ ],
58
+ "additionalProperties": false
59
+ },
60
+ "last": {
61
+ "type": "object",
62
+ "properties": {
63
+ "part": {
64
+ "type": "string",
65
+ "minLength": 1
66
+ },
67
+ "path": {
68
+ "type": "string",
69
+ "pattern": "^\\/"
70
+ }
71
+ },
72
+ "required": [
73
+ "part",
74
+ "path"
75
+ ],
76
+ "additionalProperties": false
77
+ }
78
+ },
79
+ "required": [
80
+ "first",
81
+ "last"
82
+ ],
83
+ "additionalProperties": false
84
+ },
85
+ "targetTable": {
86
+ "type": "object",
87
+ "properties": {
88
+ "part": {
89
+ "type": "string",
90
+ "minLength": 1
91
+ },
92
+ "path": {
93
+ "type": "string",
94
+ "pattern": "^\\/"
95
+ }
38
96
  },
39
- "required": ["firstRef", "lastRef"],
97
+ "required": [
98
+ "part",
99
+ "path"
100
+ ],
40
101
  "additionalProperties": false
41
102
  },
42
- "targetTableRef": { "type": "string", "pattern": "^dox1_[0-9a-f]{64}$" },
43
103
  "targetRows": {
44
104
  "type": "object",
45
- "description": "Complete target data-row range to replace. Exclude every header row, including continuation rows in a multi-row header; the range cannot start or end inside a vertical merge.",
46
105
  "properties": {
47
- "firstRef": { "type": "string", "pattern": "^dox1_[0-9a-f]{64}$" },
48
- "lastRef": { "type": "string", "pattern": "^dox1_[0-9a-f]{64}$" }
106
+ "first": {
107
+ "type": "object",
108
+ "properties": {
109
+ "part": {
110
+ "type": "string",
111
+ "minLength": 1
112
+ },
113
+ "path": {
114
+ "type": "string",
115
+ "pattern": "^\\/"
116
+ }
117
+ },
118
+ "required": [
119
+ "part",
120
+ "path"
121
+ ],
122
+ "additionalProperties": false
123
+ },
124
+ "last": {
125
+ "type": "object",
126
+ "properties": {
127
+ "part": {
128
+ "type": "string",
129
+ "minLength": 1
130
+ },
131
+ "path": {
132
+ "type": "string",
133
+ "pattern": "^\\/"
134
+ }
135
+ },
136
+ "required": [
137
+ "part",
138
+ "path"
139
+ ],
140
+ "additionalProperties": false
141
+ }
49
142
  },
50
- "required": ["firstRef", "lastRef"],
143
+ "required": [
144
+ "first",
145
+ "last"
146
+ ],
51
147
  "additionalProperties": false
52
148
  },
53
149
  "columns": {
54
- "type": "array",
55
- "minItems": 1,
56
- "description": "One mapping per logical header cell. A header cell owns its full OpenXML gridSpan; do not add separate mappings for physical grid columns inside that span.",
150
+ "minItems": 1,
151
+ "type": "array",
57
152
  "items": {
58
153
  "type": "object",
59
154
  "properties": {
60
- "sourceHeaderRef": { "type": "string", "pattern": "^dox1_[0-9a-f]{64}$" },
61
- "targetHeaderRef": { "type": "string", "pattern": "^dox1_[0-9a-f]{64}$" }
155
+ "sourceHeader": {
156
+ "type": "object",
157
+ "properties": {
158
+ "part": {
159
+ "type": "string",
160
+ "minLength": 1
161
+ },
162
+ "path": {
163
+ "type": "string",
164
+ "pattern": "^\\/"
165
+ }
166
+ },
167
+ "required": [
168
+ "part",
169
+ "path"
170
+ ],
171
+ "additionalProperties": false
172
+ },
173
+ "targetHeader": {
174
+ "type": "object",
175
+ "properties": {
176
+ "part": {
177
+ "type": "string",
178
+ "minLength": 1
179
+ },
180
+ "path": {
181
+ "type": "string",
182
+ "pattern": "^\\/"
183
+ }
184
+ },
185
+ "required": [
186
+ "part",
187
+ "path"
188
+ ],
189
+ "additionalProperties": false
190
+ }
62
191
  },
63
- "required": ["sourceHeaderRef", "targetHeaderRef"],
192
+ "required": [
193
+ "sourceHeader",
194
+ "targetHeader"
195
+ ],
64
196
  "additionalProperties": false
65
197
  }
66
198
  },
67
199
  "sourceCellContents": {
68
200
  "type": "array",
69
- "description": "Optional exact native content selections for source cells in the selected row range. Unlisted cells copy all paragraphs. An empty selection writes one empty paragraph while preserving the copied row and target presentation.",
70
201
  "items": {
71
202
  "type": "object",
72
203
  "properties": {
73
- "sourceCellRef": {
74
- "type": "string",
75
- "pattern": "^dox1_[0-9a-f]{64}$",
76
- "description": "Observed source cell ref belonging to the selected source rows. Each source cell may appear once."
204
+ "sourceCell": {
205
+ "type": "object",
206
+ "properties": {
207
+ "part": {
208
+ "type": "string",
209
+ "minLength": 1
210
+ },
211
+ "path": {
212
+ "type": "string",
213
+ "pattern": "^\\/"
214
+ }
215
+ },
216
+ "required": [
217
+ "part",
218
+ "path"
219
+ ],
220
+ "additionalProperties": false
77
221
  },
78
222
  "sourceSelections": {
79
223
  "type": "array",
80
- "description": "Ordered content copied into this source cell's mapped target cell. Select a whole observed object by ref alone, or an exact substring by adding range to a run or text ref.",
81
224
  "items": {
82
225
  "type": "object",
83
226
  "properties": {
84
- "ref": {
85
- "type": "string",
86
- "pattern": "^dox1_[0-9a-f]{64}$",
87
- "description": "Observed object ref belonging to sourceCellRef. When range is present this must be a run or text ref."
227
+ "address": {
228
+ "type": "object",
229
+ "properties": {
230
+ "part": {
231
+ "type": "string",
232
+ "minLength": 1
233
+ },
234
+ "path": {
235
+ "type": "string",
236
+ "pattern": "^\\/"
237
+ }
238
+ },
239
+ "required": [
240
+ "part",
241
+ "path"
242
+ ],
243
+ "additionalProperties": false
88
244
  },
89
245
  "range": {
90
246
  "type": "object",
91
- "description": "Zero-based substring within the selected run or text object.",
92
247
  "properties": {
93
- "start": { "type": "integer", "minimum": 0, "maximum": 2147483647 },
94
- "length": { "type": "integer", "exclusiveMinimum": 0, "maximum": 2147483647 }
248
+ "start": {
249
+ "type": "integer",
250
+ "minimum": 0,
251
+ "maximum": 9007199254740991
252
+ },
253
+ "length": {
254
+ "type": "integer",
255
+ "exclusiveMinimum": 0,
256
+ "maximum": 9007199254740991
257
+ }
95
258
  },
96
- "required": ["start", "length"],
259
+ "required": [
260
+ "start",
261
+ "length"
262
+ ],
97
263
  "additionalProperties": false
98
264
  }
99
265
  },
100
- "required": ["ref"],
266
+ "required": [
267
+ "address"
268
+ ],
101
269
  "additionalProperties": false
102
270
  }
103
271
  }
104
272
  },
105
- "required": ["sourceCellRef", "sourceSelections"],
273
+ "required": [
274
+ "sourceCell",
275
+ "sourceSelections"
276
+ ],
106
277
  "additionalProperties": false
107
278
  }
108
279
  }
109
280
  },
110
- "required": ["sourceDocument", "sourceTableRef", "sourceRows", "targetTableRef", "targetRows", "columns"],
281
+ "required": [
282
+ "sourceInput",
283
+ "sourceTable",
284
+ "sourceRows",
285
+ "targetTable",
286
+ "targetRows",
287
+ "columns"
288
+ ],
111
289
  "additionalProperties": false
112
290
  }
113
291
  },
114
292
  "output": {
115
293
  "type": "string",
116
294
  "minLength": 1,
117
- "description": "New DOCX revision. Every targetDocument object ref becomes stale after success; observe this output before any later structural call.",
118
295
  "x-tiwater-file-role": "write"
119
296
  },
120
297
  "receiptOutput": {
@@ -124,6 +301,12 @@
124
301
  "x-tiwater-file-effect": false
125
302
  }
126
303
  },
127
- "required": ["targetDocument", "tables", "output", "receiptOutput"],
128
- "additionalProperties": false
304
+ "required": [
305
+ "input",
306
+ "tables",
307
+ "output",
308
+ "receiptOutput"
309
+ ],
310
+ "additionalProperties": false,
311
+ "$id": "tiwater.office-mcp-input/docx_replace_table_rows"
129
312
  }
@@ -1,35 +1,52 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "tiwater.office-mcp-input/docx_set_text",
4
3
  "type": "object",
5
4
  "properties": {
6
- "targetDocument": {
7
- "type": "object",
8
- "properties": {
9
- "input": { "type": "string", "minLength": 1, "x-tiwater-file-role": "read" },
10
- "revision": { "type": "string", "pattern": "^docx-rev-v1-[0-9a-f]{64}$" }
11
- },
12
- "required": ["input", "revision"],
13
- "additionalProperties": false
5
+ "input": {
6
+ "type": "string",
7
+ "minLength": 1,
8
+ "x-tiwater-file-role": "read"
14
9
  },
15
10
  "changes": {
16
- "type": "array",
17
11
  "minItems": 1,
12
+ "type": "array",
18
13
  "items": {
19
14
  "type": "object",
20
15
  "properties": {
21
- "targetRef": {
22
- "type": "string",
23
- "pattern": "^dox1_[0-9a-f]{64}$",
24
- "description": "Observed paragraph or cell ref whose whole text content is replaced. Bookmarks and target formatting are preserved; tabs and line breaks are written as native OpenXML text controls. Targets containing fields, drawings, nested tables, controls, links, or other non-text content are rejected."
16
+ "target": {
17
+ "type": "object",
18
+ "properties": {
19
+ "part": {
20
+ "type": "string",
21
+ "minLength": 1
22
+ },
23
+ "path": {
24
+ "type": "string",
25
+ "pattern": "^\\/"
26
+ }
27
+ },
28
+ "required": [
29
+ "part",
30
+ "path"
31
+ ],
32
+ "additionalProperties": false
25
33
  },
26
- "text": { "type": "string" }
34
+ "text": {
35
+ "type": "string"
36
+ }
27
37
  },
28
- "required": ["targetRef", "text"],
38
+ "required": [
39
+ "target",
40
+ "text"
41
+ ],
29
42
  "additionalProperties": false
30
43
  }
31
44
  },
32
- "output": { "type": "string", "minLength": 1, "x-tiwater-file-role": "write" },
45
+ "output": {
46
+ "type": "string",
47
+ "minLength": 1,
48
+ "x-tiwater-file-role": "write"
49
+ },
33
50
  "receiptOutput": {
34
51
  "type": "string",
35
52
  "minLength": 1,
@@ -37,6 +54,12 @@
37
54
  "x-tiwater-file-effect": false
38
55
  }
39
56
  },
40
- "required": ["targetDocument", "changes", "output", "receiptOutput"],
41
- "additionalProperties": false
57
+ "required": [
58
+ "input",
59
+ "changes",
60
+ "output",
61
+ "receiptOutput"
62
+ ],
63
+ "additionalProperties": false,
64
+ "$id": "tiwater.office-mcp-input/docx_set_text"
42
65
  }
@@ -1,36 +1,65 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "tiwater.office-mcp-input/docx_split_cells",
4
3
  "type": "object",
5
4
  "properties": {
6
- "targetDocument": {
7
- "type": "object",
8
- "properties": {
9
- "input": { "type": "string", "minLength": 1, "x-tiwater-file-role": "read" },
10
- "revision": { "type": "string", "minLength": 1 }
11
- },
12
- "required": ["input", "revision"],
13
- "additionalProperties": false
5
+ "input": {
6
+ "type": "string",
7
+ "minLength": 1,
8
+ "x-tiwater-file-role": "read"
14
9
  },
15
10
  "changes": {
16
- "type": "array",
17
11
  "minItems": 1,
12
+ "type": "array",
18
13
  "items": {
19
14
  "type": "object",
20
15
  "properties": {
21
- "cellRefs": {
22
- "type": "array",
16
+ "cells": {
23
17
  "minItems": 1,
24
- "items": { "type": "string", "pattern": "^dox1_[0-9a-f]{64}$" }
18
+ "type": "array",
19
+ "items": {
20
+ "type": "object",
21
+ "properties": {
22
+ "part": {
23
+ "type": "string",
24
+ "minLength": 1
25
+ },
26
+ "path": {
27
+ "type": "string",
28
+ "pattern": "^\\/"
29
+ }
30
+ },
31
+ "required": [
32
+ "part",
33
+ "path"
34
+ ],
35
+ "additionalProperties": false
36
+ }
25
37
  }
26
38
  },
27
- "required": ["cellRefs"],
39
+ "required": [
40
+ "cells"
41
+ ],
28
42
  "additionalProperties": false
29
43
  }
30
44
  },
31
- "output": { "type": "string", "minLength": 1, "x-tiwater-file-role": "write" },
32
- "receiptOutput": { "type": "string", "minLength": 1, "x-tiwater-file-role": "write", "x-tiwater-file-effect": false }
45
+ "output": {
46
+ "type": "string",
47
+ "minLength": 1,
48
+ "x-tiwater-file-role": "write"
49
+ },
50
+ "receiptOutput": {
51
+ "type": "string",
52
+ "minLength": 1,
53
+ "x-tiwater-file-role": "write",
54
+ "x-tiwater-file-effect": false
55
+ }
33
56
  },
34
- "required": ["targetDocument", "changes", "output", "receiptOutput"],
35
- "additionalProperties": false
57
+ "required": [
58
+ "input",
59
+ "changes",
60
+ "output",
61
+ "receiptOutput"
62
+ ],
63
+ "additionalProperties": false,
64
+ "$id": "tiwater.office-mcp-input/docx_split_cells"
36
65
  }