@wowok/agent-mcp 2.3.10 → 2.3.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1056,11 +1056,11 @@ async function main() {
1056
1056
  }, handleOnchainEvents);
1057
1057
  server.registerTool("wowok_buildin_info", {
1058
1058
  title: "ℹ️ WoWok Build-in Information",
1059
- description: "Query WoWok protocol information: 'constants', 'built-in permissions', 'guard instructions', 'current network', or 'value types'.",
1059
+ description: "Query WoWok protocol information: 'constants', 'built-in permissions', 'guard instructions', 'current network', 'value types', or 'mainnet bridge tokens'. For 'mainnet bridge tokens': returns cross-chain bridge tokens (ETH, WETH, WBTC, USDC, USDT) with each token's symbol, WOW-side type tag (wowTypeTag), EVM address, decimals, and description. The wowTypeTag (format {address}::{module}::{struct}) can be used directly as the `type_parameter` of Service / Treasury / Reward / Allocation objects to set their payment token — e.g. use USDT's wowTypeTag to create a Service that accepts USDT payments.",
1060
1060
  inputSchema: ProtocolInfoQuerySchema,
1061
1061
  outputSchema: ProtocolInfoResultSchema,
1062
1062
  annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: true },
1063
- _meta: createToolMeta("WoWok info", ["build-in", "constants", "permissions", "guard", "network", "value-types"]),
1063
+ _meta: createToolMeta("WoWok info", ["build-in", "constants", "permissions", "guard", "network", "value-types", "bridge-tokens"]),
1064
1064
  }, handleWowokInfo);
1065
1065
  server.registerTool("schema_query", {
1066
1066
  title: "📋 Schema Query",
@@ -42,14 +42,14 @@ export const DescriptionObjectSchema = z.union([
42
42
  NamedObjectWithDescriptionSchema.describe("Object format: CREATE a NEW object with name, optional description, and visibility settings. Extends NamedObjectSchema with an additional 'description' field for detailed object information.")
43
43
  ]).describe("Two ways to specify an object: (1) STRING - Reference an EXISTING object by name or ID; (2) OBJECT - CREATE a NEW object with full configuration including optional name, tags, description, and visibility settings (local private by default, or public on-chain with onChain:true).");
44
44
  export const TypeNamedObjectSchema = NamedObjectSchema.extend({
45
- type_parameter: TokenTypeWithDefaultSchema.describe("Token type of the on-chain object, e.g. '0x2::wow::WOW'. Defines what token this object can use for payments."),
46
- }).describe("Create a new named object (with optional tags) and specify a token type for payments (e.g., WOW).");
45
+ type_parameter: TokenTypeWithDefaultSchema.describe("Payment token type for this object (format: {address}::{module}::{struct}). e.g. '0x2::wow::WOW' (WOW, the default), '0x...::usdt::USDT' (USDT), '0x...::eth::ETH' (ETH). Defines which token this object accepts for payments. To discover all available tokens and their type tags, call wowok_buildin_info with info 'mainnet bridge tokens' and use the returned `wowTypeTag` value here."),
46
+ }).describe("Create a new named object (with optional tags) and specify a token type for payments (e.g., WOW, USDT, ETH).");
47
47
  export const NamedObjectWithPermissionSchema = NamedObjectSchema.extend({
48
48
  permission: DescriptionObjectSchema.optional(),
49
49
  }).strict().describe("Use a Permission object to manage access control: (1) Specify an existing Permission object's name or ID; (2) Create a new Permission object (which can be named and tagged); or (3) Leave empty to automatically create a new unnamed Permission object.");
50
50
  export const TypeNamedObjectWithPermissionSchema = NamedObjectWithPermissionSchema.extend({
51
- type_parameter: TokenTypeWithDefaultSchema.describe("Type parameter (token type) of the on-chain object, e.g. '0x2::wow::WOW'. Defines what token this object can use for payments."),
52
- }).strict().describe("Create a new named on-chain object with both a specific token type AND permission control. Use this when you need to specify a token type (e.g., WOW) for payment operations AND require permission management (who can manage/operate this object). For objects without permission management, use TypeNamedObjectSchema instead.");
51
+ type_parameter: TokenTypeWithDefaultSchema.describe("Payment token type for this object (format: {address}::{module}::{struct}). e.g. '0x2::wow::WOW' (WOW, the default), '0x...::usdt::USDT' (USDT), '0x...::eth::ETH' (ETH). Defines which token this object accepts for payments. To discover all available tokens and their type tags, call wowok_buildin_info with info 'mainnet bridge tokens' and use the returned `wowTypeTag` value here."),
52
+ }).strict().describe("Create a new named on-chain object with both a specific token type (e.g., WOW, USDT, ETH) AND permission control. Use this when you need to specify a token type for payment operations AND require permission management (who can manage/operate this object). For objects without permission management, use TypeNamedObjectSchema instead.");
53
53
  export const CoinParamSchema = z.union([
54
54
  z.object({
55
55
  balance: BalanceTypeSchema,
@@ -1019,17 +1019,17 @@ export declare const BridgeQuerySupportedTokensResultSchema: z.ZodArray<z.ZodObj
1019
1019
  symbol: string;
1020
1020
  description: string;
1021
1021
  tokenId: number;
1022
+ wowTypeTag: string;
1022
1023
  evmAddress: string;
1023
1024
  evmDecimals: number;
1024
- wowTypeTag: string;
1025
1025
  wowDecimals: number;
1026
1026
  }, {
1027
1027
  symbol: string;
1028
1028
  description: string;
1029
1029
  tokenId: number;
1030
+ wowTypeTag: string;
1030
1031
  evmAddress: string;
1031
1032
  evmDecimals: number;
1032
- wowTypeTag: string;
1033
1033
  wowDecimals: number;
1034
1034
  }>, "many">;
1035
1035
  }, "strip", z.ZodTypeAny, {
@@ -1037,9 +1037,9 @@ export declare const BridgeQuerySupportedTokensResultSchema: z.ZodArray<z.ZodObj
1037
1037
  symbol: string;
1038
1038
  description: string;
1039
1039
  tokenId: number;
1040
+ wowTypeTag: string;
1040
1041
  evmAddress: string;
1041
1042
  evmDecimals: number;
1042
- wowTypeTag: string;
1043
1043
  wowDecimals: number;
1044
1044
  }[];
1045
1045
  chainId: number;
@@ -1050,9 +1050,9 @@ export declare const BridgeQuerySupportedTokensResultSchema: z.ZodArray<z.ZodObj
1050
1050
  symbol: string;
1051
1051
  description: string;
1052
1052
  tokenId: number;
1053
+ wowTypeTag: string;
1053
1054
  evmAddress: string;
1054
1055
  evmDecimals: number;
1055
- wowTypeTag: string;
1056
1056
  wowDecimals: number;
1057
1057
  }[];
1058
1058
  chainId: number;
@@ -1626,17 +1626,17 @@ export declare const BridgeOutputSchema: z.ZodDiscriminatedUnion<"operation_type
1626
1626
  symbol: string;
1627
1627
  description: string;
1628
1628
  tokenId: number;
1629
+ wowTypeTag: string;
1629
1630
  evmAddress: string;
1630
1631
  evmDecimals: number;
1631
- wowTypeTag: string;
1632
1632
  wowDecimals: number;
1633
1633
  }, {
1634
1634
  symbol: string;
1635
1635
  description: string;
1636
1636
  tokenId: number;
1637
+ wowTypeTag: string;
1637
1638
  evmAddress: string;
1638
1639
  evmDecimals: number;
1639
- wowTypeTag: string;
1640
1640
  wowDecimals: number;
1641
1641
  }>, "many">;
1642
1642
  }, "strip", z.ZodTypeAny, {
@@ -1644,9 +1644,9 @@ export declare const BridgeOutputSchema: z.ZodDiscriminatedUnion<"operation_type
1644
1644
  symbol: string;
1645
1645
  description: string;
1646
1646
  tokenId: number;
1647
+ wowTypeTag: string;
1647
1648
  evmAddress: string;
1648
1649
  evmDecimals: number;
1649
- wowTypeTag: string;
1650
1650
  wowDecimals: number;
1651
1651
  }[];
1652
1652
  chainId: number;
@@ -1657,9 +1657,9 @@ export declare const BridgeOutputSchema: z.ZodDiscriminatedUnion<"operation_type
1657
1657
  symbol: string;
1658
1658
  description: string;
1659
1659
  tokenId: number;
1660
+ wowTypeTag: string;
1660
1661
  evmAddress: string;
1661
1662
  evmDecimals: number;
1662
- wowTypeTag: string;
1663
1663
  wowDecimals: number;
1664
1664
  }[];
1665
1665
  chainId: number;
@@ -1673,9 +1673,9 @@ export declare const BridgeOutputSchema: z.ZodDiscriminatedUnion<"operation_type
1673
1673
  symbol: string;
1674
1674
  description: string;
1675
1675
  tokenId: number;
1676
+ wowTypeTag: string;
1676
1677
  evmAddress: string;
1677
1678
  evmDecimals: number;
1678
- wowTypeTag: string;
1679
1679
  wowDecimals: number;
1680
1680
  }[];
1681
1681
  chainId: number;
@@ -1690,9 +1690,9 @@ export declare const BridgeOutputSchema: z.ZodDiscriminatedUnion<"operation_type
1690
1690
  symbol: string;
1691
1691
  description: string;
1692
1692
  tokenId: number;
1693
+ wowTypeTag: string;
1693
1694
  evmAddress: string;
1694
1695
  evmDecimals: number;
1695
- wowTypeTag: string;
1696
1696
  wowDecimals: number;
1697
1697
  }[];
1698
1698
  chainId: number;
@@ -49,10 +49,10 @@ export const TokenTypeSchema = z
49
49
  }, {
50
50
  message: "Invalid token type format. Expected: {address}::{module}::{struct} where address is 0x+64hex, module/struct are valid Move identifiers, or '0x2::wow::WOW'"
51
51
  })
52
- .describe("Token type in format: {address}::{module}::{struct}. Example: 0x2::wow::WOW");
52
+ .describe("Token type in format: {address}::{module}::{struct}. e.g. '0x2::wow::WOW' (WOW), '0x...::usdt::USDT' (USDT), '0x...::eth::ETH' (ETH). To discover all available tokens and their type tags, query 'mainnet bridge tokens' via wowok_buildin_info and use the returned `wowTypeTag` here.");
53
53
  export const TokenTypeWithDefaultSchema = TokenTypeSchema
54
54
  .default(WOW_TOKEN_TYPE)
55
- .describe("Token type in format: {address}::{module}::{struct}. Default: 0x2::wow::WOW");
55
+ .describe("Token type in format: {address}::{module}::{struct}. Default: '0x2::wow::WOW'. Other examples: '0x...::usdt::USDT' (USDT), '0x...::eth::ETH' (ETH). To discover all available tokens and their type tags, query 'mainnet bridge tokens' via wowok_buildin_info and use the returned `wowTypeTag` here.");
56
56
  export const NameSchema = z
57
57
  .string()
58
58
  .refine(isValidName, "Name string (max 64 bcs characters, must not start with '0x')");
@@ -47077,6 +47077,34 @@ export declare const PermissionFilterSchema: z.ZodObject<{
47077
47077
  objectType?: import("@wowok/wowok").ObjectType | undefined;
47078
47078
  index?: number | undefined;
47079
47079
  }>;
47080
+ export declare const BridgeTokenInfoSchema: z.ZodObject<{
47081
+ tokenId: z.ZodNumber;
47082
+ symbol: z.ZodString;
47083
+ wowTypeTag: z.ZodString;
47084
+ evmAddress: z.ZodString;
47085
+ evmDecimals: z.ZodNumber;
47086
+ wowDecimals: z.ZodNumber;
47087
+ evmChains: z.ZodOptional<z.ZodArray<z.ZodNumber, "many">>;
47088
+ description: z.ZodOptional<z.ZodString>;
47089
+ }, "strip", z.ZodTypeAny, {
47090
+ symbol: string;
47091
+ tokenId: number;
47092
+ wowTypeTag: string;
47093
+ evmAddress: string;
47094
+ evmDecimals: number;
47095
+ wowDecimals: number;
47096
+ description?: string | undefined;
47097
+ evmChains?: number[] | undefined;
47098
+ }, {
47099
+ symbol: string;
47100
+ tokenId: number;
47101
+ wowTypeTag: string;
47102
+ evmAddress: string;
47103
+ evmDecimals: number;
47104
+ wowDecimals: number;
47105
+ description?: string | undefined;
47106
+ evmChains?: number[] | undefined;
47107
+ }>;
47080
47108
  export declare const ProtocolInfoQuerySchema: z.ZodDiscriminatedUnion<"info", [z.ZodObject<{
47081
47109
  info: z.ZodLiteral<"constants">;
47082
47110
  }, "strip", z.ZodTypeAny, {
@@ -47173,6 +47201,12 @@ export declare const ProtocolInfoQuerySchema: z.ZodDiscriminatedUnion<"info", [z
47173
47201
  info: "value types";
47174
47202
  }, {
47175
47203
  info: "value types";
47204
+ }>, z.ZodObject<{
47205
+ info: z.ZodLiteral<"mainnet bridge tokens">;
47206
+ }, "strip", z.ZodTypeAny, {
47207
+ info: "mainnet bridge tokens";
47208
+ }, {
47209
+ info: "mainnet bridge tokens";
47176
47210
  }>]>;
47177
47211
  export declare const BuiltinPermissionSchema: z.ZodObject<{
47178
47212
  result: z.ZodArray<z.ZodObject<{
@@ -47361,6 +47395,60 @@ export declare const ProtocolInfoResultWrappedSchema: z.ZodDiscriminatedUnion<"i
47361
47395
  description: string;
47362
47396
  }[];
47363
47397
  info: "value types";
47398
+ }>, z.ZodObject<{
47399
+ info: z.ZodLiteral<"mainnet bridge tokens">;
47400
+ result: z.ZodArray<z.ZodObject<{
47401
+ tokenId: z.ZodNumber;
47402
+ symbol: z.ZodString;
47403
+ wowTypeTag: z.ZodString;
47404
+ evmAddress: z.ZodString;
47405
+ evmDecimals: z.ZodNumber;
47406
+ wowDecimals: z.ZodNumber;
47407
+ evmChains: z.ZodOptional<z.ZodArray<z.ZodNumber, "many">>;
47408
+ description: z.ZodOptional<z.ZodString>;
47409
+ }, "strip", z.ZodTypeAny, {
47410
+ symbol: string;
47411
+ tokenId: number;
47412
+ wowTypeTag: string;
47413
+ evmAddress: string;
47414
+ evmDecimals: number;
47415
+ wowDecimals: number;
47416
+ description?: string | undefined;
47417
+ evmChains?: number[] | undefined;
47418
+ }, {
47419
+ symbol: string;
47420
+ tokenId: number;
47421
+ wowTypeTag: string;
47422
+ evmAddress: string;
47423
+ evmDecimals: number;
47424
+ wowDecimals: number;
47425
+ description?: string | undefined;
47426
+ evmChains?: number[] | undefined;
47427
+ }>, "many">;
47428
+ }, "strip", z.ZodTypeAny, {
47429
+ result: {
47430
+ symbol: string;
47431
+ tokenId: number;
47432
+ wowTypeTag: string;
47433
+ evmAddress: string;
47434
+ evmDecimals: number;
47435
+ wowDecimals: number;
47436
+ description?: string | undefined;
47437
+ evmChains?: number[] | undefined;
47438
+ }[];
47439
+ info: "mainnet bridge tokens";
47440
+ }, {
47441
+ result: {
47442
+ symbol: string;
47443
+ tokenId: number;
47444
+ wowTypeTag: string;
47445
+ evmAddress: string;
47446
+ evmDecimals: number;
47447
+ wowDecimals: number;
47448
+ description?: string | undefined;
47449
+ evmChains?: number[] | undefined;
47450
+ }[];
47451
+ info: "mainnet bridge tokens";
47364
47452
  }>]>;
47365
47453
  export declare const ProtocolInfoResultSchema: z.ZodObject<{
47366
47454
  result: z.ZodDiscriminatedUnion<"info", [z.ZodObject<{
@@ -47518,6 +47606,60 @@ export declare const ProtocolInfoResultSchema: z.ZodObject<{
47518
47606
  description: string;
47519
47607
  }[];
47520
47608
  info: "value types";
47609
+ }>, z.ZodObject<{
47610
+ info: z.ZodLiteral<"mainnet bridge tokens">;
47611
+ result: z.ZodArray<z.ZodObject<{
47612
+ tokenId: z.ZodNumber;
47613
+ symbol: z.ZodString;
47614
+ wowTypeTag: z.ZodString;
47615
+ evmAddress: z.ZodString;
47616
+ evmDecimals: z.ZodNumber;
47617
+ wowDecimals: z.ZodNumber;
47618
+ evmChains: z.ZodOptional<z.ZodArray<z.ZodNumber, "many">>;
47619
+ description: z.ZodOptional<z.ZodString>;
47620
+ }, "strip", z.ZodTypeAny, {
47621
+ symbol: string;
47622
+ tokenId: number;
47623
+ wowTypeTag: string;
47624
+ evmAddress: string;
47625
+ evmDecimals: number;
47626
+ wowDecimals: number;
47627
+ description?: string | undefined;
47628
+ evmChains?: number[] | undefined;
47629
+ }, {
47630
+ symbol: string;
47631
+ tokenId: number;
47632
+ wowTypeTag: string;
47633
+ evmAddress: string;
47634
+ evmDecimals: number;
47635
+ wowDecimals: number;
47636
+ description?: string | undefined;
47637
+ evmChains?: number[] | undefined;
47638
+ }>, "many">;
47639
+ }, "strip", z.ZodTypeAny, {
47640
+ result: {
47641
+ symbol: string;
47642
+ tokenId: number;
47643
+ wowTypeTag: string;
47644
+ evmAddress: string;
47645
+ evmDecimals: number;
47646
+ wowDecimals: number;
47647
+ description?: string | undefined;
47648
+ evmChains?: number[] | undefined;
47649
+ }[];
47650
+ info: "mainnet bridge tokens";
47651
+ }, {
47652
+ result: {
47653
+ symbol: string;
47654
+ tokenId: number;
47655
+ wowTypeTag: string;
47656
+ evmAddress: string;
47657
+ evmDecimals: number;
47658
+ wowDecimals: number;
47659
+ description?: string | undefined;
47660
+ evmChains?: number[] | undefined;
47661
+ }[];
47662
+ info: "mainnet bridge tokens";
47521
47663
  }>]>;
47522
47664
  }, "strip", z.ZodTypeAny, {
47523
47665
  result: {
@@ -47557,6 +47699,18 @@ export declare const ProtocolInfoResultSchema: z.ZodObject<{
47557
47699
  description: string;
47558
47700
  }[];
47559
47701
  info: "value types";
47702
+ } | {
47703
+ result: {
47704
+ symbol: string;
47705
+ tokenId: number;
47706
+ wowTypeTag: string;
47707
+ evmAddress: string;
47708
+ evmDecimals: number;
47709
+ wowDecimals: number;
47710
+ description?: string | undefined;
47711
+ evmChains?: number[] | undefined;
47712
+ }[];
47713
+ info: "mainnet bridge tokens";
47560
47714
  };
47561
47715
  }, {
47562
47716
  result: {
@@ -47596,6 +47750,18 @@ export declare const ProtocolInfoResultSchema: z.ZodObject<{
47596
47750
  description: string;
47597
47751
  }[];
47598
47752
  info: "value types";
47753
+ } | {
47754
+ result: {
47755
+ symbol: string;
47756
+ tokenId: number;
47757
+ wowTypeTag: string;
47758
+ evmAddress: string;
47759
+ evmDecimals: number;
47760
+ wowDecimals: number;
47761
+ description?: string | undefined;
47762
+ evmChains?: number[] | undefined;
47763
+ }[];
47764
+ info: "mainnet bridge tokens";
47599
47765
  };
47600
47766
  }>;
47601
47767
  export declare const LocalQueryResultSchema: z.ZodUnion<[z.ZodObject<{
@@ -73356,6 +73522,7 @@ export type ServiceSale = z.infer<typeof ServiceSaleSchema>;
73356
73522
  export type PurchasedItem = z.infer<typeof PurchasedItemSchema>;
73357
73523
  export type ConstantItem = z.infer<typeof ConstantItemSchema>;
73358
73524
  export type PermissionInfoType = z.infer<typeof PermissionInfoTypeSchema>;
73525
+ export type BridgeTokenInfo = z.infer<typeof BridgeTokenInfoSchema>;
73359
73526
  export type ProtocolInfoQuery = z.infer<typeof ProtocolInfoQuerySchema>;
73360
73527
  export type ProtocolInfoResult = z.infer<typeof ProtocolInfoResultSchema>;
73361
73528
  export type ProtocolInfoResultWrapped = z.infer<typeof ProtocolInfoResultWrappedSchema>;
@@ -1185,6 +1185,16 @@ export const PermissionFilterSchema = z.object({
1185
1185
  index: z.optional(PermissionIndexTypeSchema).describe('Index filter'),
1186
1186
  description: z.optional(z.string()).describe('Description filter')
1187
1187
  }).describe('Permission filter');
1188
+ export const BridgeTokenInfoSchema = z.object({
1189
+ tokenId: z.number().describe('On-chain token ID (mainnet: WBTC=1, ETH/WETH=2, USDC=3, USDT=4)'),
1190
+ symbol: z.string().describe('Token symbol/abbreviation (ETH, WETH, WBTC, USDC, USDT)'),
1191
+ wowTypeTag: z.string().describe('WOW-side token type tag (format: {address}::{module}::{struct}, e.g. "0x2::wow::WOW", "0x...::usdt::USDT"). IMPORTANT: This value can be used directly as the `type_parameter` for Service / Treasury / Reward / Allocation objects to set their payment token. e.g. use USDT\'s wowTypeTag to create a Service that accepts USDT payments. To discover all available tokens, query this info type.'),
1192
+ evmAddress: z.string().describe('EVM-side contract address (0x000...000 for native ETH; ERC20 contract address otherwise)'),
1193
+ evmDecimals: z.number().describe('EVM-side decimals (ETH/WETH=18, WBTC=8, USDC/USDT=6)'),
1194
+ wowDecimals: z.number().describe('WOW-side decimals (ETH/WBTC=8, USDC/USDT=6)'),
1195
+ evmChains: z.array(z.number()).optional().describe('Bridge protocol chain IDs where this token is available (e.g. 10 = ETH mainnet)'),
1196
+ description: z.string().optional().describe('Token description'),
1197
+ }).describe('Mainnet Bridge token info');
1188
1198
  export const ProtocolInfoQuerySchema = z.discriminatedUnion('info', [
1189
1199
  z.object({
1190
1200
  info: z.literal('constants')
@@ -1202,7 +1212,10 @@ export const ProtocolInfoQuerySchema = z.discriminatedUnion('info', [
1202
1212
  }).describe('Current network entrypoint'),
1203
1213
  z.object({
1204
1214
  info: z.literal('value types')
1205
- }).describe('Value types query - returns all supported value types with their numeric and string representations')
1215
+ }).describe('Value types query - returns all supported value types with their numeric and string representations'),
1216
+ z.object({
1217
+ info: z.literal('mainnet bridge tokens')
1218
+ }).describe('Mainnet Bridge tokens query - returns all tokens deployed on the mainnet bridge with their symbol, WOW-side type tag, EVM address, decimals, and description')
1206
1219
  ]).describe('WoWok Build-in infomation query');
1207
1220
  export const BuiltinPermissionSchema = z.object({
1208
1221
  result: z.array(PermissionInfoTypeSchema).describe('Built-in permissions result')
@@ -1227,6 +1240,10 @@ export const ProtocolInfoResultWrappedSchema = z.discriminatedUnion('info', [
1227
1240
  z.object({
1228
1241
  info: z.literal('value types'),
1229
1242
  result: z.array(ConstantItemSchema).describe('Value types result - each item contains name (string), value (string), and description showing the numeric mapping')
1243
+ }),
1244
+ z.object({
1245
+ info: z.literal('mainnet bridge tokens'),
1246
+ result: z.array(BridgeTokenInfoSchema).describe('Mainnet Bridge tokens result - each item contains tokenId, symbol, wowTypeTag, evmAddress, evmDecimals, wowDecimals, evmChains, and description')
1230
1247
  })
1231
1248
  ]).describe('Protocol info result');
1232
1249
  export const ProtocolInfoResultSchema = z.object({
@@ -2,7 +2,7 @@
2
2
  "$schema": "http://json-schema.org/draft-07/schema#",
3
3
  "title": "WoWok MCP Schema Index",
4
4
  "description": "Index of all available JSON schemas for WoWok MCP tools",
5
- "generatedAt": "2026-07-09T02:11:08.097Z",
5
+ "generatedAt": "2026-07-12T08:57:43.173Z",
6
6
  "tools": [
7
7
  {
8
8
  "name": "onchain_operations",
@@ -1169,7 +1169,7 @@
1169
1169
  },
1170
1170
  "type_parameter": {
1171
1171
  "type": "string",
1172
- "description": "Type parameter (token type) of the on-chain object, e.g. '0x2::wow::WOW'. Defines what token this object can use for payments.",
1172
+ "description": "Payment token type for this object (format: {address}::{module}::{struct}). e.g. '0x2::wow::WOW' (WOW, the default), '0x...::usdt::USDT' (USDT), '0x...::eth::ETH' (ETH). Defines which token this object accepts for payments. To discover all available tokens and their type tags, call wowok_buildin_info with info 'mainnet bridge tokens' and use the returned `wowTypeTag` value here.",
1173
1173
  "default": "0x2::wow::WOW"
1174
1174
  }
1175
1175
  },
@@ -3929,7 +3929,7 @@
3929
3929
  },
3930
3930
  "type_parameter": {
3931
3931
  "type": "string",
3932
- "description": "Type parameter (token type) of the on-chain object, e.g. '0x2::wow::WOW'. Defines what token this object can use for payments.",
3932
+ "description": "Payment token type for this object (format: {address}::{module}::{struct}). e.g. '0x2::wow::WOW' (WOW, the default), '0x...::usdt::USDT' (USDT), '0x...::eth::ETH' (ETH). Defines which token this object accepts for payments. To discover all available tokens and their type tags, call wowok_buildin_info with info 'mainnet bridge tokens' and use the returned `wowTypeTag` value here.",
3933
3933
  "default": "0x2::wow::WOW"
3934
3934
  }
3935
3935
  },
@@ -4802,7 +4802,7 @@
4802
4802
  },
4803
4803
  "type_parameter": {
4804
4804
  "type": "string",
4805
- "description": "Type parameter (token type) of the on-chain object, e.g. '0x2::wow::WOW'. Defines what token this object can use for payments.",
4805
+ "description": "Payment token type for this object (format: {address}::{module}::{struct}). e.g. '0x2::wow::WOW' (WOW, the default), '0x...::usdt::USDT' (USDT), '0x...::eth::ETH' (ETH). Defines which token this object accepts for payments. To discover all available tokens and their type tags, call wowok_buildin_info with info 'mainnet bridge tokens' and use the returned `wowTypeTag` value here.",
4806
4806
  "default": "0x2::wow::WOW"
4807
4807
  }
4808
4808
  },
@@ -5384,7 +5384,7 @@
5384
5384
  },
5385
5385
  "type_parameter": {
5386
5386
  "type": "string",
5387
- "description": "Type parameter (token type) of the on-chain object, e.g. '0x2::wow::WOW'. Defines what token this object can use for payments.",
5387
+ "description": "Payment token type for this object (format: {address}::{module}::{struct}). e.g. '0x2::wow::WOW' (WOW, the default), '0x...::usdt::USDT' (USDT), '0x...::eth::ETH' (ETH). Defines which token this object accepts for payments. To discover all available tokens and their type tags, call wowok_buildin_info with info 'mainnet bridge tokens' and use the returned `wowTypeTag` value here.",
5388
5388
  "default": "0x2::wow::WOW"
5389
5389
  }
5390
5390
  },
@@ -5730,7 +5730,7 @@
5730
5730
  },
5731
5731
  "type_parameter": {
5732
5732
  "type": "string",
5733
- "description": "Token type of the on-chain object, e.g. '0x2::wow::WOW'. Defines what token this object can use for payments.",
5733
+ "description": "Payment token type for this object (format: {address}::{module}::{struct}). e.g. '0x2::wow::WOW' (WOW, the default), '0x...::usdt::USDT' (USDT), '0x...::eth::ETH' (ETH). Defines which token this object accepts for payments. To discover all available tokens and their type tags, call wowok_buildin_info with info 'mainnet bridge tokens' and use the returned `wowTypeTag` value here.",
5734
5734
  "default": "0x2::wow::WOW"
5735
5735
  }
5736
5736
  },
@@ -7293,12 +7293,12 @@
7293
7293
  },
7294
7294
  "type_parameter": {
7295
7295
  "type": "string",
7296
- "description": "Token type of the on-chain object, e.g. '0x2::wow::WOW'. Defines what token this object can use for payments.",
7296
+ "description": "Payment token type for this object (format: {address}::{module}::{struct}). e.g. '0x2::wow::WOW' (WOW, the default), '0x...::usdt::USDT' (USDT), '0x...::eth::ETH' (ETH). Defines which token this object accepts for payments. To discover all available tokens and their type tags, call wowok_buildin_info with info 'mainnet bridge tokens' and use the returned `wowTypeTag` value here.",
7297
7297
  "default": "0x2::wow::WOW"
7298
7298
  }
7299
7299
  },
7300
7300
  "additionalProperties": false,
7301
- "description": "Create a new named object (with optional tags) and specify a token type for payments (e.g., WOW)."
7301
+ "description": "Create a new named object (with optional tags) and specify a token type for payments (e.g., WOW, USDT, ETH)."
7302
7302
  },
7303
7303
  "revenue": {
7304
7304
  "type": "array",
@@ -55,7 +55,7 @@
55
55
  },
56
56
  "type_parameter": {
57
57
  "type": "string",
58
- "description": "Token type of the on-chain object, e.g. '0x2::wow::WOW'. Defines what token this object can use for payments.",
58
+ "description": "Payment token type for this object (format: {address}::{module}::{struct}). e.g. '0x2::wow::WOW' (WOW, the default), '0x...::usdt::USDT' (USDT), '0x...::eth::ETH' (ETH). Defines which token this object accepts for payments. To discover all available tokens and their type tags, call wowok_buildin_info with info 'mainnet bridge tokens' and use the returned `wowTypeTag` value here.",
59
59
  "default": "0x2::wow::WOW"
60
60
  }
61
61
  },
@@ -91,7 +91,7 @@
91
91
  },
92
92
  "type_parameter": {
93
93
  "type": "string",
94
- "description": "Type parameter (token type) of the on-chain object, e.g. '0x2::wow::WOW'. Defines what token this object can use for payments.",
94
+ "description": "Payment token type for this object (format: {address}::{module}::{struct}). e.g. '0x2::wow::WOW' (WOW, the default), '0x...::usdt::USDT' (USDT), '0x...::eth::ETH' (ETH). Defines which token this object accepts for payments. To discover all available tokens and their type tags, call wowok_buildin_info with info 'mainnet bridge tokens' and use the returned `wowTypeTag` value here.",
95
95
  "default": "0x2::wow::WOW"
96
96
  }
97
97
  },
@@ -53,12 +53,12 @@
53
53
  },
54
54
  "type_parameter": {
55
55
  "type": "string",
56
- "description": "Token type of the on-chain object, e.g. '0x2::wow::WOW'. Defines what token this object can use for payments.",
56
+ "description": "Payment token type for this object (format: {address}::{module}::{struct}). e.g. '0x2::wow::WOW' (WOW, the default), '0x...::usdt::USDT' (USDT), '0x...::eth::ETH' (ETH). Defines which token this object accepts for payments. To discover all available tokens and their type tags, call wowok_buildin_info with info 'mainnet bridge tokens' and use the returned `wowTypeTag` value here.",
57
57
  "default": "0x2::wow::WOW"
58
58
  }
59
59
  },
60
60
  "additionalProperties": false,
61
- "description": "Create a new named object (with optional tags) and specify a token type for payments (e.g., WOW)."
61
+ "description": "Create a new named object (with optional tags) and specify a token type for payments (e.g., WOW, USDT, ETH)."
62
62
  },
63
63
  "revenue": {
64
64
  "type": "array",
@@ -91,7 +91,7 @@
91
91
  },
92
92
  "type_parameter": {
93
93
  "type": "string",
94
- "description": "Type parameter (token type) of the on-chain object, e.g. '0x2::wow::WOW'. Defines what token this object can use for payments.",
94
+ "description": "Payment token type for this object (format: {address}::{module}::{struct}). e.g. '0x2::wow::WOW' (WOW, the default), '0x...::usdt::USDT' (USDT), '0x...::eth::ETH' (ETH). Defines which token this object accepts for payments. To discover all available tokens and their type tags, call wowok_buildin_info with info 'mainnet bridge tokens' and use the returned `wowTypeTag` value here.",
95
95
  "default": "0x2::wow::WOW"
96
96
  }
97
97
  },
@@ -91,7 +91,7 @@
91
91
  },
92
92
  "type_parameter": {
93
93
  "type": "string",
94
- "description": "Type parameter (token type) of the on-chain object, e.g. '0x2::wow::WOW'. Defines what token this object can use for payments.",
94
+ "description": "Payment token type for this object (format: {address}::{module}::{struct}). e.g. '0x2::wow::WOW' (WOW, the default), '0x...::usdt::USDT' (USDT), '0x...::eth::ETH' (ETH). Defines which token this object accepts for payments. To discover all available tokens and their type tags, call wowok_buildin_info with info 'mainnet bridge tokens' and use the returned `wowTypeTag` value here.",
95
95
  "default": "0x2::wow::WOW"
96
96
  }
97
97
  },
@@ -91,7 +91,7 @@
91
91
  },
92
92
  "type_parameter": {
93
93
  "type": "string",
94
- "description": "Type parameter (token type) of the on-chain object, e.g. '0x2::wow::WOW'. Defines what token this object can use for payments.",
94
+ "description": "Payment token type for this object (format: {address}::{module}::{struct}). e.g. '0x2::wow::WOW' (WOW, the default), '0x...::usdt::USDT' (USDT), '0x...::eth::ETH' (ETH). Defines which token this object accepts for payments. To discover all available tokens and their type tags, call wowok_buildin_info with info 'mainnet bridge tokens' and use the returned `wowTypeTag` value here.",
95
95
  "default": "0x2::wow::WOW"
96
96
  }
97
97
  },
@@ -562,6 +562,74 @@
562
562
  "result"
563
563
  ],
564
564
  "additionalProperties": false
565
+ },
566
+ {
567
+ "type": "object",
568
+ "properties": {
569
+ "info": {
570
+ "type": "string",
571
+ "const": "mainnet bridge tokens"
572
+ },
573
+ "result": {
574
+ "type": "array",
575
+ "items": {
576
+ "type": "object",
577
+ "properties": {
578
+ "tokenId": {
579
+ "type": "number",
580
+ "description": "On-chain token ID (mainnet: WBTC=1, ETH/WETH=2, USDC=3, USDT=4)"
581
+ },
582
+ "symbol": {
583
+ "type": "string",
584
+ "description": "Token symbol/abbreviation (ETH, WETH, WBTC, USDC, USDT)"
585
+ },
586
+ "wowTypeTag": {
587
+ "type": "string",
588
+ "description": "WOW-side token type tag (format: {address}::{module}::{struct}, e.g. \"0x2::wow::WOW\", \"0x...::usdt::USDT\"). IMPORTANT: This value can be used directly as the `type_parameter` for Service / Treasury / Reward / Allocation objects to set their payment token. e.g. use USDT's wowTypeTag to create a Service that accepts USDT payments. To discover all available tokens, query this info type."
589
+ },
590
+ "evmAddress": {
591
+ "type": "string",
592
+ "description": "EVM-side contract address (0x000...000 for native ETH; ERC20 contract address otherwise)"
593
+ },
594
+ "evmDecimals": {
595
+ "type": "number",
596
+ "description": "EVM-side decimals (ETH/WETH=18, WBTC=8, USDC/USDT=6)"
597
+ },
598
+ "wowDecimals": {
599
+ "type": "number",
600
+ "description": "WOW-side decimals (ETH/WBTC=8, USDC/USDT=6)"
601
+ },
602
+ "evmChains": {
603
+ "type": "array",
604
+ "items": {
605
+ "type": "number"
606
+ },
607
+ "description": "Bridge protocol chain IDs where this token is available (e.g. 10 = ETH mainnet)"
608
+ },
609
+ "description": {
610
+ "type": "string",
611
+ "description": "Token description"
612
+ }
613
+ },
614
+ "required": [
615
+ "tokenId",
616
+ "symbol",
617
+ "wowTypeTag",
618
+ "evmAddress",
619
+ "evmDecimals",
620
+ "wowDecimals"
621
+ ],
622
+ "additionalProperties": false,
623
+ "description": "Mainnet Bridge token info"
624
+ },
625
+ "description": "Mainnet Bridge tokens result - each item contains tokenId, symbol, wowTypeTag, evmAddress, evmDecimals, wowDecimals, evmChains, and description"
626
+ }
627
+ },
628
+ "required": [
629
+ "info",
630
+ "result"
631
+ ],
632
+ "additionalProperties": false
565
633
  }
566
634
  ],
567
635
  "description": "Protocol info result"
@@ -479,6 +479,20 @@
479
479
  ],
480
480
  "additionalProperties": false,
481
481
  "description": "Value types query - returns all supported value types with their numeric and string representations"
482
+ },
483
+ {
484
+ "type": "object",
485
+ "properties": {
486
+ "info": {
487
+ "type": "string",
488
+ "const": "mainnet bridge tokens"
489
+ }
490
+ },
491
+ "required": [
492
+ "info"
493
+ ],
494
+ "additionalProperties": false,
495
+ "description": "Mainnet Bridge tokens query - returns all tokens deployed on the mainnet bridge with their symbol, WOW-side type tag, EVM address, decimals, and description"
482
496
  }
483
497
  ],
484
498
  "description": "WoWok Build-in infomation query"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wowok/agent-mcp",
3
- "version": "2.3.10",
3
+ "version": "2.3.12",
4
4
  "description": "Making It Easy for AI Agents to Communicate, Collaborate, Trade, and Trust.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -36,7 +36,7 @@
36
36
  "license": "Apache-2.0",
37
37
  "dependencies": {
38
38
  "@modelcontextprotocol/sdk": "^1.29.0",
39
- "@wowok/wowok": "2.3.10",
39
+ "@wowok/wowok": "2.3.12",
40
40
  "lodash": "^4.18.1",
41
41
  "zod": "^3.25.76"
42
42
  },