Skip to main content
Glama

OpenZeppelin Contracts MCP Server

Official
by OpenZeppelin
CustomControls.svelte1.7 kB
<script lang="ts"> import HelpTooltip from '../common/HelpTooltip.svelte'; import type { KindedOptions, OptionsErrorMessages } from '@openzeppelin/wizard-cairo'; import { custom, infoDefaults } from '@openzeppelin/wizard-cairo'; import AccessControlSection from './AccessControlSection.svelte'; import UpgradeabilityField from './UpgradeabilityField.svelte'; import InfoSection from './InfoSection.svelte'; import { error } from '../common/error-tooltip'; export let opts: Required<KindedOptions['Custom']> = { kind: 'Custom', ...custom.defaults, info: { ...infoDefaults }, // create new object since Info is nested }; export let errors: undefined | OptionsErrorMessages; $: requireAccessControl = custom.isAccessControlRequired(opts); </script> <section class="controls-section"> <h1>Settings</h1> <label class="labeled-input"> <span>Name</span> <input bind:value={opts.name} use:error={errors?.name} /> </label> </section> <section class="controls-section"> <h1>Features</h1> <div class="checkbox-group"> <label class:checked={opts.pausable}> <input type="checkbox" bind:checked={opts.pausable} /> Pausable <HelpTooltip link="https://docs.openzeppelin.com/contracts-cairo/2.x/security#pausable"> Privileged accounts will be able to pause the functionality marked with <code >self.pausable.assert_not_paused()</code >. Useful for emergency response. </HelpTooltip> </label> <UpgradeabilityField bind:upgradeable={opts.upgradeable} /> </div> </section> <AccessControlSection bind:access={opts.access} required={requireAccessControl} /> <InfoSection bind:info={opts.info} />

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