Skip to main content
Glama

create_custom_image

Create a custom Contabo image from a direct ISO or QCOW2 URL, then check its download status by retrieving image details.

Instructions

Provide a custom image [POST /v1/compute/images] In order to provide a custom image please specify an URL from where the image can be directly downloaded. A custom image must be in either .iso or .qcow2 format. Other formats will be rejected. Please note that downloading can take a while depending on network speed resp. bandwidth and size of image. You can check the status by retrieving information about the image via a GET request. Download will be rejected if you have exceeded your limits.

Input Schema

NameRequiredDescriptionDefault
bodyYesJSON request body
x-trace-idNoIdentifier to trace group of requests.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.1.0

TDQS

A3.8/5.0
Behavior4/5

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

Beyond the annotations (readOnlyHint=false, destructiveHint=false, idempotentHint=false) the description discloses that the operation is asynchronous and slow, that unsupported formats are rejected, and that downloads fail when quota limits are exceeded. Those are genuine behavioral traits an agent needs. It stops short of describing what is returned or whether re-submitting the same URL duplicates the image, which matters given idempotentHint=false.

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

Conciseness4/5

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

The purpose and endpoint are front-loaded, and each subsequent sentence contributes new information (formats, async duration, status polling, quota rejection). There is minor padding: the bracketed endpoint tag and the restatement in 'In order to provide a custom image please specify...' duplicate the title.

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?

For a create tool with no output schema, the description covers format validation, async timing, limit-based rejection and the follow-up status check — enough to call it correctly. The one remaining gap is that it does not say the response yields an image identifier the agent can then poll with retrieve_image.

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

Parameters4/5

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

Schema coverage is 100%, so baseline is 3, but the description adds real meaning to the `url` parameter — it must be a direct-download link and must resolve to .iso or .qcow2 content, with other formats rejected. That constraint is not stated in the schema's 'URL from where the image has been downloaded / provided.'

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

Purpose4/5

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

The description states a specific verb and resource — providing a custom image via a downloadable URL — with the endpoint noted. It is clearly distinct from the retrieval/mutation siblings such as retrieve_image_list, update_image and delete_image, though it never names an alternative explicitly.

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

Usage Guidelines3/5

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

It gives preconditions (URL must be a direct download link, format must be .iso or .qcow2) and points to a GET/retrieve_image step for checking status, which is useful implied routing. But it does not say when to use this versus creating an instance with an existing image, or when a custom image is the wrong choice.

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

Deploy Server

Other Tools