Skip to main content
Glama

Edit face in photo

edit_face_in_photo

Adjusts facial expression, pose and gaze in a supplied photo using numeric controls. Costs 1 credit per edit; output size depends on the subscription tier. Starts a background job; returns a project id for wait_for_image_project.

Input Schema

NameRequiredDescriptionDefault
nameNoGive your image a custom name for easy identification.Face Editor - dateTime
styleYesFace editing parameters
assetsYesProvide the assets for face editor

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?

Annotations already cover the safety profile (readOnlyHint=false, destructiveHint=false, openWorldHint=true). The description adds genuinely new behavior: 1 credit per edit, output size tied to subscription tier, and asynchronous execution returning a project id. It stops short of failure modes or what happens if no face is detected, which keeps it off a 5.

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 short sentences, front-loaded with what the tool does, then cost, then the async return contract. Every sentence carries information an agent needs and none repeats structured fields.

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 an output schema exists, the description needn't explain return values, and it correctly limits itself to cost, tier-dependent sizing and the follow-up call. For a nested 3-parameter generation tool this is nearly complete; only the input asset expectations and failure handling are left implicit.

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%, and every style field carries its range, increment and meaning in the schema itself. The description's 'numeric controls' framing adds a little orientation but no semantics beyond what the schema documents, so the baseline 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?

States a specific verb ('adjusts'), resource ('facial expression, pose and gaze in a supplied photo') and mechanism ('numeric controls'). This clearly separates it from identity-swapping siblings like swap_face_in_photo or change_clothes_in_photo without needing to open a schema.

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 gives workflow context ('Starts a background job; returns a project id for wait_for_image_project'), which is useful, but never states when to choose this over edit_image, swap_face_in_photo, or swap_head_in_photo. Usage is implied by the verb rather than guided.

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.