Skip to main content
Glama
G-Core
by G-Core

cloud_insts_imgs_upl

Upload an image from a URL, configuring properties such as OS type, architecture, and tags for use in Gcore Cloud.

Instructions

Upload an image from a URL.

The image can be configured with various properties like OS type, architecture, and tags.

Args: name: Image name

url: URL

architecture: Image CPU architecture type: aarch64, x86_64

cow_format: When True, image cannot be deleted unless all volumes, created from it, are deleted.

hw_firmware_type: Specifies the type of firmware with which to boot the guest.

hw_machine_type: A virtual chipset type.

is_baremetal: Set to true if the image will be used by bare metal servers. Defaults to false.

os_distro: OS Distribution, i.e. Debian, CentOS, Ubuntu, CoreOS etc.

os_type: The operating system installed on the image.

os_version: OS version, i.e. 22.04 (for Ubuntu) or 9.4 for Debian

ssh_key: Whether the image supports SSH key or not

tags: Key-value tags to associate with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.

extra_headers: Send extra headers

extra_query: Add additional query parameters to the request

extra_body: Add additional JSON properties to the request

timeout: Override the client-level default timeout for this request, in seconds

Note: Pass the numeric project_id. When a project name is provided, resolve it via cloud.projects.list/cloud.projects.get. If nothing is specified, fetch the account's default project first and use that ID. Pass the numeric region_id. Resolve region names with cloud.regions.list or cloud.regions.get. If no region is mentioned, obtain the default region ID before calling this tool.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
project_idYes
region_idYes
nameYes
urlYes
architectureNo
cow_formatNo
hw_firmware_typeNo
hw_machine_typeNo
is_baremetalNo
os_distroNo
os_typeNo
os_versionNo
ssh_keyNo
tagsNo
extra_headersNo
extra_queryNo
extra_bodyNo
timeoutNo
Behavior2/5

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

No annotations are provided, so the description must fully disclose behavioral traits. It fails to mention the return value, whether upload is synchronous or async, any failure modes, or authentication requirements. The note on project/region resolution is the only behavioral context, leaving significant gaps in understanding the tool's behavior.

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

Conciseness3/5

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

The description is lengthy (30+ lines) with a parameter list and usage note. It is structured with a clear intro, args section, and note, but some parameter descriptions are verbose and could be condensed. The front-loading is adequate but not optimal.

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

Completeness3/5

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

Given the 18 parameters, no output schema, and no annotations, the description covers parameter details and project/region resolution well. However, it omits critical context like the return value (e.g., image ID), completion behavior (sync/async), error handling, and permissions. Thus, it is not fully complete.

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 description coverage is 0%, but the tool's description provides detailed parameter explanations, including allowed values for enums (e.g., architecture, hw_firmware_type) and meanings (e.g., cow_format, tags). This adds substantial meaning beyond the bare schema. However, parameters like extra_headers, extra_query, extra_body remain vague.

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 clearly states 'Upload an image from a URL,' which is a specific verb+resource. It distinguishes from sibling tools like cloud_insts_imgs_ls, cloud_insts_imgs_del, etc., which perform different actions on images. The title, though absent, is not needed for 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 includes a detailed note on how to resolve project_id and region_id from names or defaults, providing explicit guidance for using these required parameters. However, it does not specify when not to use this tool versus other image tools (e.g., cloud_insts_imgs_new_vol), but the purpose is clear enough.

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

Install Server

Other Tools

Latest Blog Posts

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/G-Core/gcore-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server