Skip to main content
Glama

OpenZeppelin Contracts MCP Server

Official
by OpenZeppelin
CustomControls.svelte1.5 kB
<script lang="ts"> import HelpTooltip from '../common/HelpTooltip.svelte'; import type { KindedOptions } from '@openzeppelin/wizard'; import { custom, infoDefaults } from '@openzeppelin/wizard'; import AccessControlSection from './AccessControlSection.svelte'; import UpgradeabilitySection from './UpgradeabilitySection.svelte'; import InfoSection from './InfoSection.svelte'; export let opts: Required<KindedOptions['Custom']> = { kind: 'Custom', ...custom.defaults, info: { ...infoDefaults }, // create new object since Info is nested }; $: requireAccessControl = custom.isAccessControlRequired(opts); </script> <section class="controls-section"> <h1>Settings</h1> <label class="labeled-input"> <span>Name</span> <input bind:value={opts.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/5.x/api/utils#Pausable"> Privileged accounts will be able to pause the functionality marked as <code>whenNotPaused</code>. Useful for emergency response. </HelpTooltip> </label> </div> </section> <AccessControlSection bind:access={opts.access} required={requireAccessControl} /> <UpgradeabilitySection bind:upgradeable={opts.upgradeable} /> <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