Skip to main content
Glama

OpenZeppelin Contracts MCP Server

Official
by OpenZeppelin

cairo-vesting

Generate vesting smart contracts for ERC-20 tokens with predefined schedules. Specify start date, duration, cliff period, and vesting type to create contract source code formatted in Markdown.

Instructions

Make a vesting smart contract that manages the gradual release of ERC-20 tokens to a designated beneficiary based on a predefined vesting schedule.

Returns the source code of the generated contract, formatted in a Markdown code block. Does not write to disk.

Input Schema

NameRequiredDescriptionDefault
cliffDurationYesThe duration of the cliff period. Must be less than or equal to the total duration. In readable date time format matching /^(\d+(?:\.\d+)?) +(second|minute|hour|day|week|month|year)s?$/
durationYesThe total duration of the vesting period. In readable date time format matching /^(\d+(?:\.\d+)?) +(second|minute|hour|day|week|month|year)s?$/
infoNoMetadata about the contract and author
nameYesThe name of the contract
scheduleYesA vesting schedule implementation, tokens can either be vested gradually following a linear curve or with custom vesting schedule that requires the implementation of the VestingSchedule trait.
startDateYesThe timestamp marking the beginning of the vesting period. In HTML input datetime-local format

Input Schema (JSON Schema)

{ "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "cliffDuration": { "description": "The duration of the cliff period. Must be less than or equal to the total duration. In readable date time format matching /^(\\d+(?:\\.\\d+)?) +(second|minute|hour|day|week|month|year)s?$/", "type": "string" }, "duration": { "description": "The total duration of the vesting period. In readable date time format matching /^(\\d+(?:\\.\\d+)?) +(second|minute|hour|day|week|month|year)s?$/", "type": "string" }, "info": { "additionalProperties": false, "description": "Metadata about the contract and author", "properties": { "license": { "description": "The license used by the contract, default is \"MIT\"", "type": "string" }, "securityContact": { "description": "Email where people can contact you to report security issues. Will only be visible if contract source code is verified.", "type": "string" } }, "type": "object" }, "name": { "description": "The name of the contract", "type": "string" }, "schedule": { "description": "A vesting schedule implementation, tokens can either be vested gradually following a linear curve or with custom vesting schedule that requires the implementation of the VestingSchedule trait.", "enum": [ "linear", "custom" ], "type": "string" }, "startDate": { "description": "The timestamp marking the beginning of the vesting period. In HTML input datetime-local format", "type": "string" } }, "required": [ "name", "startDate", "duration", "cliffDuration", "schedule" ], "type": "object" }

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