Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
OUT_DIRNoDirectory for collected output artifacts../out
DATA_DIRNoDirectory for session data and temporary files.system temp
NO_PROXYNoHosts that should bypass the proxy.
GRID_ROWSNoNumber of rows in the contact sheet grid.8
PROVIDERSNoComma-separated enabled image providers.ddg,bing,wikimedia
HTTP_PROXYNoOptional HTTP proxy for image source requests.
FILTER_MODENoFilter mode: auto|server|client. Determines whether the server performs vision filtering.auto
HTTPS_PROXYNoOptional HTTPS proxy for image source requests (some sources are blocked).
PI_THINKINGNoThinking mode for the LLM: off|minimal|low|medium|high. It is recommended to keep it enabled.auto
SAFE_SEARCHNoEnable safe search (e.g., true/false).
GRID_COLUMNSNoNumber of columns in the contact sheet grid.6
LLM_MAX_TURNSNoMaximum turns for the inner LLM tool-calling loop.3
PI_TEXT_MODELNoModel identifier for text parsing (e.g., deepseek/deepseek-v4-flash).auto-selected
GEMINI_API_KEYNoAPI key for Google Gemini.
GRID_CELL_SIZENoCell size in pixels for the grid.256
OPENAI_API_KEYNoAPI key for OpenAI.
SERPER_API_KEYNoAPI key to enable the Serper (Google image search) provider.
HTTP_TIMEOUT_MSNoHTTP request timeout in milliseconds for fetching images.15000
OPENVERSE_TOKENNoToken to enable the Openverse image provider (CC image library).
PI_VISION_MODELNoModel identifier for vision filtering (e.g., anthropic/claude-sonnet-4-5).auto-selected
DEEPSEEK_API_KEYNoAPI key for DeepSeek (used for text parsing or as the key for a custom provider).
ANTHROPIC_API_KEYNoAPI key for Anthropic (used for vision filtering).
OPENROUTER_API_KEYNoAPI key for OpenRouter.
SESSION_TTL_MINUTESNoSession and temporary grid cleanup TTL in minutes.120
PI_CUSTOM_PROVIDER_IDNoCustom provider identifier (e.g., deepseek-vision).
PI_CUSTOM_PROVIDER_APINoAPI type for a custom OpenAI-compatible provider (e.g., openai-completions).
PI_CUSTOM_PROVIDER_MODELSNoComma-separated model list for a custom provider (e.g., qwen-vl-max,qwen-turbo).
PI_CUSTOM_PROVIDER_API_KEYNoAPI key for a custom provider.
PI_CUSTOM_PROVIDER_BASE_URLNoBase URL for a custom OpenAI-compatible provider.
PI_CUSTOM_PROVIDER_API_KEY_ENVNoName of the environment variable that holds the API key for a custom provider (e.g., DEEPSEEK_API_KEY).

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
image_search_startA

Parse a natural-language query into keywords (unless keywords are given), search all configured image providers in parallel, dedupe, render a numbered composite grid (round 'a', cell ids a1..aN), and run a multimodal filter that returns the selected cell ids. Returns the grid file path, the selected ids, the metadata table, and the keywords actually used.

image_search_iterateA

Give feedback referencing round-qualified ids (e.g. 'keep a3, more like b7, no photos') plus optional explicit keywords. Produces the next round (b, c, ...) with dedup against all previously shown images. The LLM interprets the feedback into keyword additions/removals via refine_search.

image_search_collectA

Download the full-resolution images for a list of round-qualified ids (e.g. ['a3', 'b12']) to the output directory. Returns local file paths plus a manifest with source URLs and licenses.

image_search_statusB

Rounds so far, per-round selections/rejections, current keywords, and collected ids.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4/5.0

Scored across 4 tools

Disambiguation5/5

Each tool has a unique and clearly defined role: start initializes a search, iterate refines it with feedback, collect downloads selected results, and status reports the current state. No two tools overlap in purpose.

Naming Consistency5/5

All tools follow the exact same `image_search_<verb>` pattern, with verbs that accurately describe the action (start, iterate, collect, status). The naming is uniformly styled and predictable.

Tool Count5/5

Four tools is perfectly scoped for an iterative image search workflow. Each tool covers a necessary step without redundancy, making the set concise and well-balanced.

Completeness5/5

The tools cover the full lifecycle: initiating a search, refining it through feedback, collecting final results, and monitoring progress. No obvious gaps exist for the intended use case, as the start tool integrates search and multimodal filtering.

Maintenance

ActivityMaintained
ResponsivenessNo issues