Skip to main content
Glama
brilliantdirectories

brilliant-directories-mcp

Official

getImageDimensions

Read-onlyIdempotent

Retrieve width, height, aspect ratio, and orientation (landscape, portrait, square) from JPG/PNG image URLs by parsing header bytes. Verifies image properties before assigning to feature image fields.

Instructions

Probe an image URL and return its dimensions + orientation. - Wrapper-native synthetic tool. Range-GETs the first 64KB of an image URL and parses JPG/PNG header bytes to return width, height, format, aspect_ratio, and orientation (landscape | portrait | square). Does NOT proxy to BD. Used by content-creation skills to verify image orientation before committing to a feature-image field (post_image, cover_photo, hero_image).

Caller contract: filter candidate URLs to .jpg / .jpeg / .png BEFORE calling. WebP / GIF / AVIF are unsupported — the parser returns { status: "error", message: "unsupported image format..." } as a defense-in-depth fallback, but callers must not rely on it; skip non-JPG/PNG extensions outright per Rule: Image dimensions. Any error response (404, timeout, parse fail, unsupported format) means drop the candidate and pick another.

See also: Rule: Image dimensions, Rule: Image dedup.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlYesBare canonical image URL (e.g. `https://images.pexels.com/photos/<id>/pexels-photo-<id>.jpeg`). Must respond with HTTP 200/206 to a Range request for the first 64KB.
Behavior5/5

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

Annotations already indicate readOnly, idempotent, and openWorld. The description adds that it does not proxy to BD, performs a Range GET of first 64KB, and returns error for unsupported formats, providing full behavioral context beyond annotations.

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 description is well-structured with clear sections (purpose, caller contract, see also) and is front-loaded. It is informative but slightly verbose due to the caller contract and rule references; still efficient overall.

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?

Despite no output schema, the description specifies return fields (width, height, format, aspect_ratio, orientation) and error response format. It covers error handling, limitations, and usage context, making it fully complete for an agent to use correctly.

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

Parameters5/5

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

The single 'url' parameter has 100% schema coverage with description, and the description adds crucial context: requires HTTP 200/206 for Range request, example format, and that it should be a bare canonical URL. This fully explains the parameter's requirements.

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 it probes an image URL and returns dimensions + orientation, specifying it parses JPG/PNG headers via a Range GET. This distinguishes it from sibling tools, which are mostly CRUD operations on different entities.

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?

It explicitly states it is used by content-creation skills for image orientation verification, provides a caller contract to filter URLs to .jpg/.jpeg/.png, and warns about unsupported formats with error fallback. References to 'Rule: Image dimensions' and 'Rule: Image dedup' give further context.

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/brilliantdirectories/brilliant-directories-mcp'

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