Skip to main content
Glama

Swap head in photo

swap_head_in_photo

Use only with the user's own likeness or content they are authorized to use. Do not use for impersonation, deception, sexual content, or content involving minors.

Swaps a head from a supplied image onto a supplied body image. Costs 10 credits; returns a project id for wait_for_image_project. Before choosing settings, read get_account_info and the current parameter constraints. A listed model, resolution, duration or count is not necessarily available together or on this account. Preserve explicit requirements and all supplied inputs; explain a genuine block instead of submitting an incompatible request. Account balance alone does not prove a request is affordable.

Input Schema

NameRequiredDescriptionDefault
nameNoGive your image a custom name for easy identification.Head Swap - dateTime
assetsYesProvide the body and head images for head swap
max_resolutionNoConstrains the larger dimension (height or width) of the output. Omit to use the maximum allowed for your plan (capped at 2048px). Values above your plan maximum are clamped down to your plan's maximum.

Output Schema

NameRequiredDescriptionDefault
idYesUnique ID of the image. Use it with the [Get image Project API](https://docs.magichour.ai/api-reference/image-projects/get-image-details) to fetch status and downloads.
credits_chargedYesThe amount of credits deducted from your account to generate the image. We charge credits right when the request is made. If an error occurred while generating the image(s), credits will be refunded and this field will be updated to include the refund.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4/5.0
Behavior4/5

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

Beyond the annotations (readOnlyHint=false, destructiveHint=false, openWorldHint=true), it discloses the 10-credit cost, that a project id is returned, and that the call is asynchronous via wait_for_image_project. It also warns that listed model/resolution/duration/count values may not be jointly available, which is real behavioral context. Failure modes and what happens to a rejected request are not detailed.

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?

Safety and scope come first, then purpose, then cost and the required follow-up tool, then the availability caveat. Every sentence carries information an agent needs before submitting the request; nothing is redundant with the schema or annotations.

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?

With an output schema, full parameter coverage, and annotations, the description covers the remaining gaps: cost, async project flow, and plan-based availability limits. The only missing piece is dispatch guidance versus the near-identical face-swap siblings.

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 description coverage is 100%, so both asset paths and max_resolution are already documented in detail. The description only adds the availability caveat that a listed resolution 'is not necessarily available together or on this account,' which mildly enriches max_resolution but is largely covered by the schema's clamping note.

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 states a specific verb and resource: 'Swaps a head from a supplied image onto a supplied body image,' which an agent can act on immediately. It stops short of differentiating from the close siblings swap_face_in_photo and edit_face_in_photo, so the agent must infer which head/face tool applies.

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 gives explicit exclusions ('Do not use for impersonation, deception, sexual content, or content involving minors') plus a workflow order: read get_account_info before choosing settings and use the returned project id with wait_for_image_project. The exclusions are content-policy rather than sibling-selection guidance, which is the main gap.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources