Skip to main content
Glama

OpenZeppelin Contracts MCP Server

Official
by OpenZeppelin
add-pausable.ts1.04 kB
import type { ContractBuilder, BaseFunction } from './contract'; import type { Access } from './set-access-control'; import { requireAccessControl } from './set-access-control'; import { defineFunctions } from './utils/define-functions'; export function addPausable(c: ContractBuilder, access: Access, pausableFns: BaseFunction[]) { c.addParent({ name: 'Pausable', path: '@openzeppelin/contracts/utils/Pausable.sol', }); for (const fn of pausableFns) { c.addModifier('whenNotPaused', fn); } addPauseFunctions(c, access); } export function addPauseFunctions(c: ContractBuilder, access: Access) { requireAccessControl(c, functions.pause, access, 'PAUSER', 'pauser'); c.addFunctionCode('_pause();', functions.pause); requireAccessControl(c, functions.unpause, access, 'PAUSER', 'pauser'); c.addFunctionCode('_unpause();', functions.unpause); } const functions = defineFunctions({ pause: { kind: 'public' as const, args: [], }, unpause: { kind: 'public' as const, args: [], }, });

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/OpenZeppelin/contracts-wizard'

If you have feedback or need assistance with the MCP directory API, please join our Discord server