Skip to main content
Glama

download_image

Download a stock photo from Pexels, Unsplash, or Pixabay, convert it to WebP, optionally resize, and save it to your project. Returns a relative path ready for use in an component.

Instructions

Download an image found via search_images, convert it to WebP, optionally resize it, and save it inside the project (default public/images). Returns the relative path ready for . Always pass trackDownloadUrl when the result came from Unsplash. Only URLs from pexels.com, unsplash.com and pixabay.com are accepted.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlYesdownloadUrl field from a search_images result.
qualityNoWebP quality. 80 is the sweet spot for web.
filenameYesDescriptive file name without extension, kebab-case (e.g. 'hero-artisan-bread'). Extension .webp is added automatically.
maxWidthNoResize down to this width if the original is wider (aspect ratio preserved, never upscaled).
outputDirNoRelative directory inside the project to save the file.public/images
overwriteNoOverwrite the file if it already exists.
trackDownloadUrlNotrackDownloadUrl from an Unsplash result. Required by Unsplash API guidelines when the photo is used.
Behavior4/5

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

Without annotations, the description covers key behaviors: conversion to WebP, optional resizing, default output directory, overwrite parameter, and the Unsplash requirement. It does not explicitly mention side effects like network requests or file system writes, but these are implied. A higher score would require explicit mention of non-destructiveness or rate limits.

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 concise and well-structured. It opens with the main action and result, then adds important constraints and guidelines. Every sentence adds value without redundancy.

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

Completeness5/5

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

Given no output schema, the description explains the return value (relative path for <Image src>). It covers all major aspects: source URLs, conversion, resizing, quality, naming, and overwrite behavior. The tool's purpose and usage are thoroughly described for an agent.

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 100%, so baseline is 3. The description adds value beyond the schema: clarifies the filename should be kebab-case, maxWidth resizes down only, outputDir default is public/images, and trackDownloadUrl is required for Unsplash. This provides useful context.

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 the tool downloads an image, converts it to WebP, optionally resizes it, saves it in the project, and returns a relative path. It distinguishes from siblings by specifying it works with URLs from search_images and mentions the accepted sources.

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

Usage Guidelines5/5

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

Explicitly states when to use the tool: after search_images, and only for URLs from pexels.com, unsplash.com, and pixabay.com. Also specifies that trackDownloadUrl must be passed for Unsplash results, providing clear prerequisites.

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/romulorasec/imagebank-mcp'

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