@openzeppelin/contracts-mcp 0.5.6 → 0.5.8

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 (115) hide show
  1. package/dist/cairo/tools/account.js +2 -2
  2. package/dist/cairo/tools/account.js.map +1 -1
  3. package/dist/cairo/tools/custom.js +2 -2
  4. package/dist/cairo/tools/custom.js.map +1 -1
  5. package/dist/cairo/tools/erc1155.js +2 -2
  6. package/dist/cairo/tools/erc1155.js.map +1 -1
  7. package/dist/cairo/tools/erc20.js +2 -2
  8. package/dist/cairo/tools/erc20.js.map +1 -1
  9. package/dist/cairo/tools/erc721.js +2 -2
  10. package/dist/cairo/tools/erc721.js.map +1 -1
  11. package/dist/cairo/tools/governor.js +2 -2
  12. package/dist/cairo/tools/governor.js.map +1 -1
  13. package/dist/cairo/tools/multisig.js +2 -2
  14. package/dist/cairo/tools/multisig.js.map +1 -1
  15. package/dist/cairo/tools/vesting.js +2 -2
  16. package/dist/cairo/tools/vesting.js.map +1 -1
  17. package/dist/confidential/tools/erc7984.js +2 -2
  18. package/dist/confidential/tools/erc7984.js.map +1 -1
  19. package/dist/solidity/tools/account.js +2 -2
  20. package/dist/solidity/tools/account.js.map +1 -1
  21. package/dist/solidity/tools/custom.js +2 -2
  22. package/dist/solidity/tools/custom.js.map +1 -1
  23. package/dist/solidity/tools/erc1155.js +2 -2
  24. package/dist/solidity/tools/erc1155.js.map +1 -1
  25. package/dist/solidity/tools/erc20.js +2 -2
  26. package/dist/solidity/tools/erc20.js.map +1 -1
  27. package/dist/solidity/tools/erc721.js +2 -2
  28. package/dist/solidity/tools/erc721.js.map +1 -1
  29. package/dist/solidity/tools/governor.js +2 -2
  30. package/dist/solidity/tools/governor.js.map +1 -1
  31. package/dist/solidity/tools/rwa.js +2 -2
  32. package/dist/solidity/tools/rwa.js.map +1 -1
  33. package/dist/solidity/tools/stablecoin.js +2 -2
  34. package/dist/solidity/tools/stablecoin.js.map +1 -1
  35. package/dist/stellar/tools/fungible.d.ts.map +1 -1
  36. package/dist/stellar/tools/fungible.js +3 -2
  37. package/dist/stellar/tools/fungible.js.map +1 -1
  38. package/dist/stellar/tools/governor.d.ts +3 -0
  39. package/dist/stellar/tools/governor.d.ts.map +1 -0
  40. package/dist/stellar/tools/governor.js +33 -0
  41. package/dist/stellar/tools/governor.js.map +1 -0
  42. package/dist/stellar/tools/non-fungible.d.ts.map +1 -1
  43. package/dist/stellar/tools/non-fungible.js +3 -2
  44. package/dist/stellar/tools/non-fungible.js.map +1 -1
  45. package/dist/stellar/tools/stablecoin.d.ts.map +1 -1
  46. package/dist/stellar/tools/stablecoin.js +3 -2
  47. package/dist/stellar/tools/stablecoin.js.map +1 -1
  48. package/dist/stellar/tools.d.ts.map +1 -1
  49. package/dist/stellar/tools.js +2 -0
  50. package/dist/stellar/tools.js.map +1 -1
  51. package/dist/stylus/tools/erc1155.js +2 -2
  52. package/dist/stylus/tools/erc1155.js.map +1 -1
  53. package/dist/stylus/tools/erc20.js +2 -2
  54. package/dist/stylus/tools/erc20.js.map +1 -1
  55. package/dist/stylus/tools/erc721.js +2 -2
  56. package/dist/stylus/tools/erc721.js.map +1 -1
  57. package/dist/uniswap-hooks/tools/hooks.js +2 -2
  58. package/dist/uniswap-hooks/tools/hooks.js.map +1 -1
  59. package/package.json +6 -6
  60. package/src/cairo/tools/account.ts +2 -2
  61. package/src/cairo/tools/custom.ts +2 -2
  62. package/src/cairo/tools/erc1155.ts +2 -2
  63. package/src/cairo/tools/erc20.ts +2 -2
  64. package/src/cairo/tools/erc721.ts +2 -2
  65. package/src/cairo/tools/governor.ts +2 -2
  66. package/src/cairo/tools/multisig.ts +2 -2
  67. package/src/cairo/tools/vesting.ts +2 -2
  68. package/src/confidential/tools/erc7984.ts +2 -2
  69. package/src/solidity/tools/account.ts +2 -2
  70. package/src/solidity/tools/custom.ts +2 -2
  71. package/src/solidity/tools/erc1155.ts +2 -2
  72. package/src/solidity/tools/erc20.ts +2 -2
  73. package/src/solidity/tools/erc721.ts +2 -2
  74. package/src/solidity/tools/governor.ts +2 -2
  75. package/src/solidity/tools/rwa.ts +2 -2
  76. package/src/solidity/tools/stablecoin.ts +2 -2
  77. package/src/stellar/tools/fungible.ts +4 -2
  78. package/src/stellar/tools/governor.ts +49 -0
  79. package/src/stellar/tools/non-fungible.ts +4 -2
  80. package/src/stellar/tools/stablecoin.ts +4 -2
  81. package/src/stellar/tools.ts +2 -0
  82. package/src/stylus/tools/erc1155.ts +2 -2
  83. package/src/stylus/tools/erc20.ts +2 -2
  84. package/src/stylus/tools/erc721.ts +2 -2
  85. package/src/uniswap-hooks/tools/hooks.ts +2 -2
  86. package/dist/cairo/schemas.d.ts +0 -200
  87. package/dist/cairo/schemas.d.ts.map +0 -1
  88. package/dist/cairo/schemas.js +0 -153
  89. package/dist/cairo/schemas.js.map +0 -1
  90. package/dist/confidential/schemas.d.ts +0 -21
  91. package/dist/confidential/schemas.d.ts.map +0 -1
  92. package/dist/confidential/schemas.js +0 -33
  93. package/dist/confidential/schemas.js.map +0 -1
  94. package/dist/solidity/schemas.d.ts +0 -157
  95. package/dist/solidity/schemas.d.ts.map +0 -1
  96. package/dist/solidity/schemas.js +0 -166
  97. package/dist/solidity/schemas.js.map +0 -1
  98. package/dist/stellar/schemas.d.ts +0 -60
  99. package/dist/stellar/schemas.d.ts.map +0 -1
  100. package/dist/stellar/schemas.js +0 -58
  101. package/dist/stellar/schemas.js.map +0 -1
  102. package/dist/stylus/schemas.d.ts +0 -36
  103. package/dist/stylus/schemas.d.ts.map +0 -1
  104. package/dist/stylus/schemas.js +0 -44
  105. package/dist/stylus/schemas.js.map +0 -1
  106. package/dist/uniswap-hooks/schemas.d.ts +0 -67
  107. package/dist/uniswap-hooks/schemas.d.ts.map +0 -1
  108. package/dist/uniswap-hooks/schemas.js +0 -78
  109. package/dist/uniswap-hooks/schemas.js.map +0 -1
  110. package/src/cairo/schemas.ts +0 -176
  111. package/src/confidential/schemas.ts +0 -35
  112. package/src/solidity/schemas.ts +0 -186
  113. package/src/stellar/schemas.ts +0 -69
  114. package/src/stylus/schemas.ts +0 -54
  115. package/src/uniswap-hooks/schemas.ts +0 -92
@@ -3,10 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.registerStylusERC20 = registerStylusERC20;
4
4
  const wizard_stylus_1 = require("@openzeppelin/wizard-stylus");
5
5
  const utils_1 = require("../../utils");
6
- const schemas_1 = require("../schemas");
6
+ const schemas_1 = require("@openzeppelin/wizard-common/schemas");
7
7
  const wizard_common_1 = require("@openzeppelin/wizard-common");
8
8
  function registerStylusERC20(server) {
9
- return server.tool('stylus-erc20', (0, utils_1.makeDetailedPrompt)(wizard_common_1.stylusPrompts.ERC20), schemas_1.erc20Schema, async ({ name, burnable, permit, flashmint, info }) => {
9
+ return server.tool('stylus-erc20', (0, utils_1.makeDetailedPrompt)(wizard_common_1.stylusPrompts.ERC20), schemas_1.stylusERC20Schema, async ({ name, burnable, permit, flashmint, info }) => {
10
10
  const opts = {
11
11
  name,
12
12
  burnable,
@@ -1 +1 @@
1
- {"version":3,"file":"erc20.js","sourceRoot":"","sources":["../../../src/stylus/tools/erc20.ts"],"names":[],"mappings":";;AAOA,kDAuBC;AA5BD,+DAAoD;AACpD,uCAAyE;AACzE,wCAAyC;AACzC,+DAA4D;AAE5D,SAAgB,mBAAmB,CAAC,MAAiB;IACnD,OAAO,MAAM,CAAC,IAAI,CAChB,cAAc,EACd,IAAA,0BAAkB,EAAC,6BAAa,CAAC,KAAK,CAAC,EACvC,qBAAW,EACX,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE;QACpD,MAAM,IAAI,GAAiB;YACzB,IAAI;YACJ,QAAQ;YACR,MAAM;YACN,SAAS;YACT,IAAI;SACL,CAAC;QACF,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAA,8BAAsB,EAAC,GAAG,EAAE,CAAC,qBAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;iBACtD;aACF;SACF,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"erc20.js","sourceRoot":"","sources":["../../../src/stylus/tools/erc20.ts"],"names":[],"mappings":";;AAOA,kDAuBC;AA5BD,+DAAoD;AACpD,uCAAyE;AACzE,iEAAwE;AACxE,+DAA4D;AAE5D,SAAgB,mBAAmB,CAAC,MAAiB;IACnD,OAAO,MAAM,CAAC,IAAI,CAChB,cAAc,EACd,IAAA,0BAAkB,EAAC,6BAAa,CAAC,KAAK,CAAC,EACvC,2BAAiB,EACjB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE;QACpD,MAAM,IAAI,GAAiB;YACzB,IAAI;YACJ,QAAQ;YACR,MAAM;YACN,SAAS;YACT,IAAI;SACL,CAAC;QACF,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAA,8BAAsB,EAAC,GAAG,EAAE,CAAC,qBAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;iBACtD;aACF;SACF,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -3,10 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.registerStylusERC721 = registerStylusERC721;
4
4
  const wizard_stylus_1 = require("@openzeppelin/wizard-stylus");
5
5
  const utils_1 = require("../../utils");
6
- const schemas_1 = require("../schemas");
6
+ const schemas_1 = require("@openzeppelin/wizard-common/schemas");
7
7
  const wizard_common_1 = require("@openzeppelin/wizard-common");
8
8
  function registerStylusERC721(server) {
9
- return server.tool('stylus-erc721', (0, utils_1.makeDetailedPrompt)(wizard_common_1.stylusPrompts.ERC721), schemas_1.erc721Schema, async ({ name, burnable, enumerable, info }) => {
9
+ return server.tool('stylus-erc721', (0, utils_1.makeDetailedPrompt)(wizard_common_1.stylusPrompts.ERC721), schemas_1.stylusERC721Schema, async ({ name, burnable, enumerable, info }) => {
10
10
  const opts = {
11
11
  name,
12
12
  burnable,
@@ -1 +1 @@
1
- {"version":3,"file":"erc721.js","sourceRoot":"","sources":["../../../src/stylus/tools/erc721.ts"],"names":[],"mappings":";;AAOA,oDAsBC;AA3BD,+DAAqD;AACrD,uCAAyE;AACzE,wCAA0C;AAC1C,+DAA4D;AAE5D,SAAgB,oBAAoB,CAAC,MAAiB;IACpD,OAAO,MAAM,CAAC,IAAI,CAChB,eAAe,EACf,IAAA,0BAAkB,EAAC,6BAAa,CAAC,MAAM,CAAC,EACxC,sBAAY,EACZ,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,EAAE;QAC7C,MAAM,IAAI,GAAkB;YAC1B,IAAI;YACJ,QAAQ;YACR,UAAU;YACV,IAAI;SACL,CAAC;QACF,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAA,8BAAsB,EAAC,GAAG,EAAE,CAAC,sBAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;iBACvD;aACF;SACF,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"erc721.js","sourceRoot":"","sources":["../../../src/stylus/tools/erc721.ts"],"names":[],"mappings":";;AAOA,oDAsBC;AA3BD,+DAAqD;AACrD,uCAAyE;AACzE,iEAAyE;AACzE,+DAA4D;AAE5D,SAAgB,oBAAoB,CAAC,MAAiB;IACpD,OAAO,MAAM,CAAC,IAAI,CAChB,eAAe,EACf,IAAA,0BAAkB,EAAC,6BAAa,CAAC,MAAM,CAAC,EACxC,4BAAkB,EAClB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,EAAE;QAC7C,MAAM,IAAI,GAAkB;YAC1B,IAAI;YACJ,QAAQ;YACR,UAAU;YACV,IAAI;SACL,CAAC;QACF,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAA,8BAAsB,EAAC,GAAG,EAAE,CAAC,sBAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;iBACvD;aACF;SACF,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -2,11 +2,11 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.registerUniswapHooks = registerUniswapHooks;
4
4
  const wizard_uniswap_hooks_1 = require("@openzeppelin/wizard-uniswap-hooks");
5
- const schemas_1 = require("../schemas");
5
+ const schemas_1 = require("@openzeppelin/wizard-common/schemas");
6
6
  const utils_1 = require("../../utils");
7
7
  const wizard_common_1 = require("@openzeppelin/wizard-common");
8
8
  function registerUniswapHooks(server) {
9
- return server.tool('uniswap-hooks', (0, utils_1.makeDetailedPrompt)(wizard_common_1.uniswapHooksPrompts.Hooks), schemas_1.hooksSchema, async ({ hook, name, pausable, currencySettler, safeCast, transientStorage, shares, permissions, inputs, access, info, }) => {
9
+ return server.tool('uniswap-hooks', (0, utils_1.makeDetailedPrompt)(wizard_common_1.uniswapHooksPrompts.Hooks), schemas_1.uniswapHooksHooksSchema, async ({ hook, name, pausable, currencySettler, safeCast, transientStorage, shares, permissions, inputs, access, info, }) => {
10
10
  const opts = {
11
11
  hook,
12
12
  name,
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../src/uniswap-hooks/tools/hooks.ts"],"names":[],"mappings":";;AAMA,oDA0CC;AA/CD,6EAA8E;AAC9E,wCAAyC;AACzC,uCAA6E;AAC7E,+DAAkE;AAElE,SAAgB,oBAAoB,CAAC,MAAiB;IACpD,OAAO,MAAM,CAAC,IAAI,CAChB,eAAe,EACf,IAAA,0BAAkB,EAAC,mCAAmB,CAAC,KAAK,CAAC,EAC7C,qBAAW,EACX,KAAK,EAAE,EACL,IAAI,EACJ,IAAI,EACJ,QAAQ,EACR,eAAe,EACf,QAAQ,EACR,gBAAgB,EAChB,MAAM,EACN,WAAW,EACX,MAAM,EACN,MAAM,EACN,IAAI,GACL,EAAE,EAAE;QACH,MAAM,IAAI,GAAiB;YACzB,IAAI;YACJ,IAAI;YACJ,QAAQ;YACR,eAAe;YACf,QAAQ;YACR,gBAAgB;YAChB,MAAM;YACN,WAAW;YACX,MAAM;YACN,MAAM;YACN,IAAI;SACL,CAAC;QAEF,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAA,kCAA0B,EAAC,GAAG,EAAE,CAAC,4BAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;iBAC1D;aACF;SACF,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../src/uniswap-hooks/tools/hooks.ts"],"names":[],"mappings":";;AAMA,oDA0CC;AA/CD,6EAA8E;AAC9E,iEAA8E;AAC9E,uCAA6E;AAC7E,+DAAkE;AAElE,SAAgB,oBAAoB,CAAC,MAAiB;IACpD,OAAO,MAAM,CAAC,IAAI,CAChB,eAAe,EACf,IAAA,0BAAkB,EAAC,mCAAmB,CAAC,KAAK,CAAC,EAC7C,iCAAuB,EACvB,KAAK,EAAE,EACL,IAAI,EACJ,IAAI,EACJ,QAAQ,EACR,eAAe,EACf,QAAQ,EACR,gBAAgB,EAChB,MAAM,EACN,WAAW,EACX,MAAM,EACN,MAAM,EACN,IAAI,GACL,EAAE,EAAE;QACH,MAAM,IAAI,GAAiB;YACzB,IAAI;YACJ,IAAI;YACJ,QAAQ;YACR,eAAe;YACf,QAAQ;YACR,gBAAgB;YAChB,MAAM;YACN,WAAW;YACX,MAAM;YACN,MAAM;YACN,IAAI;SACL,CAAC;QAEF,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAA,kCAA0B,EAAC,GAAG,EAAE,CAAC,4BAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;iBAC1D;aACF;SACF,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openzeppelin/contracts-mcp",
3
- "version": "0.5.6",
3
+ "version": "0.5.8",
4
4
  "description": "OpenZeppelin Contracts MCP Server",
5
5
  "license": "AGPL-3.0-only",
6
6
  "repository": "https://github.com/OpenZeppelin/contracts-wizard",
@@ -24,13 +24,13 @@
24
24
  },
25
25
  "dependencies": {
26
26
  "@modelcontextprotocol/sdk": "^1.29.0",
27
- "@openzeppelin/wizard-common": "^0.4.4",
28
- "@openzeppelin/wizard": "^0.10.7",
27
+ "@openzeppelin/wizard-common": "^0.5.0",
28
+ "@openzeppelin/wizard": "^0.10.8",
29
29
  "@openzeppelin/wizard-stylus": "^0.3.0",
30
- "@openzeppelin/wizard-stellar": "^0.5.0",
30
+ "@openzeppelin/wizard-stellar": "^0.6.0",
31
31
  "@openzeppelin/wizard-cairo": "^3.0.0",
32
- "@openzeppelin/wizard-confidential": "^0.1.0",
33
- "@openzeppelin/wizard-uniswap-hooks": "^0.1.0"
32
+ "@openzeppelin/wizard-confidential": "^0.1.1",
33
+ "@openzeppelin/wizard-uniswap-hooks": "^0.1.1"
34
34
  },
35
35
  "devDependencies": {
36
36
  "@types/node": "^20.0.0",
@@ -2,14 +2,14 @@ import type { McpServer, RegisteredTool } from '@modelcontextprotocol/sdk/server
2
2
  import type { AccountOptions } from '@openzeppelin/wizard-cairo';
3
3
  import { account } from '@openzeppelin/wizard-cairo';
4
4
  import { safePrintCairoCodeBlock, makeDetailedPrompt } from '../../utils';
5
- import { accountSchema } from '../schemas';
5
+ import { cairoAccountSchema } from '@openzeppelin/wizard-common/schemas';
6
6
  import { cairoPrompts } from '@openzeppelin/wizard-common';
7
7
 
8
8
  export function registerCairoAccount(server: McpServer): RegisteredTool {
9
9
  return server.tool(
10
10
  'cairo-account',
11
11
  makeDetailedPrompt(cairoPrompts.Account),
12
- accountSchema,
12
+ cairoAccountSchema,
13
13
  async ({ name, type, declare, deploy, pubkey, outsideExecution, upgradeable, info, macros }) => {
14
14
  const opts: AccountOptions = {
15
15
  name,
@@ -2,14 +2,14 @@ import type { McpServer, RegisteredTool } from '@modelcontextprotocol/sdk/server
2
2
  import type { CustomOptions } from '@openzeppelin/wizard-cairo';
3
3
  import { custom } from '@openzeppelin/wizard-cairo';
4
4
  import { safePrintCairoCodeBlock, makeDetailedPrompt } from '../../utils';
5
- import { customSchema } from '../schemas';
5
+ import { cairoCustomSchema } from '@openzeppelin/wizard-common/schemas';
6
6
  import { cairoPrompts } from '@openzeppelin/wizard-common';
7
7
 
8
8
  export function registerCairoCustom(server: McpServer): RegisteredTool {
9
9
  return server.tool(
10
10
  'cairo-custom',
11
11
  makeDetailedPrompt(cairoPrompts.Custom),
12
- customSchema,
12
+ cairoCustomSchema,
13
13
  async ({ name, pausable, access, upgradeable, info, macros }) => {
14
14
  const opts: CustomOptions = {
15
15
  name,
@@ -2,14 +2,14 @@ import type { McpServer, RegisteredTool } from '@modelcontextprotocol/sdk/server
2
2
  import type { ERC1155Options } from '@openzeppelin/wizard-cairo';
3
3
  import { erc1155 } from '@openzeppelin/wizard-cairo';
4
4
  import { safePrintCairoCodeBlock, makeDetailedPrompt } from '../../utils';
5
- import { erc1155Schema } from '../schemas';
5
+ import { cairoERC1155Schema } from '@openzeppelin/wizard-common/schemas';
6
6
  import { cairoPrompts } from '@openzeppelin/wizard-common';
7
7
 
8
8
  export function registerCairoERC1155(server: McpServer): RegisteredTool {
9
9
  return server.tool(
10
10
  'cairo-erc1155',
11
11
  makeDetailedPrompt(cairoPrompts.ERC1155),
12
- erc1155Schema,
12
+ cairoERC1155Schema,
13
13
  async ({
14
14
  name,
15
15
  baseUri,
@@ -2,14 +2,14 @@ import type { McpServer, RegisteredTool } from '@modelcontextprotocol/sdk/server
2
2
  import type { ERC20Options } from '@openzeppelin/wizard-cairo';
3
3
  import { erc20 } from '@openzeppelin/wizard-cairo';
4
4
  import { safePrintCairoCodeBlock, makeDetailedPrompt } from '../../utils';
5
- import { erc20Schema } from '../schemas';
5
+ import { cairoERC20Schema } from '@openzeppelin/wizard-common/schemas';
6
6
  import { cairoPrompts } from '@openzeppelin/wizard-common';
7
7
 
8
8
  export function registerCairoERC20(server: McpServer): RegisteredTool {
9
9
  return server.tool(
10
10
  'cairo-erc20',
11
11
  makeDetailedPrompt(cairoPrompts.ERC20),
12
- erc20Schema,
12
+ cairoERC20Schema,
13
13
  async ({
14
14
  name,
15
15
  symbol,
@@ -2,14 +2,14 @@ import type { McpServer, RegisteredTool } from '@modelcontextprotocol/sdk/server
2
2
  import type { ERC721Options } from '@openzeppelin/wizard-cairo';
3
3
  import { erc721 } from '@openzeppelin/wizard-cairo';
4
4
  import { safePrintCairoCodeBlock, makeDetailedPrompt } from '../../utils';
5
- import { erc721Schema } from '../schemas';
5
+ import { cairoERC721Schema } from '@openzeppelin/wizard-common/schemas';
6
6
  import { cairoPrompts } from '@openzeppelin/wizard-common';
7
7
 
8
8
  export function registerCairoERC721(server: McpServer): RegisteredTool {
9
9
  return server.tool(
10
10
  'cairo-erc721',
11
11
  makeDetailedPrompt(cairoPrompts.ERC721),
12
- erc721Schema,
12
+ cairoERC721Schema,
13
13
  async ({
14
14
  name,
15
15
  symbol,
@@ -2,14 +2,14 @@ import type { McpServer, RegisteredTool } from '@modelcontextprotocol/sdk/server
2
2
  import type { GovernorOptions } from '@openzeppelin/wizard-cairo';
3
3
  import { governor } from '@openzeppelin/wizard-cairo';
4
4
  import { safePrintCairoCodeBlock, makeDetailedPrompt } from '../../utils';
5
- import { governorSchema } from '../schemas';
5
+ import { cairoGovernorSchema } from '@openzeppelin/wizard-common/schemas';
6
6
  import { cairoPrompts } from '@openzeppelin/wizard-common';
7
7
 
8
8
  export function registerCairoGovernor(server: McpServer): RegisteredTool {
9
9
  return server.tool(
10
10
  'cairo-governor',
11
11
  makeDetailedPrompt(cairoPrompts.Governor),
12
- governorSchema,
12
+ cairoGovernorSchema,
13
13
  async ({
14
14
  name,
15
15
  delay,
@@ -2,14 +2,14 @@ import type { McpServer, RegisteredTool } from '@modelcontextprotocol/sdk/server
2
2
  import type { MultisigOptions } from '@openzeppelin/wizard-cairo';
3
3
  import { multisig } from '@openzeppelin/wizard-cairo';
4
4
  import { safePrintCairoCodeBlock, makeDetailedPrompt } from '../../utils';
5
- import { multisigSchema } from '../schemas';
5
+ import { cairoMultisigSchema } from '@openzeppelin/wizard-common/schemas';
6
6
  import { cairoPrompts } from '@openzeppelin/wizard-common';
7
7
 
8
8
  export function registerCairoMultisig(server: McpServer): RegisteredTool {
9
9
  return server.tool(
10
10
  'cairo-multisig',
11
11
  makeDetailedPrompt(cairoPrompts.Multisig),
12
- multisigSchema,
12
+ cairoMultisigSchema,
13
13
  async ({ name, quorum, upgradeable, info, macros }) => {
14
14
  const opts: MultisigOptions = {
15
15
  name,
@@ -2,14 +2,14 @@ import type { McpServer, RegisteredTool } from '@modelcontextprotocol/sdk/server
2
2
  import type { VestingOptions } from '@openzeppelin/wizard-cairo';
3
3
  import { vesting } from '@openzeppelin/wizard-cairo';
4
4
  import { safePrintCairoCodeBlock, makeDetailedPrompt } from '../../utils';
5
- import { vestingSchema } from '../schemas';
5
+ import { cairoVestingSchema } from '@openzeppelin/wizard-common/schemas';
6
6
  import { cairoPrompts } from '@openzeppelin/wizard-common';
7
7
 
8
8
  export function registerCairoVesting(server: McpServer): RegisteredTool {
9
9
  return server.tool(
10
10
  'cairo-vesting',
11
11
  makeDetailedPrompt(cairoPrompts.Vesting),
12
- vestingSchema,
12
+ cairoVestingSchema,
13
13
  async ({ name, startDate, duration, cliffDuration, schedule, info, macros }) => {
14
14
  const opts: VestingOptions = {
15
15
  name,
@@ -2,14 +2,14 @@ import type { McpServer, RegisteredTool } from '@modelcontextprotocol/sdk/server
2
2
  import type { ERC7984Options } from '@openzeppelin/wizard-confidential';
3
3
  import { erc7984 } from '@openzeppelin/wizard-confidential';
4
4
  import { safePrintSolidityCodeBlock, makeDetailedPrompt } from '../../utils';
5
- import { erc7984Schema } from '../schemas';
5
+ import { confidentialERC7984Schema } from '@openzeppelin/wizard-common/schemas';
6
6
  import { confidentialPrompts } from '@openzeppelin/wizard-common';
7
7
 
8
8
  export function registerConfidentialERC7984(server: McpServer): RegisteredTool {
9
9
  return server.tool(
10
10
  'erc7984',
11
11
  makeDetailedPrompt(confidentialPrompts.ERC7984),
12
- erc7984Schema,
12
+ confidentialERC7984Schema,
13
13
  async ({ name, symbol, contractURI, premint, networkConfig, wrappable, votes, info }) => {
14
14
  const opts: ERC7984Options = {
15
15
  name,
@@ -2,14 +2,14 @@ import type { McpServer, RegisteredTool } from '@modelcontextprotocol/sdk/server
2
2
  import type { AccountOptions } from '@openzeppelin/wizard';
3
3
  import { account } from '@openzeppelin/wizard';
4
4
  import { safePrintSolidityCodeBlock, makeDetailedPrompt } from '../../utils';
5
- import { accountSchema } from '../schemas';
5
+ import { solidityAccountSchema } from '@openzeppelin/wizard-common/schemas';
6
6
  import { solidityPrompts } from '@openzeppelin/wizard-common';
7
7
 
8
8
  export function registerSolidityAccount(server: McpServer): RegisteredTool {
9
9
  return server.tool(
10
10
  'solidity-account',
11
11
  makeDetailedPrompt(solidityPrompts.Account),
12
- accountSchema,
12
+ solidityAccountSchema,
13
13
  async ({
14
14
  name,
15
15
  signatureValidation,
@@ -2,14 +2,14 @@ import type { McpServer, RegisteredTool } from '@modelcontextprotocol/sdk/server
2
2
  import type { CustomOptions } from '@openzeppelin/wizard';
3
3
  import { custom } from '@openzeppelin/wizard';
4
4
  import { safePrintSolidityCodeBlock, makeDetailedPrompt } from '../../utils';
5
- import { customSchema } from '../schemas';
5
+ import { solidityCustomSchema } from '@openzeppelin/wizard-common/schemas';
6
6
  import { solidityPrompts } from '@openzeppelin/wizard-common';
7
7
 
8
8
  export function registerSolidityCustom(server: McpServer): RegisteredTool {
9
9
  return server.tool(
10
10
  'solidity-custom',
11
11
  makeDetailedPrompt(solidityPrompts.Custom),
12
- customSchema,
12
+ solidityCustomSchema,
13
13
  async ({ name, pausable, access, upgradeable, info }) => {
14
14
  const opts: CustomOptions = {
15
15
  name,
@@ -2,14 +2,14 @@ import type { McpServer, RegisteredTool } from '@modelcontextprotocol/sdk/server
2
2
  import type { ERC1155Options } from '@openzeppelin/wizard';
3
3
  import { erc1155 } from '@openzeppelin/wizard';
4
4
  import { safePrintSolidityCodeBlock, makeDetailedPrompt } from '../../utils';
5
- import { erc1155Schema } from '../schemas';
5
+ import { solidityERC1155Schema } from '@openzeppelin/wizard-common/schemas';
6
6
  import { solidityPrompts } from '@openzeppelin/wizard-common';
7
7
 
8
8
  export function registerSolidityERC1155(server: McpServer): RegisteredTool {
9
9
  return server.tool(
10
10
  'solidity-erc1155',
11
11
  makeDetailedPrompt(solidityPrompts.ERC1155),
12
- erc1155Schema,
12
+ solidityERC1155Schema,
13
13
  async ({ name, uri, burnable, pausable, mintable, supply, updatableUri, access, upgradeable, info }) => {
14
14
  const opts: ERC1155Options = {
15
15
  name,
@@ -2,14 +2,14 @@ import type { McpServer, RegisteredTool } from '@modelcontextprotocol/sdk/server
2
2
  import type { ERC20Options } from '@openzeppelin/wizard';
3
3
  import { erc20 } from '@openzeppelin/wizard';
4
4
  import { safePrintSolidityCodeBlock, makeDetailedPrompt } from '../../utils';
5
- import { erc20Schema } from '../schemas';
5
+ import { solidityERC20Schema } from '@openzeppelin/wizard-common/schemas';
6
6
  import { solidityPrompts } from '@openzeppelin/wizard-common';
7
7
 
8
8
  export function registerSolidityERC20(server: McpServer): RegisteredTool {
9
9
  return server.tool(
10
10
  'solidity-erc20',
11
11
  makeDetailedPrompt(solidityPrompts.ERC20),
12
- erc20Schema,
12
+ solidityERC20Schema,
13
13
  async ({
14
14
  name,
15
15
  symbol,
@@ -2,14 +2,14 @@ import type { McpServer, RegisteredTool } from '@modelcontextprotocol/sdk/server
2
2
  import type { ERC721Options } from '@openzeppelin/wizard';
3
3
  import { erc721 } from '@openzeppelin/wizard';
4
4
  import { safePrintSolidityCodeBlock, makeDetailedPrompt } from '../../utils';
5
- import { erc721Schema } from '../schemas';
5
+ import { solidityERC721Schema } from '@openzeppelin/wizard-common/schemas';
6
6
  import { solidityPrompts } from '@openzeppelin/wizard-common';
7
7
 
8
8
  export function registerSolidityERC721(server: McpServer): RegisteredTool {
9
9
  return server.tool(
10
10
  'solidity-erc721',
11
11
  makeDetailedPrompt(solidityPrompts.ERC721),
12
- erc721Schema,
12
+ solidityERC721Schema,
13
13
  async ({
14
14
  name,
15
15
  symbol,
@@ -2,14 +2,14 @@ import type { McpServer, RegisteredTool } from '@modelcontextprotocol/sdk/server
2
2
  import type { GovernorOptions } from '@openzeppelin/wizard';
3
3
  import { governor } from '@openzeppelin/wizard';
4
4
  import { safePrintSolidityCodeBlock, makeDetailedPrompt } from '../../utils';
5
- import { governorSchema } from '../schemas';
5
+ import { solidityGovernorSchema } from '@openzeppelin/wizard-common/schemas';
6
6
  import { solidityPrompts } from '@openzeppelin/wizard-common';
7
7
 
8
8
  export function registerSolidityGovernor(server: McpServer): RegisteredTool {
9
9
  return server.tool(
10
10
  'solidity-governor',
11
11
  makeDetailedPrompt(solidityPrompts.Governor),
12
- governorSchema,
12
+ solidityGovernorSchema,
13
13
  async ({
14
14
  name,
15
15
  delay,
@@ -2,14 +2,14 @@ import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
2
  import type { StablecoinOptions } from '@openzeppelin/wizard';
3
3
  import { realWorldAsset } from '@openzeppelin/wizard';
4
4
  import { safePrintSolidityCodeBlock, makeDetailedPrompt } from '../../utils';
5
- import { rwaSchema } from '../schemas';
5
+ import { solidityRWASchema } from '@openzeppelin/wizard-common/schemas';
6
6
  import { solidityPrompts } from '@openzeppelin/wizard-common';
7
7
 
8
8
  export function registerSolidityRWA(server: McpServer) {
9
9
  return server.tool(
10
10
  'solidity-rwa',
11
11
  makeDetailedPrompt(solidityPrompts.RWA),
12
- rwaSchema,
12
+ solidityRWASchema,
13
13
  async ({
14
14
  name,
15
15
  symbol,
@@ -2,14 +2,14 @@ import type { McpServer, RegisteredTool } from '@modelcontextprotocol/sdk/server
2
2
  import type { StablecoinOptions } from '@openzeppelin/wizard';
3
3
  import { stablecoin } from '@openzeppelin/wizard';
4
4
  import { safePrintSolidityCodeBlock, makeDetailedPrompt } from '../../utils';
5
- import { stablecoinSchema } from '../schemas';
5
+ import { solidityStablecoinSchema } from '@openzeppelin/wizard-common/schemas';
6
6
  import { solidityPrompts } from '@openzeppelin/wizard-common';
7
7
 
8
8
  export function registerSolidityStablecoin(server: McpServer): RegisteredTool {
9
9
  return server.tool(
10
10
  'solidity-stablecoin',
11
11
  makeDetailedPrompt(solidityPrompts.Stablecoin),
12
- stablecoinSchema,
12
+ solidityStablecoinSchema,
13
13
  async ({
14
14
  name,
15
15
  symbol,
@@ -2,18 +2,19 @@ import type { McpServer, RegisteredTool } from '@modelcontextprotocol/sdk/server
2
2
  import type { FungibleOptions } from '@openzeppelin/wizard-stellar';
3
3
  import { fungible } from '@openzeppelin/wizard-stellar';
4
4
  import { safePrintRustCodeBlock, makeDetailedPrompt } from '../../utils';
5
- import { fungibleSchema } from '../schemas';
5
+ import { stellarFungibleSchema } from '@openzeppelin/wizard-common/schemas';
6
6
  import { stellarPrompts } from '@openzeppelin/wizard-common';
7
7
 
8
8
  export function registerStellarFungible(server: McpServer): RegisteredTool {
9
9
  return server.tool(
10
10
  'stellar-fungible',
11
11
  makeDetailedPrompt(stellarPrompts.Fungible),
12
- fungibleSchema,
12
+ stellarFungibleSchema,
13
13
  async ({
14
14
  name,
15
15
  symbol,
16
16
  burnable,
17
+ votes,
17
18
  pausable,
18
19
  premint,
19
20
  mintable,
@@ -26,6 +27,7 @@ export function registerStellarFungible(server: McpServer): RegisteredTool {
26
27
  name,
27
28
  symbol,
28
29
  burnable,
30
+ votes,
29
31
  pausable,
30
32
  premint,
31
33
  mintable,
@@ -0,0 +1,49 @@
1
+ import type { McpServer, RegisteredTool } from '@modelcontextprotocol/sdk/server/mcp.js';
2
+ import type { GovernorOptions } from '@openzeppelin/wizard-stellar';
3
+ import { governor } from '@openzeppelin/wizard-stellar';
4
+ import { safePrintRustCodeBlock, makeDetailedPrompt } from '../../utils';
5
+ import { stellarGovernorSchema } from '@openzeppelin/wizard-common/schemas';
6
+ import { stellarPrompts } from '@openzeppelin/wizard-common';
7
+
8
+ export function registerStellarGovernor(server: McpServer): RegisteredTool {
9
+ return server.tool(
10
+ 'stellar-governor',
11
+ makeDetailedPrompt(stellarPrompts.Governor),
12
+ stellarGovernorSchema,
13
+ async ({
14
+ name,
15
+ version,
16
+ votingDelay,
17
+ votingPeriod,
18
+ proposalThreshold,
19
+ quorum,
20
+ timelock,
21
+ upgradeable,
22
+ access,
23
+ explicitImplementations,
24
+ info,
25
+ }) => {
26
+ const opts: GovernorOptions = {
27
+ name,
28
+ version,
29
+ votingDelay,
30
+ votingPeriod,
31
+ proposalThreshold,
32
+ quorum,
33
+ timelock,
34
+ upgradeable,
35
+ access,
36
+ explicitImplementations,
37
+ info,
38
+ };
39
+ return {
40
+ content: [
41
+ {
42
+ type: 'text',
43
+ text: safePrintRustCodeBlock(() => governor.print(opts)),
44
+ },
45
+ ],
46
+ };
47
+ },
48
+ );
49
+ }
@@ -2,19 +2,20 @@ import type { McpServer, RegisteredTool } from '@modelcontextprotocol/sdk/server
2
2
  import type { NonFungibleOptions } from '@openzeppelin/wizard-stellar';
3
3
  import { nonFungible } from '@openzeppelin/wizard-stellar';
4
4
  import { safePrintRustCodeBlock, makeDetailedPrompt } from '../../utils';
5
- import { nonFungibleSchema } from '../schemas';
5
+ import { stellarNonFungibleSchema } from '@openzeppelin/wizard-common/schemas';
6
6
  import { stellarPrompts } from '@openzeppelin/wizard-common';
7
7
 
8
8
  export function registerStellarNonFungible(server: McpServer): RegisteredTool {
9
9
  return server.tool(
10
10
  'stellar-non-fungible',
11
11
  makeDetailedPrompt(stellarPrompts.NonFungible),
12
- nonFungibleSchema,
12
+ stellarNonFungibleSchema,
13
13
  async ({
14
14
  name,
15
15
  symbol,
16
16
  tokenUri,
17
17
  burnable,
18
+ votes,
18
19
  enumerable,
19
20
  consecutive,
20
21
  pausable,
@@ -29,6 +30,7 @@ export function registerStellarNonFungible(server: McpServer): RegisteredTool {
29
30
  symbol,
30
31
  tokenUri,
31
32
  burnable,
33
+ votes,
32
34
  enumerable,
33
35
  consecutive,
34
36
  pausable,
@@ -2,18 +2,19 @@ import type { McpServer, RegisteredTool } from '@modelcontextprotocol/sdk/server
2
2
  import type { StablecoinOptions } from '@openzeppelin/wizard-stellar';
3
3
  import { stablecoin } from '@openzeppelin/wizard-stellar';
4
4
  import { safePrintRustCodeBlock, makeDetailedPrompt } from '../../utils';
5
- import { stablecoinSchema } from '../schemas';
5
+ import { stellarStablecoinSchema } from '@openzeppelin/wizard-common/schemas';
6
6
  import { stellarPrompts } from '@openzeppelin/wizard-common';
7
7
 
8
8
  export function registerStellarStablecoin(server: McpServer): RegisteredTool {
9
9
  return server.tool(
10
10
  'stellar-stablecoin',
11
11
  makeDetailedPrompt(stellarPrompts.Stablecoin),
12
- stablecoinSchema,
12
+ stellarStablecoinSchema,
13
13
  async ({
14
14
  name,
15
15
  symbol,
16
16
  burnable,
17
+ votes,
17
18
  pausable,
18
19
  premint,
19
20
  mintable,
@@ -27,6 +28,7 @@ export function registerStellarStablecoin(server: McpServer): RegisteredTool {
27
28
  name,
28
29
  symbol,
29
30
  burnable,
31
+ votes,
30
32
  pausable,
31
33
  premint,
32
34
  mintable,
@@ -1,5 +1,6 @@
1
1
  import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
2
  import { registerStellarFungible } from './tools/fungible.js';
3
+ import { registerStellarGovernor } from './tools/governor.js';
3
4
  import { registerStellarStablecoin } from './tools/stablecoin.js';
4
5
  import { registerStellarNonFungible } from './tools/non-fungible.js';
5
6
  import type { KindedOptions } from '@openzeppelin/wizard-stellar';
@@ -12,6 +13,7 @@ type StellarToolRegisterFunctions = {
12
13
  function getRegisterFunctions(server: McpServer): StellarToolRegisterFunctions {
13
14
  return {
14
15
  Fungible: () => registerStellarFungible(server),
16
+ Governor: () => registerStellarGovernor(server),
15
17
  Stablecoin: () => registerStellarStablecoin(server),
16
18
  NonFungible: () => registerStellarNonFungible(server),
17
19
  };
@@ -2,14 +2,14 @@ import type { McpServer, RegisteredTool } from '@modelcontextprotocol/sdk/server
2
2
  import type { ERC1155Options } from '@openzeppelin/wizard-stylus';
3
3
  import { erc1155 } from '@openzeppelin/wizard-stylus';
4
4
  import { safePrintRustCodeBlock, makeDetailedPrompt } from '../../utils';
5
- import { erc1155Schema } from '../schemas';
5
+ import { stylusERC1155Schema } from '@openzeppelin/wizard-common/schemas';
6
6
  import { stylusPrompts } from '@openzeppelin/wizard-common';
7
7
 
8
8
  export function registerStylusERC1155(server: McpServer): RegisteredTool {
9
9
  return server.tool(
10
10
  'stylus-erc1155',
11
11
  makeDetailedPrompt(stylusPrompts.ERC1155),
12
- erc1155Schema,
12
+ stylusERC1155Schema,
13
13
  async ({ name, burnable, supply, info }) => {
14
14
  const opts: ERC1155Options = {
15
15
  name,
@@ -2,14 +2,14 @@ import type { McpServer, RegisteredTool } from '@modelcontextprotocol/sdk/server
2
2
  import type { ERC20Options } from '@openzeppelin/wizard-stylus';
3
3
  import { erc20 } from '@openzeppelin/wizard-stylus';
4
4
  import { safePrintRustCodeBlock, makeDetailedPrompt } from '../../utils';
5
- import { erc20Schema } from '../schemas';
5
+ import { stylusERC20Schema } from '@openzeppelin/wizard-common/schemas';
6
6
  import { stylusPrompts } from '@openzeppelin/wizard-common';
7
7
 
8
8
  export function registerStylusERC20(server: McpServer): RegisteredTool {
9
9
  return server.tool(
10
10
  'stylus-erc20',
11
11
  makeDetailedPrompt(stylusPrompts.ERC20),
12
- erc20Schema,
12
+ stylusERC20Schema,
13
13
  async ({ name, burnable, permit, flashmint, info }) => {
14
14
  const opts: ERC20Options = {
15
15
  name,
@@ -2,14 +2,14 @@ import type { McpServer, RegisteredTool } from '@modelcontextprotocol/sdk/server
2
2
  import type { ERC721Options } from '@openzeppelin/wizard-stylus';
3
3
  import { erc721 } from '@openzeppelin/wizard-stylus';
4
4
  import { safePrintRustCodeBlock, makeDetailedPrompt } from '../../utils';
5
- import { erc721Schema } from '../schemas';
5
+ import { stylusERC721Schema } from '@openzeppelin/wizard-common/schemas';
6
6
  import { stylusPrompts } from '@openzeppelin/wizard-common';
7
7
 
8
8
  export function registerStylusERC721(server: McpServer): RegisteredTool {
9
9
  return server.tool(
10
10
  'stylus-erc721',
11
11
  makeDetailedPrompt(stylusPrompts.ERC721),
12
- erc721Schema,
12
+ stylusERC721Schema,
13
13
  async ({ name, burnable, enumerable, info }) => {
14
14
  const opts: ERC721Options = {
15
15
  name,
@@ -1,6 +1,6 @@
1
1
  import type { McpServer, RegisteredTool } from '@modelcontextprotocol/sdk/server/mcp.js';
2
2
  import { hooks, type HooksOptions } from '@openzeppelin/wizard-uniswap-hooks';
3
- import { hooksSchema } from '../schemas';
3
+ import { uniswapHooksHooksSchema } from '@openzeppelin/wizard-common/schemas';
4
4
  import { makeDetailedPrompt, safePrintSolidityCodeBlock } from '../../utils';
5
5
  import { uniswapHooksPrompts } from '@openzeppelin/wizard-common';
6
6
 
@@ -8,7 +8,7 @@ export function registerUniswapHooks(server: McpServer): RegisteredTool {
8
8
  return server.tool(
9
9
  'uniswap-hooks',
10
10
  makeDetailedPrompt(uniswapHooksPrompts.Hooks),
11
- hooksSchema,
11
+ uniswapHooksHooksSchema,
12
12
  async ({
13
13
  hook,
14
14
  name,