Skip to main content
Glama

OpenZeppelin Solidity Contracts

Solidity ERC1155

solidity-erc1155

Make a non-fungible token per the ERC-1155 standard.

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

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
uriYesThe location of the metadata for the token. Clients will replace any instance of {id} in this string with the tokenId.
infoNoMetadata about the contract and author
nameYesThe name of the contract
accessNoThe type of access control to provision. Ownable is a simple mechanism with a single account authorized for all privileged actions. Roles is a flexible mechanism with a separate role for each privileged action. A role can have many authorized accounts. Managed enables a central contract to define a policy that allows certain callers to access certain functions.
supplyNoWhether to keep track of total supply of tokens
burnableNoWhether token holders will be able to destroy their tokens
mintableNoWhether privileged accounts will be able to create more supply or emit more tokens
pausableNoWhether privileged accounts will be able to pause specifically marked functionality. Useful for emergency response.
upgradeableNoWhether the smart contract is upgradeable. Transparent uses more complex proxy with higher overhead, requires less changes in your contract. Can also be used with beacons. UUPS uses simpler proxy with less overhead, requires including extra code in your contract. Allows flexibility for authorizing upgrades.
updatableUriNoWhether privileged accounts will be able to set a new URI for all token types
crossChainBridgingNoWhether to embed an ERC-7786 based bridge directly in the token contract, making it natively crosschain. Crosschain transfers with registered counterparts burn the tokens on the source chain and mint them on the destination chain.
crossChainLinkAllowOverrideNoWhether to allow replacing a crosschain link that has already been registered. Only used if crossChainBridging is set to "erc7786native".

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the burden of behavioral disclosure. It explicitly states 'Returns the source code... formatted in a Markdown code block' and 'Does not write to disk,' which are key behavioral traits for a code generator. It does not mention compilation or deployment, but those may not be expected for a code generation tool. Overall, this is a solid disclosure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is only two sentences but packs essential information: the tool's purpose, the output format, and the fact that it does not write to disk. Every word earns its place, and it is front-loaded with the primary action. No redundancy or fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has 12 parameters and nested objects, but the schema provides detailed descriptions, so the description does not need to repeat them. The description covers the return value (source code) and side-effect behavior (no disk write). It is sufficient for an agent to understand the tool's purpose and output, though it could possibly mention the generated language (Solidity) is implicit from the name.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% coverage, meaning every parameter has a descriptive explanation. The description itself does not add additional parameter semantics beyond what the schema already provides. The baseline for high schema coverage is 3, and no extra value is added by the description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the tool 'Make a non-fungible token per the ERC-1155 standard,' which is a specific verb and resource. It clearly distinguishes from sibling tools by naming the ERC-1155 standard. It also specifies the output type (source code in a Markdown code block), adding further clarity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context: this is for creating ERC-1155 tokens. It does not explicitly exclude other standards or mention alternatives like ERC-721, but the standard is named and the sibling tools are evident. The context is clear enough for an agent to select it when ERC-1155 is requested.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4.3/5.0
Disambiguation5/5

Each tool targets a distinct contract type (account, custom, ERC1155, ERC20, ERC721, governor, RWA, stablecoin), and descriptions clearly differentiate between them, even for the ERC20-based variants.

Naming Consistency5/5

All tool names follow the identical 'solidity-<type>' pattern, providing a predictable and consistent naming scheme across the entire server.

Tool Count5/5

With 8 tools covering the main Solidity contract categories plus a custom option, the count is well-scoped for a contract generator and avoids unnecessary bloat.

Completeness4/5

The toolset covers major contract types, but it lacks support for upgradeable contracts (proxies) and some common OpenZeppelin features like ERC4626 vaults. The 'solidity-custom' tool can partially compensate for these gaps.

Resources