@wowok/agent-mcp 2.3.7 → 2.3.9

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 (43) hide show
  1. package/dist/index.d.ts +1 -15838
  2. package/dist/index.js +40 -394
  3. package/dist/schema/call/base.d.ts +24 -24
  4. package/dist/schema/call/bridge-handler.d.ts +5 -0
  5. package/dist/schema/call/bridge-handler.js +234 -0
  6. package/dist/schema/call/bridge.d.ts +2212 -0
  7. package/dist/schema/call/bridge.js +408 -0
  8. package/dist/schema/call/handler.js +29 -15
  9. package/dist/schema/call/index.d.ts +1 -0
  10. package/dist/schema/call/index.js +1 -0
  11. package/dist/schema/call/service.js +1 -1
  12. package/dist/schema/index.d.ts +1 -0
  13. package/dist/schema/index.js +1 -0
  14. package/dist/schema/local/index.d.ts +70 -70
  15. package/dist/schema/local/index.js +2 -2
  16. package/dist/schema/messenger/index.d.ts +74 -74
  17. package/dist/schema/operations.d.ts +24302 -0
  18. package/dist/schema/operations.js +393 -0
  19. package/dist/schema-query/index.d.ts +3 -1
  20. package/dist/schema-query/index.js +63 -3
  21. package/dist/schemas/account_operation.output.json +1397 -0
  22. package/dist/schemas/bridge_operation.output.json +64 -0
  23. package/dist/schemas/bridge_operation.schema.json +547 -0
  24. package/dist/schemas/guard2file.output.json +84 -0
  25. package/dist/schemas/index.json +33 -14
  26. package/dist/schemas/local_info_operation.output.json +70 -0
  27. package/dist/schemas/local_mark_operation.output.json +114 -0
  28. package/dist/schemas/machineNode2file.output.json +89 -0
  29. package/dist/schemas/messenger_operation.output.json +1068 -0
  30. package/dist/schemas/onchain_events.output.json +513 -0
  31. package/dist/schemas/onchain_operations.output.json +1766 -0
  32. package/dist/schemas/onchain_operations.schema.json +8324 -49
  33. package/dist/schemas/onchain_operations_service.schema.json +1 -1
  34. package/dist/schemas/onchain_table_data.output.json +1938 -0
  35. package/dist/schemas/onchain_table_data.schema.json +483 -22
  36. package/dist/schemas/query_toolkit.output.json +18 -0
  37. package/dist/schemas/query_toolkit.schema.json +454 -19
  38. package/dist/schemas/schema_query.output.json +42 -0
  39. package/dist/schemas/schema_query.schema.json +1 -0
  40. package/dist/schemas/wip_file.output.json +116 -0
  41. package/dist/schemas/wip_file.schema.json +163 -15
  42. package/dist/schemas/wowok_buildin_info.output.json +577 -0
  43. package/package.json +2 -2
@@ -6,27 +6,462 @@
6
6
  "$ref": "#/definitions/query_toolkit",
7
7
  "definitions": {
8
8
  "query_toolkit": {
9
- "type": "object",
10
- "properties": {
11
- "query_type": {
12
- "type": "string",
13
- "enum": [
14
- "local_mark_list",
15
- "account_list",
16
- "local_info_list",
17
- "token_list",
18
- "account_balance",
19
- "local_names",
20
- "onchain_personal_profile",
21
- "onchain_objects",
22
- "onchain_received"
9
+ "anyOf": [
10
+ {
11
+ "anyOf": [
12
+ {
13
+ "type": "object",
14
+ "properties": {
15
+ "query_type": {
16
+ "type": "string",
17
+ "const": "local_mark_list"
18
+ },
19
+ "filter": {
20
+ "type": "object",
21
+ "properties": {
22
+ "name": {
23
+ "type": "string",
24
+ "description": "Filter by mark name (supports fuzzy match)"
25
+ },
26
+ "tags": {
27
+ "type": "array",
28
+ "items": {
29
+ "type": "string"
30
+ },
31
+ "description": "Filter by tags - returns marks that contain ANY of the specified tags"
32
+ },
33
+ "address": {
34
+ "type": "string",
35
+ "description": "Filter by address (exact match, format: 0x + 64 hex characters)"
36
+ },
37
+ "createdAt": {
38
+ "type": "object",
39
+ "properties": {
40
+ "gte": {
41
+ "type": "number",
42
+ "description": "Filter marks created on or after this timestamp (ms)"
43
+ },
44
+ "lte": {
45
+ "type": "number",
46
+ "description": "Filter marks created on or before this timestamp (ms)"
47
+ }
48
+ },
49
+ "additionalProperties": false,
50
+ "description": "Filter by creation time range"
51
+ },
52
+ "updatedAt": {
53
+ "type": "object",
54
+ "properties": {
55
+ "gte": {
56
+ "type": "number",
57
+ "description": "Filter marks updated on or after this timestamp (ms)"
58
+ },
59
+ "lte": {
60
+ "type": "number",
61
+ "description": "Filter marks updated on or before this timestamp (ms)"
62
+ }
63
+ },
64
+ "additionalProperties": false,
65
+ "description": "Filter by update time range"
66
+ }
67
+ },
68
+ "additionalProperties": false,
69
+ "description": "Local mark filter"
70
+ }
71
+ },
72
+ "required": [
73
+ "query_type"
74
+ ],
75
+ "additionalProperties": false,
76
+ "description": "Query your LOCAL address book — maps human-readable names to blockchain addresses with optional tags. Use to resolve names→addresses or find addresses by tag. Returns: MarkData[] (name, address, tags, timestamps)"
77
+ },
78
+ {
79
+ "type": "object",
80
+ "properties": {
81
+ "query_type": {
82
+ "type": "string",
83
+ "const": "account_list"
84
+ },
85
+ "filter": {
86
+ "type": "object",
87
+ "properties": {
88
+ "name": {
89
+ "$ref": "#/definitions/query_toolkit/anyOf/0/anyOf/0/properties/filter/properties/name",
90
+ "description": "Filter by account name (supports fuzzy match)"
91
+ },
92
+ "address": {
93
+ "$ref": "#/definitions/query_toolkit/anyOf/0/anyOf/0/properties/filter/properties/address",
94
+ "description": "Filter by account address (supports partial match, format: 0x + hex characters)"
95
+ },
96
+ "suspended": {
97
+ "type": "boolean",
98
+ "description": "Filter by suspension status. Omit to return all accounts regardless of status"
99
+ },
100
+ "hasMessenger": {
101
+ "type": "boolean",
102
+ "description": "Filter accounts with messenger enabled"
103
+ },
104
+ "m": {
105
+ "$ref": "#/definitions/query_toolkit/anyOf/0/anyOf/0/properties/filter/properties/name",
106
+ "description": "Filter by messenger name (supports fuzzy match)"
107
+ },
108
+ "createdAt": {
109
+ "type": "object",
110
+ "properties": {
111
+ "gte": {
112
+ "type": "number",
113
+ "description": "Filter accounts created on or after this timestamp (ms)"
114
+ },
115
+ "lte": {
116
+ "type": "number",
117
+ "description": "Filter accounts created on or before this timestamp (ms)"
118
+ }
119
+ },
120
+ "additionalProperties": false,
121
+ "description": "Filter by creation time range"
122
+ },
123
+ "updatedAt": {
124
+ "type": "object",
125
+ "properties": {
126
+ "gte": {
127
+ "type": "number",
128
+ "description": "Filter accounts updated on or after this timestamp (ms)"
129
+ },
130
+ "lte": {
131
+ "type": "number",
132
+ "description": "Filter accounts updated on or before this timestamp (ms)"
133
+ }
134
+ },
135
+ "additionalProperties": false,
136
+ "description": "Filter by update time range"
137
+ }
138
+ },
139
+ "additionalProperties": false,
140
+ "description": "Account filter"
141
+ }
142
+ },
143
+ "required": [
144
+ "query_type"
145
+ ],
146
+ "additionalProperties": false,
147
+ "description": "Query your LOCAL accounts — view all accounts stored on this device (addresses, public keys, messenger status, suspension state). Use to discover available accounts before operations. Returns: AccountData[] (name, address, pubkey, suspended, messenger, timestamps)"
148
+ },
149
+ {
150
+ "type": "object",
151
+ "properties": {
152
+ "query_type": {
153
+ "type": "string",
154
+ "const": "local_info_list"
155
+ },
156
+ "filter": {
157
+ "type": "object",
158
+ "properties": {
159
+ "name": {
160
+ "$ref": "#/definitions/query_toolkit/anyOf/0/anyOf/0/properties/filter/properties/name",
161
+ "description": "Filter by info name (supports fuzzy match)"
162
+ },
163
+ "default": {
164
+ "type": "string",
165
+ "description": "Filter by default value (supports fuzzy match)"
166
+ },
167
+ "contents": {
168
+ "type": "array",
169
+ "items": {
170
+ "type": "string"
171
+ },
172
+ "description": "Filter by contents - returns info that contains ANY of the specified content items"
173
+ },
174
+ "createdAt": {
175
+ "type": "object",
176
+ "properties": {
177
+ "gte": {
178
+ "type": "number",
179
+ "description": "Filter info created on or after this timestamp (ms)"
180
+ },
181
+ "lte": {
182
+ "type": "number",
183
+ "description": "Filter info created on or before this timestamp (ms)"
184
+ }
185
+ },
186
+ "additionalProperties": false,
187
+ "description": "Filter by creation time range"
188
+ },
189
+ "updatedAt": {
190
+ "type": "object",
191
+ "properties": {
192
+ "gte": {
193
+ "type": "number",
194
+ "description": "Filter info updated on or after this timestamp (ms)"
195
+ },
196
+ "lte": {
197
+ "type": "number",
198
+ "description": "Filter info updated on or before this timestamp (ms)"
199
+ }
200
+ },
201
+ "additionalProperties": false,
202
+ "description": "Filter by update time range"
203
+ }
204
+ },
205
+ "additionalProperties": false,
206
+ "description": "Local info filter"
207
+ }
208
+ },
209
+ "required": [
210
+ "query_type"
211
+ ],
212
+ "additionalProperties": false,
213
+ "description": "Query your LOCAL private info — sensitive data like delivery addresses, phone numbers, contacts stored ONLY on this device. Use to retrieve saved contact/delivery details. Returns: InfoData[] (name, default value, contents, timestamps)"
214
+ },
215
+ {
216
+ "type": "object",
217
+ "properties": {
218
+ "query_type": {
219
+ "type": "string",
220
+ "const": "token_list"
221
+ },
222
+ "filter": {
223
+ "type": "object",
224
+ "properties": {
225
+ "alias_or_name": {
226
+ "$ref": "#/definitions/query_toolkit/anyOf/0/anyOf/0/properties/filter/properties/name",
227
+ "description": "Alias or name filter"
228
+ },
229
+ "symbol": {
230
+ "type": "string",
231
+ "description": "Token symbol"
232
+ },
233
+ "type": {
234
+ "type": "string",
235
+ "description": "Token type"
236
+ }
237
+ },
238
+ "additionalProperties": false,
239
+ "description": "Token data filter"
240
+ }
241
+ },
242
+ "required": [
243
+ "query_type"
244
+ ],
245
+ "additionalProperties": false,
246
+ "description": "Query cached token metadata — symbol, decimals, icon URL, description for tokens previously fetched from chain. Use to look up token info without an on-chain query. Returns: TokenTypeInfo[] (type, alias, name, symbol, decimals, iconUrl)"
247
+ },
248
+ {
249
+ "type": "object",
250
+ "properties": {
251
+ "query_type": {
252
+ "type": "string",
253
+ "const": "account_balance"
254
+ },
255
+ "name_or_address": {
256
+ "type": "string",
257
+ "description": "Account name or address. Use empty string '' for the default account. Defaults to '' if omitted."
258
+ },
259
+ "balance": {
260
+ "type": "boolean",
261
+ "description": "Set to true to query total balance amount for the token type"
262
+ },
263
+ "coin": {
264
+ "type": "object",
265
+ "properties": {
266
+ "cursor": {
267
+ "type": [
268
+ "string",
269
+ "null"
270
+ ],
271
+ "description": "Pagination cursor for listing coin objects"
272
+ },
273
+ "limit": {
274
+ "type": [
275
+ "number",
276
+ "null"
277
+ ],
278
+ "description": "Max coin objects per page"
279
+ }
280
+ },
281
+ "additionalProperties": false,
282
+ "description": "Set to query paginated coin objects instead of balance. Use cursor/limit for pagination."
283
+ },
284
+ "token_type": {
285
+ "type": "string",
286
+ "description": "Token type to query; defaults to 0x2::wow::WOW (platform token)"
287
+ },
288
+ "network": {
289
+ "type": "string",
290
+ "enum": [
291
+ "localnet",
292
+ "testnet",
293
+ "mainnet"
294
+ ],
295
+ "description": "Network entrypoint: Specifies which network the operation occurs on"
296
+ }
297
+ },
298
+ "required": [
299
+ "query_type"
300
+ ],
301
+ "additionalProperties": false,
302
+ "description": "Query an account's coin balance OR paginated coin objects. Use balance=true for total amount, or coin={cursor,limit} to list individual coin objects. Returns: { address, balance? | coin? }"
303
+ },
304
+ {
305
+ "type": "object",
306
+ "properties": {
307
+ "query_type": {
308
+ "type": "string",
309
+ "const": "local_names"
310
+ },
311
+ "addresses": {
312
+ "type": "array",
313
+ "items": {
314
+ "type": "string"
315
+ },
316
+ "description": "Array of addresses to look up local names for"
317
+ }
318
+ },
319
+ "required": [
320
+ "query_type",
321
+ "addresses"
322
+ ],
323
+ "additionalProperties": false,
324
+ "description": "Query local names (account name and local mark name) for a list of addresses. Returns array of: { account?: string, local_mark?: string, address: string }"
325
+ }
326
+ ]
327
+ },
328
+ {
329
+ "anyOf": [
330
+ {
331
+ "type": "object",
332
+ "properties": {
333
+ "query_type": {
334
+ "type": "string",
335
+ "const": "onchain_personal_profile"
336
+ },
337
+ "account": {
338
+ "$ref": "#/definitions/query_toolkit/anyOf/0/anyOf/4/properties/name_or_address",
339
+ "description": "Account name or ID to query. Use empty string '' for the default account."
340
+ },
341
+ "no_cache": {
342
+ "type": "boolean",
343
+ "description": "Set to true to bypass cache and fetch fresh on-chain data"
344
+ },
345
+ "network": {
346
+ "$ref": "#/definitions/query_toolkit/anyOf/0/anyOf/4/properties/network",
347
+ "description": "Network entrypoint: Specifies which network the operation occurs on"
348
+ }
349
+ },
350
+ "required": [
351
+ "query_type"
352
+ ],
353
+ "additionalProperties": false,
354
+ "description": "Query any user's PUBLIC on-chain profile — social links, reputation (likes/dislikes), personal info records, voting history, referrer. Use to look up a user's public identity and reputation. Returns: ObjectPersonal | undefined"
355
+ },
356
+ {
357
+ "type": "object",
358
+ "properties": {
359
+ "query_type": {
360
+ "type": "string",
361
+ "const": "onchain_objects"
362
+ },
363
+ "objects": {
364
+ "type": "array",
365
+ "items": {
366
+ "$ref": "#/definitions/query_toolkit/anyOf/0/anyOf/4/properties/name_or_address"
367
+ },
368
+ "description": "List of object IDs (names or addresses) to query in batch"
369
+ },
370
+ "no_cache": {
371
+ "type": "boolean",
372
+ "description": "Set to true to bypass cache and fetch fresh on-chain data"
373
+ },
374
+ "network": {
375
+ "$ref": "#/definitions/query_toolkit/anyOf/0/anyOf/4/properties/network",
376
+ "description": "Network entrypoint: Specifies which network the operation occurs on"
377
+ }
378
+ },
379
+ "required": [
380
+ "query_type",
381
+ "objects"
382
+ ],
383
+ "additionalProperties": false,
384
+ "description": "Batch query on-chain WOWOK objects by ID or name — supports Service, Machine, Order, Treasury, Reward, Arb, Personal, Contact, and more. Use to inspect one or more objects in a single call. Returns: { objects: ObjectBase[] }"
385
+ },
386
+ {
387
+ "type": "object",
388
+ "properties": {
389
+ "query_type": {
390
+ "type": "string",
391
+ "const": "onchain_received"
392
+ },
393
+ "name_or_address": {
394
+ "anyOf": [
395
+ {
396
+ "type": "string",
397
+ "description": "Account name, address (0x...), or mark name. When using string format, local marks are searched first. EXAMPLE: 'alice' - searches local marks first, then global; EXAMPLE: '0x1234...' - uses address directly"
398
+ },
399
+ {
400
+ "type": "object",
401
+ "properties": {
402
+ "name_or_address": {
403
+ "$ref": "#/definitions/query_toolkit/anyOf/0/anyOf/4/properties/name_or_address",
404
+ "description": "Account/Object name or ID. If specifying an account, use empty string '' for the default account. If it starts with '0x', it will be treated as an ID. Otherwise, it will be treated as a name (max 64 bcs characters)."
405
+ },
406
+ "local_mark_first": {
407
+ "type": "boolean",
408
+ "description": "Whether to prioritize local marks, if true, prioritize local marks, otherwise prioritize global marks"
409
+ }
410
+ },
411
+ "additionalProperties": false,
412
+ "description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account."
413
+ }
414
+ ],
415
+ "description": "Name or address of the object that received payments/items - can be a string (name/address) or full object"
416
+ },
417
+ "type": {
418
+ "anyOf": [
419
+ {
420
+ "type": "string"
421
+ },
422
+ {
423
+ "type": "string",
424
+ "const": "CoinWrapper"
425
+ },
426
+ {
427
+ "type": "null"
428
+ }
429
+ ],
430
+ "description": "Type filter for querying received objects. - If undefined or null: query all types (equivalent to the old all_type=true). - If 'CoinWrapper': query CoinWrapper type for the object's token (equivalent to the old all_type=false). - If string: query specific StructType (e.g., '0x2::payment::CoinWrapper<0x2::wow::WOW>')."
431
+ },
432
+ "cursor": {
433
+ "type": [
434
+ "string",
435
+ "null"
436
+ ],
437
+ "description": "Pagination cursor from previous page"
438
+ },
439
+ "limit": {
440
+ "type": [
441
+ "number",
442
+ "null"
443
+ ],
444
+ "description": "Max records per page"
445
+ },
446
+ "no_cache": {
447
+ "type": "boolean",
448
+ "description": "Set to true to bypass cache and fetch fresh on-chain data"
449
+ },
450
+ "network": {
451
+ "$ref": "#/definitions/query_toolkit/anyOf/0/anyOf/4/properties/network",
452
+ "description": "Network entrypoint: Specifies which network the operation occurs on"
453
+ }
454
+ },
455
+ "required": [
456
+ "query_type",
457
+ "name_or_address"
458
+ ],
459
+ "additionalProperties": false,
460
+ "description": "Query objects (Payments, Tokens, NFTs) received by a specific object. Use to track incoming payments or items sent to an on-chain object. Supports pagination and type filter. Returns: ReceivedBalance | ReceivedNormal[]"
461
+ }
23
462
  ]
24
463
  }
25
- },
26
- "required": [
27
- "query_type"
28
- ],
29
- "additionalProperties": false
464
+ ]
30
465
  }
31
466
  }
32
467
  }
@@ -0,0 +1,42 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "https://wowok.net/schemas/schema_query.json",
4
+ "title": "Schema Query",
5
+ "description": "Query JSON schemas for all WoWok MCP tools and operations",
6
+ "$ref": "#/definitions/schema_query",
7
+ "definitions": {
8
+ "schema_query": {
9
+ "type": "object",
10
+ "properties": {
11
+ "success": {
12
+ "type": "boolean",
13
+ "description": "Whether the request was successful"
14
+ },
15
+ "action": {
16
+ "type": "string",
17
+ "description": "The action that was performed"
18
+ },
19
+ "data": {
20
+ "description": "Response data - JSON Schema object for 'get'/'get_output', array of schema info for 'list'/'search'/'list_operations'"
21
+ },
22
+ "message": {
23
+ "type": "string",
24
+ "description": "Human-readable message describing the result"
25
+ },
26
+ "suggestions": {
27
+ "type": "array",
28
+ "items": {
29
+ "type": "string"
30
+ },
31
+ "description": "Suggested next steps or alternatives"
32
+ }
33
+ },
34
+ "required": [
35
+ "success",
36
+ "action",
37
+ "message"
38
+ ],
39
+ "additionalProperties": false
40
+ }
41
+ }
42
+ }
@@ -13,6 +13,7 @@
13
13
  "enum": [
14
14
  "list",
15
15
  "get",
16
+ "get_output",
16
17
  "search",
17
18
  "list_operations"
18
19
  ]
@@ -0,0 +1,116 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "https://wowok.net/schemas/wip_file.json",
4
+ "title": "WIP File Operations",
5
+ "description": "Generate, verify, sign, or convert WIP files",
6
+ "$ref": "#/definitions/wip_file",
7
+ "definitions": {
8
+ "wip_file": {
9
+ "type": "object",
10
+ "properties": {
11
+ "result": {
12
+ "anyOf": [
13
+ {
14
+ "type": "object",
15
+ "properties": {
16
+ "type": {
17
+ "type": "string",
18
+ "const": "generate"
19
+ },
20
+ "filePath": {
21
+ "type": "string"
22
+ }
23
+ },
24
+ "required": [
25
+ "type",
26
+ "filePath"
27
+ ],
28
+ "additionalProperties": false
29
+ },
30
+ {
31
+ "type": "object",
32
+ "properties": {
33
+ "type": {
34
+ "type": "string",
35
+ "const": "verify"
36
+ },
37
+ "valid": {
38
+ "type": "boolean"
39
+ },
40
+ "error": {
41
+ "type": "string"
42
+ },
43
+ "hashValid": {
44
+ "type": "boolean"
45
+ },
46
+ "signatureValid": {
47
+ "type": "boolean"
48
+ },
49
+ "hasSignature": {
50
+ "type": "boolean"
51
+ },
52
+ "signatures": {
53
+ "type": "array"
54
+ }
55
+ },
56
+ "required": [
57
+ "type",
58
+ "valid",
59
+ "hashValid",
60
+ "hasSignature"
61
+ ],
62
+ "additionalProperties": false
63
+ },
64
+ {
65
+ "type": "object",
66
+ "properties": {
67
+ "type": {
68
+ "type": "string",
69
+ "const": "sign"
70
+ },
71
+ "filePath": {
72
+ "type": "string"
73
+ }
74
+ },
75
+ "required": [
76
+ "type",
77
+ "filePath"
78
+ ],
79
+ "additionalProperties": false
80
+ },
81
+ {
82
+ "type": "object",
83
+ "properties": {
84
+ "type": {
85
+ "type": "string",
86
+ "const": "wip2html"
87
+ },
88
+ "html": {
89
+ "type": "string"
90
+ },
91
+ "filePath": {
92
+ "type": "string"
93
+ },
94
+ "files": {
95
+ "type": "array",
96
+ "items": {
97
+ "type": "string"
98
+ }
99
+ }
100
+ },
101
+ "required": [
102
+ "type"
103
+ ],
104
+ "additionalProperties": false
105
+ }
106
+ ],
107
+ "description": "WIP operation output schema with discriminator"
108
+ }
109
+ },
110
+ "required": [
111
+ "result"
112
+ ],
113
+ "additionalProperties": false
114
+ }
115
+ }
116
+ }