Skip to main content
Glama

Server Details

Every visual AI tool for property listings — staging, enhancement, decluttering, cinematic video.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.1/5 across 13 of 13 tools scored. Lowest: 3.5/5.

Server CoherenceA
Disambiguation5/5

Each tool targets a distinct action or resource: photo enhancement, decluttering, staging, day/night conversion, sign placement, video creation, uploads, job checking, credit balance, and library listing. Even related tools like cinematic_motion and before_after_reel have clear differences (single image vs. two frames). No genuine overlap exists.

Naming Consistency3/5

Most tools follow a clear verb_noun pattern (declutter_photo, enhance_photo, get_job, list_library), but several use noun phrases (cinematic_motion, virtual_staging, before_after_reel, day_to_night). This mixed convention is still readable but not perfectly uniform.

Tool Count5/5

With 13 tools, the server covers a wide range of real-estate media operations without being bloated. Each tool serves a specific need, and the count is well within the typical 3-15 range for a purpose-built server.

Completeness4/5

The tool surface covers the main workflows: photo enhancement, staging, editing, video creation, uploads, library viewing, job status, and credit management. Minor gaps exist like no delete/update for library items, but these are not critical for the core real-estate editing use case.

Available Tools

13 tools
before_after_reelAInspect

Animate a before→after transformation (e.g. empty room → staged) into a social-ready reveal video from two frames. Costs credits from the user's Pixly balance.

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNo9:16
afterR2PathNoR2 path of the end frame — the alternative to afterImageUrl.
revealStyleNoHow the transformation is revealedsmooth
videoIntentNostaging_reveal
beforeR2PathNoR2 path of the start frame — the alternative to beforeImageUrl.
afterImageUrlNoEnd frame (e.g. the staged result) — https URL or data: URI
beforeImageUrlNoStart frame (e.g. the empty room photo) — https URL or data: URI
durationSecondsNo
Behavior4/5

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

The description adds a behavioral detail beyond the annotations by stating it 'Costs credits from the user's Pixly balance.' This is useful context for a mutation-like operation. It does not describe job persistence or return behavior.

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 two concise sentences, front-loaded with the core action and deliverable. Every sentence contributes meaningful information without filler.

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 tool has 8 parameters and no output schema, the description covers the primary purpose and cost but omits operational details such as job ID, return format, or async behavior. It is adequate but not fully complete.

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

Parameters3/5

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

With 63% schema description coverage, many parameters (beforeImageUrl, afterImageUrl, revealStyle, videoIntent, etc.) are already documented. The description's 'two frames' loosely maps to the before/after parameters but offers no additional parameter-level meaning or selection guidance.

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 uses a specific verb ('Animate') and names a clear deliverable (a 'social-ready reveal video'). The example 'empty room → staged' and the mention of 'two frames' distinguish it from sibling tools like virtual_staging or day_to_night.

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 example 'empty room → staged' provides a clear use case, and 'from two frames' defines the input requirements. However, it does not explicitly state when not to use it or mention alternative tools.

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

cinematic_motionAInspect

Turn a single listing photo into a short cinematic clip with a professional camera move (zoom, orbit, fly-through, crane up…). No second frame needed. Costs credits from the user's Pixly balance.

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNoAspect ratio9:16
r2PathNoR2 object path from an upload ticket (POST /api/v1/uploads) — the alternative to imageUrl when the photo is a local file.
imageUrlNoPublic https URL of the source photo, or a data: URI. Either imageUrl or r2Path is required.
cameraMoveNoCamera-move presetzoom
durationSecondsNoClip length; the routed model validates its supported tiers
Behavior4/5

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

The description adds useful behavioral context beyond the annotations: it consumes credits from the user's Pixly balance. It also indicates a prerequisite (single photo). However, it does not disclose whether the operation is asynchronous or what it returns, which could affect how the agent handles the result.

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 three short sentences, each carrying distinct information: the core action, the single-photo requirement, and the credit cost. It is front-loaded with the primary purpose and contains no filler or repetition.

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?

The description covers the main purpose, input requirement, and cost, but given the absence of an output schema, it should indicate what the tool returns or whether it is asynchronous (especially since a get_job sibling exists). Without this, the agent may not know how to retrieve the final result, leaving the description incomplete for operational use.

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

Parameters3/5

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

The input schema already provides 100% coverage of parameter descriptions, so the tool description adds minimal extra value. The examples of camera moves in the description (zoom, orbit, fly-through) overlap with the cameraMove enum, but no new information about the parameters is supplied beyond what the schema already gives.

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's function: 'Turn a single listing photo into a short cinematic clip with a professional camera move.' It lists specific camera moves (zoom, orbit, fly-through, crane up) and distinguishes itself from siblings by noting 'No second frame needed', which separates it from tools like before_after_reel.

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 provides clear context: it is for turning a single listing photo into a cinematic clip, and it notes the credit cost. The phrase 'No second frame needed' implies a single-photo use case, differentiating from multi-frame alternatives, but it stops short of explicitly naming when not to use the tool or referencing sibling tools.

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

create_upload_ticketAInspect

Get a presigned upload URL for a LOCAL image file — the one case a URL can't cover. PUT the file to uploadUrl with the same Content-Type, then pass the returned r2Path to a generation tool instead of imageUrl. Ticket expires in 1 hour.

ParametersJSON Schema
NameRequiredDescriptionDefault
filenameYesOriginal filename, used for the extension
sizeBytesNoExact byte size of the file. Recommended: when given it is signed into the URL, so the upload is bounded server-side.
contentTypeYesMIME type the PUT request will send
Behavior4/5

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

The description adds valuable behavioral details beyond the annotations: the presigned URL nature, the required PUT step, the 1-hour expiration, and the r2Path output. It does not contradict the readOnlyHint=false (write operation) and destructiveHint=false. Minor gap: no explicit mention of response structure beyond uploadUrl and r2Path, but these are named.

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?

Three sentences, tightly packed with essential information. No filler or repetition. The purpose is front-loaded, and each sentence earns its place by explaining workflow and constraints.

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?

The tool is simple, and the description covers the critical workflow, output, and expiration. With no output schema, it names the returned fields (uploadUrl, r2Path). It could mention error cases or security notes, but for a presigned upload tool, this is sufficiently complete.

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

Parameters3/5

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

Schema coverage is 100%, so baseline is 3. The description does not add meaning beyond the schema for parameters like filename or sizeBytes; it only references contentType in the PUT step. However, it does clarify the role of uploadUrl and r2Path as outputs, which is helpful, but that's not parameter semantics.

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's function: 'Get a presigned upload URL for a LOCAL image file'. It uses a specific verb ('Get') and resource ('presigned upload URL'), and explicitly differentiates from URL-based uploads with 'the one case a URL can't cover'.

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 provides explicit usage instructions: PUT to uploadUrl with the same Content-Type, then pass r2Path to a generation tool. It also notes the 1-hour expiry, giving clear context for when and how to use the tool. The distinction from URL uploads implicitly guides tool selection.

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

day_to_nightAInspect

Turn a daytime listing photo into a magazine-style night scene — lights on, warm glow, dusk sky — with the building and camera angle unchanged. Costs credits from the user's Pixly balance.

ParametersJSON Schema
NameRequiredDescriptionDefault
r2PathNoR2 object path from an upload ticket (POST /api/v1/uploads) — the alternative to imageUrl when the photo is a local file.
imageUrlNoPublic https URL of the source photo, or a data: URI. Either imageUrl or r2Path is required.
Behavior4/5

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

Annotations indicate readOnlyHint=false and destructiveHint=false, meaning it's a non-read-only mutation. The description adds valuable context beyond annotations by disclosing the credit cost and stating that the building and camera angle remain unchanged, which helps set expectations.

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 two sentences long, front-loaded with the main action, and contains no redundant or filler wording. Every detail (visual transformation, invariants, credit cost) earns its place.

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?

The description covers the tool's purpose and cost, and the schema fully documents the parameters. However, it omits mention of the return value or whether the operation is asynchronous (likely via a job, given sibling get_job). Since there is no output schema, describing the result format would improve completeness.

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

Parameters3/5

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

The input schema provides 100% coverage of both parameters (r2Path and imageUrl) with detailed descriptions, including the constraint that either one is required. The description does not add additional parameter-level meaning, so the baseline score of 3 applies.

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 action — 'turn a daytime listing photo into a magazine-style night scene' — with specific visual details (lights on, warm glow, dusk sky) and invariants (building/camera unchanged). This differentiates it from sibling tools like enhance_photo or virtual_staging.

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 implies when to use this tool (when you have a daytime listing photo and want a night scene) and explicitly mentions a practical consideration (credit cost). It does not name alternatives or exclusions, but the context is clear enough for an agent to decide.

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

declutter_photoAInspect

Remove clutter, mess, and personal items from a listing photo while keeping the room, furniture, and architecture intact. Costs credits from the user's Pixly balance.

ParametersJSON Schema
NameRequiredDescriptionDefault
r2PathNoR2 object path from an upload ticket (POST /api/v1/uploads) — the alternative to imageUrl when the photo is a local file.
imageUrlNoPublic https URL of the source photo, or a data: URI. Either imageUrl or r2Path is required.
Behavior4/5

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

The description adds meaningful behavioral context beyond the annotations by disclosing the credit cost from the user's Pixly balance. It also emphasizes preservation of room/furniture/architecture, which clarifies the non-destructive nature. It does not detail output format or reversibility, but the annotations already cover the read-only/destructive flags.

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 two sentences: the first states the core purpose, and the second states the credit cost. There is no wasted wording, and the important information is front-loaded.

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?

The description covers the core behavior and cost but lacks any mention of the return value or post-operation result (e.g., does it return an edited image URL or a job ID?). Given there is no output schema and the tool has a side effect (credit deduction), this missing information is a gap, keeping the score at a minimum viable level.

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

Parameters3/5

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

The input schema already describes both parameters (r2Path and imageUrl) with 100% coverage, including the alternative requirement. The description adds no additional parameter-specific meaning, so the baseline of 3 is appropriate.

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's function: 'Remove clutter, mess, and personal items from a listing photo' with the specific constraint of 'keeping the room, furniture, and architecture intact.' This verb+resource phrasing distinguishes it from sibling editing tools like virtual_staging or enhance_photo.

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?

It implies a clear use case (listing photos with unwanted clutter) and notes that credits are consumed, which is an operational consideration. However, it does not explicitly compare to alternatives or state when not to use it, so it falls short of the top score.

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

edit_staged_photoAInspect

Apply a specific change to a previously staged photo (swap the sofa, add a rug) while preserving everything else. Costs credits from the user's Pixly balance.

ParametersJSON Schema
NameRequiredDescriptionDefault
styleYesStyle id, used as context to match new elements
r2PathNoR2 path of the previous staged result — the alternative to imageUrl.
imageUrlNoURL of the PREVIOUS staged result to edit (the resultUrls entry from its job). Either imageUrl or r2Path is required.
sourceJobIdNoJob the edited result came from (lineage)
sourceResultIndexNoWhich variation was edited
customInstructionsYesThe concrete edit to apply, e.g. "change the sofa to grey"
Behavior4/5

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

The description discloses the cost implication ('costs credits from the user's Pixly balance') and the key behavioral trait of preserving the rest of the image. Annotations already indicate it is not read-only and not destructive, and the description adds context without contradicting them. It could further mention that it creates a new job or returns a new result, but the core behavior is adequately covered.

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?

Two sentences that are front-loaded with the action and examples, then the cost warning. Every word earns its place; no fluff or repetition. Excellent conciseness.

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?

Given the tool's complexity (6 params, editing an existing result) and lack of output schema, the description explains the overall purpose and cost. It doesn't explicitly describe the output (e.g., a new job/result), but the schema and sibling context provide enough to infer the workflow. Could be slightly more complete by noting that editing produces a new staged result, but it's sufficient for most agents.

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

Parameters3/5

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

Schema coverage is 100% with each parameter already described (e.g., r2Path vs imageUrl, sourceJobId for lineage). The description adds high-level context ('previously staged photo') but does not elaborate on parameter relationships or prerequisites beyond what the schema states. This meets the baseline for full schema coverage, though it doesn't go beyond it.

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 uses a specific verb ('apply a specific change') and identifies the resource ('previously staged photo') with concrete examples ('swap the sofa, add a rug'). It clearly differentiates from siblings like virtual_staging (initial staging) and declutter_photo (a different transformation), making it unambiguous when this tool is appropriate.

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 phrase 'previously staged photo' and 'preserving everything else' clearly indicate this is for editing an existing result rather than creating a new one. While it doesn't explicitly name alternative tools (e.g., 'use virtual_staging first'), the context signals and sibling list make the intended workflow apparent. Could be stronger with an explicit 'use this instead of re-staging'.

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

enhance_photoAInspect

Turn an amateur listing photo into a finished, professional real-estate photo (exposure, color, clarity). Returns 3 variants to pick from. Costs credits from the user's Pixly balance.

ParametersJSON Schema
NameRequiredDescriptionDefault
r2PathNoR2 object path from an upload ticket (POST /api/v1/uploads) — the alternative to imageUrl when the photo is a local file.
imageUrlNoPublic https URL of the source photo, or a data: URI. Either imageUrl or r2Path is required.
Behavior4/5

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

Annotations indicate non-read-only and non-destructive, but the description adds that the tool costs credits from the user's Pixly balance and returns 3 variants to pick from. These are meaningful behavioral traits beyond what the annotations provide.

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 two sentences, front-loaded with the action, and contains no redundant information. Every word contributes to understanding the tool's purpose and behavior.

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?

The tool has only 2 parameters and no output schema; the description explicitly explains the output (3 variants) and the cost model, covering all essential aspects for an agent to invoke it correctly.

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

Parameters3/5

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

The input schema already provides full descriptions for both parameters (r2Path and imageUrl), with 100% coverage. The description adds no parameter-specific details, so the baseline of 3 is appropriate.

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 turns an amateur listing photo into a professional real-estate photo, specifying improvements to exposure, color, and clarity. It also mentions returning 3 variants, which distinguishes it from sibling tools like virtual_staging or day_to_night.

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 implies the use case (amateur listing photos) and the desired outcome (professional finishes), providing clear context for when to use this tool. It does not explicitly mention when not to use it or name alternatives, but the practical details (credit cost, 3 variants) offer additional guidance.

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

get_credit_balanceA
Read-only
Inspect

The user's current Pixly credit balance and plan.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, covering the safety profile. The description adds that it provides the current balance and plan, which is useful context but does not disclose additional behavioral traits like rate limits, authentication requirements, or whether this inherently consumes credits.

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 a single concise sentence that gets straight to the point with no unnecessary words. It is appropriately sized for the tool's simplicity.

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 zero-parameter, read-only tool, the description is mostly complete. It identifies what is returned (balance and plan) but does not specify the format or units (e.g., credits, dollars) or any potential caveats. Since there is no output schema, a bit more detail could be helpful, but the current level is adequate.

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?

This tool has zero parameters, so the input schema is empty. Per the baseline for zero-parameter tools, a score of 4 is appropriate. The description adds no parameter meaning because there are none to explain.

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 clearly identifies the resource as the user's Pixly credit balance and plan. It lacks an explicit verb but the tool name includes 'get', making the purpose unambiguous. It distinguishes from sibling tools, which focus on photo editing and other unrelated operations.

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

Usage Guidelines2/5

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

The description gives no guidance on when to use this tool or how it compares to alternatives. There is no mention of prerequisites, use cases, or exclusions, leaving the agent without contextual decision support.

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

get_jobA
Read-only
Inspect

Check a generation job's status and fetch result URLs when it's done. Video jobs take 1-5 minutes — poll this with a few seconds between calls.

ParametersJSON Schema
NameRequiredDescriptionDefault
jobIdYesJob id returned by a generation tool
Behavior4/5

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

Annotations already mark this as readOnly and non-destructive. The description adds useful behavioral context: it fetches result URLs on completion and describes polling behavior. No contradiction with annotations.

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?

Two sentences, front-loaded with the primary purpose, followed by relevant polling guidance. No filler or redundancy.

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 simple status-checking tool with one parameter and good annotations, the description covers the key aspects: what it does, when to use, and what to expect (result URLs). No output schema exists, so the mention of fetching URLs partially addresses return values. Minimal gaps for a low-complexity tool.

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

Parameters3/5

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

The schema covers 100% of the parameter (jobId) with a description: 'Job id returned by a generation tool.' The tool description essentially repeats this without adding new meaning. Baseline of 3 is appropriate given high schema coverage.

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's purpose: 'Check a generation job's status and fetch result URLs when it's done.' This uses a specific verb ('check') and resource (job status), distinguishing it from sibling tools which are generation/editing operations. No ambiguity or tautology.

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?

Provides clear context on when to use: polling until done, with a specific polling interval ('a few seconds between calls'). It also mentions typical duration for video jobs. However, it does not explicitly state when not to use or name alternatives, so it stops short of a full 5.

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

list_libraryA
Read-only
Inspect

List the user's recent generations, or with type "uploads" their own uploaded source photos, newest first. Uploads are the way in when the photo is a local file: connectors cannot send bytes, so the user adds it at https://pixly.app/app and you pick up the r2Path here.

ParametersJSON Schema
NameRequiredDescriptionDefault
typeNoFilter by media type. "uploads" lists the user's own source photos instead of generations — use it when they refer to a photo they added but have not run a tool on yet.
limitNo
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, which the description does not contradict. The description adds behavioral context beyond the annotations by noting 'newest first' ordering and explaining the upload workflow, including the fact that connectors cannot send bytes and the r2Path is obtained here. This extra detail is valuable for understanding how the tool behaves in a broader workflow.

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 two sentences, front-loaded with the primary purpose and ordering, followed by a necessary clarification about uploads. No words are wasted, and each sentence earns its place. It is concise yet informative, making it easy for an agent to parse quickly.

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 simple list tool with two parameters and no output schema, the description is nearly complete. It explains the two modes (generations vs uploads) and the specific upload workflow. The only minor gap is not mentioning that results are paginated or how to adjust the limit, but the schema provides the limit details and the tool's behavior is predictable. Overall, it is well-suited for the tool's complexity.

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?

The schema already describes the 'type' parameter with an enum and a description, but the tool description adds richer meaning to the 'uploads' value, explaining that it lists the user's own source photos rather than generations and when to use it. The 'limit' parameter has no schema description, but its constraints (default 20, max 50, min 1) are self-explanatory. The description compensates for the schema's partial coverage by expanding on the key parameter.

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's purpose: 'List the user's recent generations, or with type "uploads" their own uploaded source photos, newest first.' It uses a specific verb ('list') and resource ('generations'/'uploads'), and the enum in the schema further clarifies the three possible types. This distinguishes it from sibling tools that generate or edit media, as it is purely a listing operation.

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 provides clear context for when to use the 'uploads' type: 'Uploads are the way in when the photo is a local file: connectors cannot send bytes, so the user adds it at https://pixly.app/app and you pick up the r2Path here.' This explains a specific use case and workflow, though it does not explicitly name alternatives or exclusions among the sibling tools. It gives enough guidance for an agent to decide when to call this tool.

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

plot_signAInspect

Place a photorealistic 3D monument sign with your exact text (price, area, SOLD) onto a photo of an empty plot, matched to perspective and lighting. Costs credits from the user's Pixly balance.

ParametersJSON Schema
NameRequiredDescriptionDefault
lookNoSign material/style; defaults server-side
textYesSign label, verbatim — a price ("$1,200,000"), area ("800 m²"), or short word ("SOLD")
r2PathNoR2 object path from an upload ticket (POST /api/v1/uploads) — the alternative to imageUrl when the photo is a local file.
imageUrlNoPublic https URL of the source photo, or a data: URI. Either imageUrl or r2Path is required.
orientationNoLetter orientation (letter looks only); defaults server-side
Behavior4/5

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

The description discloses a key behavioral trait beyond annotations: it costs credits from the user's Pixly balance. It also mentions perspective/lighting matching, which gives a sense of the transformation. Annotations already indicate non-read-only and non-destructive, so the added credit cost and rendering detail are valuable.

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 two sentences, front-loaded with the core action and purpose, followed by a concise note on cost. No filler or redundant wording.

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 5-parameter tool with no output schema, the description covers the main purpose, key customizations (text), and cost. It does not explain how results are returned (e.g., via get_job), but the presence of sibling tools like get_job and no output schema keeps this acceptable. A brief note on output could improve completeness.

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

Parameters3/5

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

Schema coverage is 100% with descriptive parameter descriptions (e.g., text examples, look enum, imageUrl vs r2Path). The description adds minimal extra meaning beyond repeating the text examples, so the baseline of 3 is appropriate.

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's function: placing a photorealistic 3D monument sign with custom text onto a photo of an empty plot. It uses a specific verb ('Place'), identifies the resource (a photo), and differentiates from siblings like virtual_staging or declutter_photo by focusing on adding a sign with text.

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?

The description implies the usage context (when you want to put a sign on a plot photo) but does not explicitly state when not to use it or suggest alternatives. Sibling tools exist, but no comparisons are provided, leaving the agent to infer based on the purpose.

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

upload_image_from_urlAInspect

Rarely needed: generation tools take an imageUrl directly. Use this only to import a photo into Pixly ahead of time, e.g. to reuse one URL across several tools without refetching it each time.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPublicly reachable image URL (JPG/PNG/WebP, max 10 MB) to import into Pixly
Behavior4/5

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

Annotations already indicate this is a mutation (readOnlyHint: false). The description adds behavioral context by noting that importing avoids 'refetching' the URL each time, implying the image is stored/cached in Pixly. It does not contradict the annotations and adds value beyond the safety hints.

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 two sentences, front-loaded with the key point ('Rarely needed') and no redundant wording. Every phrase earns its place, providing purpose and usage guidance in a compact form.

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 simple one-parameter tool with no output schema, the description covers purpose, usage context, and a hint of behavioral implications. It lacks explicit mention of the return value or post-import behavior, but given the low complexity and rich schema, it remains adequately complete.

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

Parameters3/5

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

The input schema already documents the 'url' parameter with format, accepted types, max size, and reachability constraints (100% coverage). The description adds no additional parameter-level detail, so it relies on the schema—fitting the baseline of 3 for high schema coverage.

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's purpose: import a photo into Pixly ahead of time. It uses the specific verb 'import' and the resource 'photo into Pixly', and explicitly distinguishes itself from generation tools that accept an imageUrl directly, making it easy to understand when this tool is needed.

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?

The description opens with 'Rarely needed' and explicitly states when to use it (to reuse a URL across several tools without refetching) and when not to (generation tools already take an imageUrl directly). This provides clear, actionable guidance on tool selection relative to alternatives.

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

virtual_stagingAInspect

Furnish and style an empty (or badly furnished) room photo in a chosen interior style. The flagship tool. HD, watermark-free results. Costs credits from the user's Pixly balance.

ParametersJSON Schema
NameRequiredDescriptionDefault
styleYesStyle id from the Pixly styles catalog (lib/real-estate/styles.ts)
r2PathNoR2 object path from an upload ticket (POST /api/v1/uploads) — the alternative to imageUrl when the photo is a local file.
imageUrlNoPublic https URL of the source photo, or a data: URI. Either imageUrl or r2Path is required.
roomTypeNoRoom type hint; omit to let vision infer it from the photo
numImagesNoIgnored — staging always returns one image. Call again for another take.
stagingQualityNopro = Nano Banana Pro instead of Nano Banana 2, at 2 credits instead of 1. Same prompt and same 2K output resolution either way — the model is the only difference.
customInstructionsNoOptional extra instructions blended into the staging prompt
Behavior4/5

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

The description adds valuable context beyond the annotations: it discloses that the tool costs credits, produces HD and watermark-free results, and is the flagship option. These are not present in the annotations and help set expectations for the operation's side effects and output quality.

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 remarkably concise at three sentences, front-loads the action, and every sentence provides meaningful information: purpose, flagship status, output quality, and credit cost. There is no fluff or repetition.

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 tool with seven parameters and no output schema, the description covers the essential context—purpose, credit cost, and output quality—while the schema handles parameter details. It does not explicitly mention the need for an upload ticket or the deprecation of numImages, but those are described in the schema. Overall, it is reasonably complete for guiding selection and basic invocation.

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

Parameters3/5

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

The input schema already documents all seven parameters with 100% coverage. The description mentions 'chosen interior style' but does not elaborate on parameter semantics beyond what the schema provides, such as the distinction between imageUrl and r2Path or the impact of stagingQuality.

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 uses a specific verb ('furnish and style') and identifies the target resource ('empty or badly furnished room photo'), clearly distinguishing it from siblings like declutter_photo or enhance_photo. The phrase 'flagship tool' reinforces its primary role within the tool suite.

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?

The description implies when to use the tool (for empty or badly furnished rooms) but does not explicitly name alternative tools or state when not to use it. Sibling tools such as declutter_photo or day_to_night could be relevant in related scenarios, but no exclusions or alternatives are mentioned.

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

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

  • A
    license
    -
    quality
    B
    maintenance
    Provides AI assistants with real-estate visual tools including virtual staging, photo enhancement, decluttering, day-to-night conversion, plot signs, and cinematic property videos via the Pixly API.
    0
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    AI ad studio for agents: generate finished video, image, and UGC avatar ads for any brand (script, voiceover, music, brand end card), and research competitor ads across the Meta, Google, and LinkedIn ad libraries plus TikTok/Instagram/YouTube organic. 52 tools.
    72
    2,131
    MIT

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources