Skip to main content
Glama

๐Ÿค– PhotoForge MCP Server โ€” AI Fashion Studio, 4K Mocap Video & Creative Tools

MCP License: MIT Tools Claude Desktop Cursor

Official Model Context Protocol (MCP) server for PhotoForge AI (https://photoforge.ai).

Enables AI agents (Claude Desktop, Cursor, Antigravity, Windsurf, Poe, etc.) to direct studio-grade fashion photoshoots, execute on-model garment try-ons, animate 4K kinematic video motion capture, perform background swaps, and publish directly to Shopify, Notion, and social channels.


โšก Quick Start

1. Claude Desktop Configuration

Add the server definition to your claude_desktop_config.json:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "photoforge": {
      "command": "npx",
      "args": ["-y", "photoforge-mcp"],
      "env": {
        "PHOTOFORGE_MCP_API_KEY": "YOUR_PHOTOFORGE_API_KEY",
        "PHOTOFORGE_SERVER_URL": "https://photoforge.ai"
      }
    }
  }
}

Or connect directly via local clone:

{
  "mcpServers": {
    "photoforge": {
      "command": "node",
      "args": ["/path/to/photoforge-mcp/index.js"],
      "env": {
        "PHOTOFORGE_MCP_API_KEY": "YOUR_PHOTOFORGE_API_KEY"
      }
    }
  }
}

2. Cursor Configuration (~/.cursor/mcp.json or Project Settings)

{
  "mcpServers": {
    "photoforge": {
      "command": "node",
      "args": ["/path/to/photoforge-mcp/index.js"],
      "env": {
        "PHOTOFORGE_MCP_API_KEY": "YOUR_PHOTOFORGE_API_KEY"
      }
    }
  }
}

3. Remote SSE Transport (No Local Install Required)

Connect your MCP client directly to the hosted Server-Sent Events endpoint:

  • Server URL: https://photoforge.ai/api/mcp

  • Authentication: Bearer YOUR_API_KEY (or ?apiKey=user_...)

Get your API key at photoforge.ai/mcp (or use your Clerk User ID).


Related MCP server: ecommerce-3d-mcp

๐Ÿ› ๏ธ Complete MCP Tools Catalog (28 Tools)

Tool

Category

Description

Key Parameters

generate_photo

Generation

Generates ultra-photorealistic studio fashion photography and portraits.

prompt, userImage, style, lighting, pose, background, quality

change_background

Editing

Replaces or synthesizes a new studio environment or scene backdrop.

imageUrl, backgroundPrompt, lightingMatch

remove_background

Editing

Extracts subjects cleanly with transparent alpha masking.

imageUrl

upscale_photo

Editing

Restores micro-textures and enhances resolution to 4K studio quality.

imageUrl, scaleFactor

generate_video

Video

Generates motion-captured 4K vertical runway and dance videos.

prompt, referenceVideoUrl, modelEngine, durationSeconds

combine_videos

Video

Stitches multi-angle takes into commercial campaign sequences.

videoUrls, transitionType

generate_production_script

Video

Directs storyboard scenes, kinematic camera paths, and scripts.

concept, targetAudience, durationSeconds

film_studio_skills

Video

Introspects camera kinematics, sensor specs, and lens simulations.

(none)

list_identities

Identity

Lists registered AI model digital twins and facial profiles.

(none)

create_identity

Identity

Enrolls a new facial likeness profile for consistent model generation.

name, faceImageUrl

delete_identity

Identity

Removes an AI identity profile.

identityId

list_photo_packs

Packs

Catalogs 160+ curated photoshoot style packs.

category

search_photo_packs

Packs

Searches style recipes by aesthetic keywords or themes.

query

recommend_photo_pack

Packs

Matches optimal photography packs to target industry or niche.

goal, industry

improve_prompt

Prompts

Converts rough concepts into studio-calibrated prompt directives.

userPrompt, style

suggest_styles

Prompts

Recommends high-converting visual styles for target platforms.

category

generate_content_calendar

Planning

Formulates editorial publishing calendars with photo/video briefs.

niche, frequency, month

generate_caption

Assets

Synthesizes viral captions and hashtag strategies for TikTok, IG, LinkedIn.

imageDescription, platform

resize_image_for_platform

Assets

Re-crops and frames assets for 9:16 vertical, 1:1 square, or 16:9 banner.

imageUrl, platform

export_to_shopify

Connectors

Syncs editorial product imagery directly into Shopify product listings.

imageUrl, productTitle, description

export_to_social

Connectors

Schedules or pushes creative assets to social platforms.

assetUrl, caption, channels

export_to_notion

Connectors

Creates brand shoot entries and production briefs in Notion workspaces.

assetUrl, pageTitle, notes

export_to_fanvue

Connectors

Uploads and manages creator gallery drops on Fanvue.

imageUrl, caption, isPaywalled

remaining_credits

Account

Checks remaining generation credits and quota.

(none)

subscription_status

Account

Returns active plan tier, licensing permissions, and renewal dates.

(none)

list_generations

Workspace

Fetches historical generated assets and studio shoot metadata.

limit, offset

delete_generation

Workspace

Deletes an asset from the studio gallery.

generationId

favorite_generation

Workspace

Favorites, stars, or renames gallery assets.

generationId, name, isFavorite


๐Ÿ“ฆ MCP Resources & Prompts

Resources

  • photoforge://packs โ€” Complete catalog of 160+ photoshoot packs with prompts and categories.

  • photoforge://styles โ€” Studio lighting presets (Softbox, Golden Hour, Moody, Flash).

  • photoforge://user/history โ€” Authenticated user's recent studio generations and metadata.

  • photoforge://user/identities โ€” Registered facial likeness models and digital twins.

Prompts

  • linkedin_executive_headshot โ€” 85mm f/1.4 studio portrait for executive profiles.

  • luxury_travel_editorial โ€” High-fashion travel and destination photography.

  • swaptok_video_clone โ€” Dynamic 9:16 vertical video motion clone.

  • ecommerce_product_shoot โ€” Commercial product advertising photography.


๐Ÿงช Testing with MCP Inspector

Test the server locally in seconds:

npx @modelcontextprotocol/inspector node ./index.js

๐Ÿ“„ License

MIT License. See LICENSE for details.

Available Tools

28 tools
change_backgroundC

Swap or generate a new studio background for an existing image.

NameRequiredDescriptionDefault
imageUrlYesSource photo URL to modify background.
lightingMatchNoWhether to match subject lighting to background.
backgroundPromptYesDescription of the new background scene.

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description carries the full burden. It does not say whether this consumes credits, whether it is synchronous or async, whether the original image is preserved, or what the result contains โ€” all material for an image-generation mutation.

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?

A single front-loaded sentence with zero filler, appropriately sized for a simple three-parameter tool. The only slight weakness is that 'swap or generate' leaves the two modes undifferentiated.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No annotations and no output schema exist, so the description is the only place to learn behavioral facts, yet it omits return value, cost, and async behavior. Parameter documentation is complete, but the surrounding context an agent needs is missing.

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%, with all three parameters documented including the lightingMatch default. The description adds no additional meaning beyond the schema, so the baseline 3 applies.

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 ('Swap or generate') and resource ('studio background') scoped to 'an existing image', which is clearly distinct from siblings like remove_background or generate_photo. It does not name those siblings or explain the boundary, but the operation itself is unambiguous.

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 phrase 'for an existing image' weakly implies a precondition, but there is no explicit guidance on when to pick this over generate_photo, remove_background, or upscale_photo, nor any exclusion criteria. An agent must infer the routing decision entirely.

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

combine_videosC

Stitch and combine multiple video clips into a scene sequence.

NameRequiredDescriptionDefault
videoUrlsYesList of video URLs to combine.
transitionTypeNoTransition style between scenes.fade

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description bears full responsibility for behavioral disclosure. It implies creation of a new video but does not state whether it requires specific permissions, how clips are ordered, whether it overwrites anything, or what the output looks like. These gaps are significant for a mutation tool.

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?

A single sentence that is front-loaded with the core action and resource, with no wasted words. It efficiently communicates the tool's purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and output schema, the description should provide more behavioral context. It doesn't explain how clips are ordered, whether the operation is reversible, or what the result is, leaving the agent with insufficient information to call it confidently.

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 the parameters are already documented. The description adds no extra meaning about videoUrls ordering or transitionType behavior beyond the schema, so baseline 3 is appropriate.

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?

States a specific verb ('stitch and combine') and resource ('multiple video clips'), and the outcome ('scene sequence'). It is clear what the tool does, though it doesn't explicitly differentiate from a sibling like generate_video, which might be confused for video creation.

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?

No explicit when-to-use or when-not-to-use guidance, no alternatives named, and no prerequisites. The description only implies usage by stating the action, leaving the agent to infer the context.

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

create_identityC

Create a new digital twin identity profile.

NameRequiredDescriptionDefault
nameYesName of identity.
faceImageUrlYesHigh-res clear frontal face image URL.

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden and discloses almost nothing: not whether creating an identity consumes credits, whether the operation is idempotent or fails on duplicate names, whether the face image is validated or moderated, or whether creation is immediate. For a mutation that likely has cost and account-level effects, this is a significant gap.

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?

A single efficient sentence with no filler or redundancy. It is appropriately sized, though it is under-informative rather than over-stuffed, so brevity here reflects thinness as much as discipline.

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?

For a low-complexity two-parameter tool with complete schema coverage and no output schema, the definition is minimally viable. It still leaves the agent guessing about the returned identity identifier, credit cost, and failure modes, which matter because other tools consume identities.

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%, with both 'name' and 'faceImageUrl' documented in the input schema, so the schema does the heavy lifting. The description adds no extra meaning about format, constraints, or how the face URL is used, which matches the baseline for fully-covered schemas.

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 ('Create a new digital twin identity profile'), which clearly separates it from list_identities and delete_identity in the sibling set. It does not, however, explicitly name siblings or clarify what an 'identity' resource is used for downstream.

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?

There is no guidance on when to create an identity versus reuse an existing one (e.g., call list_identities first), no prerequisites, and no mention of alternatives. The agent must infer the workflow from sibling names alone.

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

delete_generationC

Delete an image generation from the studio gallery.

NameRequiredDescriptionDefault
generationIdYesID of the generation to delete.

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description carries the full behavioral burden and discloses almost nothing: it does not say whether deletion is permanent or reversible, whether the image can be recovered, whether credits are refunded, or what happens on an invalid ID. 'Delete' implies destruction, but nothing beyond that implication is stated.

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?

One short sentence, front-loaded with the action verb and with no filler. It is efficiently sized, though the space saved is not reinvested in any useful behavioral detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a destructive mutation with zero annotation coverage and no output schema, yet the description omits irreversibility, recovery options, and error behavior. For a delete tool, that leaves substantial gaps an agent needs filled before calling it.

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% and there is a single required parameter already documented as 'ID of the generation to delete.' The description adds no format hints, sourcing hints (e.g., obtain from list_generations), or constraints, so baseline 3 applies.

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?

States a specific verb ('Delete') and resource ('an image generation from the studio gallery'), which is unambiguous and clearly distinct from siblings like favorite_generation or list_generations. It stops short of naming the relevant siblings or explaining scope, but the purpose itself is clear.

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 versus list_generations/favorite_generation, no prerequisite confirmation step, and no note about when deletion should be avoided. An agent must infer the entire usage context.

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

delete_identityC

Delete a digital twin identity.

NameRequiredDescriptionDefault
identityIdYesIdentity ID to remove.

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden, yet it only says 'delete'. It does not disclose irreversibility, whether associated generations or assets are removed, or whether confirmation/permissions are required โ€” critical gaps for a destructive mutation.

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?

One front-loaded sentence with zero waste. Brevity here reflects an efficient definition rather than padding, though it could afford one more sentence of warning without bloat.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a destructive tool with no annotations and no output schema, the description should cover irreversibility, cascading effects on related resources, and any confirmation requirement. None of that is present, leaving an agent unable to call it safely.

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% and the single identityId parameter is documented as 'Identity ID to remove', so the schema already does the work. The description adds nothing beyond it, which is the baseline 3 case.

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?

States a specific verb+resource pair ('Delete a digital twin identity') that an agent can distinguish from list_identities and create_identity. It does not explicitly contrast with siblings like delete_generation, but the resource is unambiguous.

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?

No guidance on when to use this versus list_identities/create_identity, no prerequisites (e.g., ownership, confirmation), and no stated alternatives. The agent must infer everything about invocation context.

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

export_to_fanvueC

Export and publish AI creator assets to Fanvue.

NameRequiredDescriptionDefault
captionNoPost caption.
imageUrlYesImage asset URL.
isPaywalledNoWhether the post requires unlock.

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden. It says the tool publishes, implying a write/external side effect, but does not disclose whether posting is immediate or queued, whether it requires authentication, what happens on failure, or whether the action is reversible.

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 a single front-loaded sentence with no filler. It is efficient, though the brevity leaves important behavioral and usage details unstated rather than merely avoiding verbosity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation-style export/publish tool with no annotations and no output schema, the description is thin. It does not explain what success looks like, what is created on Fanvue, or how errors/authentication are handled, leaving the agent with insufficient context to invoke it confidently.

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 all three parameters are already documented in the input schema. The description adds no additional meaning about imageUrl, caption, or isPaywalled beyond what the schema provides, so the baseline 3 is appropriate.

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 names a specific action pair (export and publish) and a specific destination (Fanvue), which distinguishes it from sibling export tools such as export_to_shopify and export_to_social. It is clear about what the tool does, though it could be sharper about the asset types and whether publishing is immediate.

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?

It does not say when to choose this tool over export_to_social or export_to_shopify, nor does it mention prerequisites such as connected Fanvue accounts, required permissions, or whether the asset must already exist. Usage is only implied by the destination name.

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

export_to_notionB

Create a fashion shoot log or marketing brief in Notion.

NameRequiredDescriptionDefault
notesNoProduction notes.
assetUrlYesMedia asset URL.
pageTitleYesNotion page title.

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden. It states that a Notion page is created, but does not disclose permissions, side effects, failure behavior, or what is returned after creation.

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 front-loaded sentence with no wasted words. It is appropriately sized for a short tool definition.

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 input schema fully documents the parameters, which helps completeness. However, for a mutation tool with no annotations and no output schema, the description omits behavioral details such as authentication needs, side effects, and result shape.

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 all three parameters are already documented in the input schema. The description adds no parameter-specific meaning beyond the schema, which is acceptable given full schema coverage.

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 names a specific verb and target platform: create a fashion shoot log or marketing brief in Notion. It is clear what kind of artifact is produced, though it does not explicitly distinguish this from sibling export tools such as export_to_shopify or export_to_social.

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 explicit guidance on when to choose this tool instead of alternatives. It implies a Notion export use case but does not mention sibling tools or conditions that select this destination.

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

export_to_shopifyB

Export AI fashion and product photos directly to Shopify product listings.

NameRequiredDescriptionDefault
imageUrlYesImage URL to export.
descriptionNoProduct description.
productTitleYesProduct title in Shopify.

TDQS

B3.2/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It implies an external write operation to Shopify but does not state whether it creates a new product listing, a draft, or updates an existing one, nor does it mention authentication, permissions, or side effects.

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 efficient sentence with the action and destination front-loaded. There is no redundant or filler language.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool that exports to an external platform with no annotations and no output schema, the description is too sparse. It omits whether the tool creates or updates listings, required Shopify setup, image URL accessibility constraints, and what the operation returns.

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 all three parameters are already documented in the input schema. The description adds no additional meaning about image URL requirements, title formatting, or how the optional description field is used beyond what the schema provides. 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?

The description states a specific verb and resource: exporting AI fashion/product photos to Shopify product listings. It distinguishes the tool from sibling exporters like export_to_social, export_to_notion, and export_to_fanvue by naming the destination platform explicitly.

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 says what the tool does but gives no guidance on when to choose it versus the other export tools, nor does it mention prerequisites such as connecting a Shopify account. The agent is left to infer that Shopify is the destination, but not when this tool is appropriate.

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

export_to_socialC

Export and schedule photos and videos to social platforms.

NameRequiredDescriptionDefault
captionNoPost caption.
assetUrlYesMedia asset URL.
channelsNoTarget social platforms.

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. It says 'export and schedule' but never states whether the export happens immediately, what a scheduled post requires, whether authentication on the target platforms is needed, whether operations are reversible, or how failures on one channel are reported. For an external, side-effecting publishing tool this is a substantial gap.

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?

A single front-loaded sentence with the verb and resource up front and no wasted words. It is efficient, though brevity here comes at the cost of needed behavioral detail rather than being purely a virtue.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a publishing tool with no annotations, no output schema and an unenumerated free-text channels array, the description should say which platform values are accepted and what happens on schedule vs immediate export. None of that is present, so the agent lacks what it needs to call the tool confidently.

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% (caption, assetUrl, channels), so the schema already documents all three parameters and the baseline is 3. The description adds no syntax or constraint detail, and notably implies scheduling although no schedule-time parameter exists, which could mislead an agent about what it must supply.

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 names a concrete verb pair (export/schedule) and the resource (photos and videos) plus the destination class (social platforms), so the agent can tell it apart from the Shopify, Notion and Fanvue exporters at a high level. It does not say which social platforms are supported or how this differs from export_to_fanvue, which is itself a social platform, leaving the boundary slightly fuzzy.

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?

There is no statement of when to use this tool versus export_to_fanvue or the other export siblings, no prerequisites, and no exclusions. The agent must infer from the tool name that this is the multi-platform social path.

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

favorite_generationC

Toggle favorite status or rename an image generation.

NameRequiredDescriptionDefault
nameNoOptional new name.
isFavoriteNoFavorite flag.
generationIdYesID of the generation.

TDQS

C2.9/5.0
Behavior2/5

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

No annotations exist, so the description carries the full burden and falls short. It doesn't disclose that 'toggle' is state-flipping (calling twice restores the original state), whether passing isFavorite explicitly sets rather than toggles the flag, whether renaming requires the favorite field to be omitted, or what the call returns.

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?

A single front-loaded sentence with zero waste, well sized for a three-parameter tool. The compressed 'or' wording is efficient but contributes to the mode-selection ambiguity noted elsewhere.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

A mutation tool with no annotations and no output schema needs the description to explain operation modes, toggle semantics, and the effect of the response. None of that is present, so an agent must guess how the two optional parameters interact.

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 all three parameters are documented in the schema itself, which sets the baseline at 3. The description only loosely maps 'rename' to the name field and 'favorite' to isFavorite, adding no format, length, or uniqueness constraints beyond the schema.

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 names two concrete operations (toggle favorite, rename) on a concrete resource (an image generation), so an agent can tell what it does. It doesn't differentiate from siblings such as list_generations or delete_generation, though the name itself is fairly specific.

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?

There is no guidance on when to use this versus alternatives, nor on how to choose between the two modes it advertises. The 'or' hints at either a favorite toggle or a rename, but nothing says whether both fields can be set in one call or what happens if neither optional field is supplied.

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

film_studio_skillsB

List camera kinematics, motion capture specs, and lens simulations.

NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations, the description carries the full burden of behavioral disclosure. It implies a read-only list operation but does not confirm it, nor does it describe return format, pagination, authentication requirements, or rate limits. For a tool with zero parameters and no output schema, more context is needed.

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, front-loaded sentence that wastes no words. It efficiently communicates the core action and content.

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 simplicity of a zero-parameter list tool, the description is adequate for basic understanding but lacks details about what the returned data looks like or how it might be used. Without annotations or an output schema, more context about the nature of the skills (e.g., static reference vs. dynamic) would improve completeness.

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 tool has zero parameters, so the baseline score is 4. The description does not need to explain parameters, and it appropriately focuses on the resources being listed.

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 'List' and three resource categories (camera kinematics, motion capture specs, lens simulations), making the tool's purpose clear. However, it does not differentiate from sibling tools, which are mostly generative or export actions, leaving the agent to infer that this is a reference lookup.

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?

There is no guidance on when to use this tool versus alternatives, no prerequisites, and no exclusions. The description merely states what it lists, leaving the agent to guess the appropriate context.

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

generate_captionB

Generate viral captions and hashtags tailored for Instagram, TikTok, or LinkedIn.

NameRequiredDescriptionDefault
platformNoPlatform.instagram
imageDescriptionYesDescription of the image.

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations, the description carries the full behavioral burden. It says what is generated but omits whether credits are consumed, whether output is saved or listed in generations, moderation constraints, or any rate limits.

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?

A single front-loaded sentence with no wasted words. It states the action, output, and platform tailoring efficiently.

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?

For a low-complexity two-parameter tool, the description is minimally sufficient to call correctly. However, it lacks return-format guidance (no output schema), misses the Twitter platform present in the schema, and does not address credit or persistence behavior.

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 the baseline is 3. The description adds 'tailored for Instagram, TikTok, or LinkedIn' but does not explain the parameters beyond the schema, and notably omits 'twitter' even though the enum supports it.

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 clear verb and resource ('Generate viral captions and hashtags') and adds platform tailoring. It is distinguishable from siblings like generate_production_script or generate_content_calendar, though it does not explicitly name alternatives.

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?

It gives no guidance on when to use this tool versus alternatives such as improve_prompt or generate_content_calendar, nor any prerequisites or exclusions. The platform list implies context but does not explain selection criteria.

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

generate_content_calendarB

Generate an editorial photo and video publishing calendar with prompt briefs.

NameRequiredDescriptionDefault
monthNoTarget month.
nicheYesBrand niche.
frequencyNoPosts frequency.3_per_week

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations, the description carries the full behavioral burden but only states the output artifact. It does not disclose whether this consumes credits, whether generation is destructive or reversible, authentication needs, rate limits, or what the response looks like beyond 'prompt briefs'.

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?

A single sentence with zero waste, front-loading the verb and the generated artifact. It is appropriately sized for the information it conveys.

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?

There is no output schema and no annotations, so the description should do more to explain return values and operational constraints. It clearly names the artifact but leaves an agent without enough context about format, cost, or limitations for a generation 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?

Schema description coverage is 100%, so the schema already documents month, niche, and frequency. The description adds no parameter-specific meaning beyond implying that editorial calendars involve those concepts, which is the expected baseline when the schema does the heavy lifting.

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 uses a specific verb ('Generate') and resource ('editorial photo and video publishing calendar with prompt briefs'), making the tool's purpose clear. It does not explicitly differentiate itself from siblings, but no sibling appears to generate a content calendar, so the gap is minor.

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 provides no guidance on when to use this tool versus alternatives, no prerequisites, and no exclusions. An agent must infer usage entirely from the tool name and the brief purpose statement.

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

generate_photoC

Generate a high-quality realistic AI photo. Consumes 3 credits.

NameRequiredDescriptionDefault
poseNoPose styles (e.g. front, side-profile, smiling, etc.)
styleNoVisual style presets (e.g. headshot, linkedin, casual, etc.)
promptYesThe detailed text prompt describing the photo to generate.
qualityNoQuality preset.standard
lightingNoLighting styles (e.g. studio, soft, golden-hour, etc.)
providerNoAI Model provider (seedream-5-pro, fal-ai-grok, flux-dev).seedream-5-pro
userImageNoOptional user face reference image (Base64 data URL or remote URL).
backgroundNoBackground description (e.g. professional office, outdoor park, etc.)

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries full behavioral burden. It usefully discloses the 3-credit cost, but says nothing about whether the result is saved, how long generation takes, or what happens on failure.

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?

Two short sentences with no filler, and the core purpose is front-loaded. For an eight-parameter tool with no annotations, however, the treatment is arguably too terse rather than optimally sized.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With eight parameters, no annotations, and no output schema, the description is insufficiently complete. It covers purpose and credit cost but leaves out return behavior, persistence, and choice among related tools.

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 all eight parameters are already described in the input schema. The description adds no parameter-specific meaning beyond the schema, which is the baseline expectation when coverage is complete.

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?

Uses a specific verb ("Generate") and resource ("AI photo") with an added quality adjective. It does not differentiate from nearby siblings like generate_video, upscale_photo, or change_background, but the core purpose is unmistakable.

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 conditions for when to use this tool versus alternatives such as upscale_photo, change_background, or generate_video. An agent must infer usage from the name alone.

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

generate_production_scriptC

Generate a full commercial video production script and storyboard sequence.

NameRequiredDescriptionDefault
conceptYesCampaign or video concept.
targetAudienceNoTarget audience and platform.
durationSecondsNoTotal duration in seconds.

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full disclosure burden, yet it says nothing about credit consumption, whether generation is synchronous or long-running, or what form the 'storyboard sequence' takes (text, images, both). For a generative tool in a suite that tracks remaining_credits, this is a meaningful gap.

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?

A single well-formed sentence with no waste and the deliverable front-loaded. It is efficient, though its brevity is part of the transparency shortfall rather than a virtue in itself.

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?

With no output schema and no annotations, the description should clarify the return shape and cost implications of a generation call. It confirms the two artifacts produced but leaves format, length expectations, and consumption behavior unstated.

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 all three parameters are already documented, establishing the baseline of 3. The description adds no extra meaning such as valid duration ranges or how targetAudience influences the script.

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?

Specific verb ('Generate') plus a concrete dual deliverable ('production script and storyboard sequence'), scoped to commercial video. It clearly differs from siblings like generate_video or generate_caption, though it never explicitly names those alternatives.

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?

No indication of when to use this versus generate_video or generate_caption, no prerequisites, and no exclusions. The agent must infer the appropriate context from the name alone.

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

generate_videoC

Generate AI mocap or cinematic video from prompt or dance/runway reference.

NameRequiredDescriptionDefault
promptYesVisual action and scene description.
modelEngineNoVideo engine.seedance-2.5
durationSecondsNoVideo length in seconds.
referenceVideoUrlNoOptional motion transfer reference video URL.

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. It says nothing about credit consumption, expected generation latency, async job/polling behavior, or whether reference-based generation requires a specific model engine โ€” all critical for a costly video-generation call. Only the existence of two generation modes is disclosed.

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?

A single front-loaded sentence with no filler; the verb and modes come first. It is efficient, though the compactness contributes to the missing usage and behavioral detail rather than offsetting it.

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?

For a 4-parameter creation tool with no annotations and no output schema, the description should at least indicate what comes back (job id, URL) and that generation is likely costly/asynchronous. It covers the core capability but leaves the agent under-informed about post-call behavior.

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 the schema already documents prompt, modelEngine, durationSeconds, and referenceVideoUrl. The description adds only a light hint that the reference input maps to dance/runway motion transfer, which is marginal value beyond the schema's own 'motion transfer reference video URL' text.

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?

States a specific verb and resource ('Generate ... video') and names two distinct output modes (AI mocap vs cinematic) plus two input paths (prompt or dance/runway reference). It does not explicitly differentiate itself from the nearest sibling, combine_videos, leaving a small ambiguity about which tool to pick for video work.

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 when-to-use or when-not-to-use guidance, no prerequisites, and names no alternatives. An agent must infer that referenceVideoUrl implies motion transfer and that combine_videos is the tool for stitching existing clips.

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

improve_promptC

Improve a basic user prompt into a high-converting, marketing-grade AI prompt.

NameRequiredDescriptionDefault
styleNoVisual style category.fashion
userPromptYesSimple prompt to enhance.

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description carries the full burden of behavioral disclosure. It conveys only the transformation intent and says nothing about cost, permissions, determinism, return format, or how the "style" parameter affects the outputโ€”significant gaps for a generation tool.

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 single sentence is front-loaded and wastes no words. It is appropriately terse, though its brevity borders on under-specification rather than optimal conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema and no annotations, yet the description does not explain what the improved prompt looks like, whether credits are consumed, or how style interacts with userPrompt. For a generation tool with two parameters, this leaves the agent without the context needed to invoke it confidently.

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 parameters are already documented, establishing a baseline of 3. The description adds no extra meaning about how userPrompt is transformed or how the style category (default "fashion") conditions the result, which would have been valuable context.

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 ("improve") and resource ("user prompt") plus a clear outcome ("high-converting, marketing-grade AI prompt"), so an agent knows exactly what transformation is performed. It does not differentiate itself from siblings such as suggest_styles or generate_caption, so it stops short of a 5.

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?

There is no guidance on when to use this tool versus alternatives like suggest_styles or generate_caption, and no exclusions or prerequisites are given. Usage is only implied by the verb "improve."

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

list_generationsC

Retrieve recent AI generations created in the studio.

NameRequiredDescriptionDefault
limitNoNumber of generations to return.
offsetNoPagination offset.

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description carries the full burden, yet it never states that this is a read-only operation, whether results are scoped to the calling user/workspace, what 'recent' means, or what the response contains. The implicit ordering by recency is the only behavioral detail, and even that is only suggested.

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?

A single front-loaded sentence with no filler or redundancy. It is efficient, though the brevity edges into under-specification rather than true crispness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a list tool with no annotations and no output schema, the description omits the return shape, default ordering, recency window, and result scoping. An agent can guess limit/offset semantics from the schema, but little else is established.

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 limit and offset are already documented; the description only contributes the notion of recency. Baseline 3 applies since the schema does the semantic heavy lifting and the description adds no syntax or ordering caveats.

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?

States a specific verb ('Retrieve') and resource ('AI generations'), scoped to 'recent' ones in the studio. It does not name or distinguish itself from siblings such as list_photo_packs or list_identities, so the agent must infer the boundary from the resource noun alone.

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?

No guidance on when to use this versus other listing or generation tools, no prerequisites, and no exclusions. The word 'recent' loosely hints at a time window but never defines it or points to any alternative for older or filtered results.

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

list_identitiesB

List user digital twins and facial identity profiles.

NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations, the description carries the full burden and does not state that this is a safe read-only listing, whether results are scoped to the authenticated user or workspace, or how many identities are typically returned. It only conveys the resource type, leaving the mutation/safety profile implicit.

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?

A single front-loaded sentence that defines the resource with zero filler. Nothing is padded and the key noun is explained immediately.

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?

For a zero-parameter list tool with no output schema, the description is minimally sufficient but leaves open what each identity record contains (id, name, thumbnails) and whether the list is paginated or complete, which an agent would want before chaining into create_identity or delete_identity.

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 tool takes zero parameters, so the baseline is 4; there is nothing for the description to disambiguate in the schema.

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?

States a specific verb+resource and defines what an 'identity' is (digital twin and facial identity profile), which is genuinely clarifying given the ambiguous noun. It does not explicitly contrast with list_photo_packs or the create/delete_identity siblings, so it stops short of a 5.

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?

There is no guidance on when to call this versus siblings such as list_photo_packs or list_generations, and no note on whether it is a prerequisite for create_identity/delete_identity workflows. Usage is only inferable from the name.

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

list_photo_packsA

List all available photo packs, categories, prices, and visual prompts.

NameRequiredDescriptionDefault
categoryNoOptional category filter.

TDQS

A3.5/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full behavioral burden. 'List' implies a read-only operation and the description names returned fields, but it does not state pagination, result limits, or whether all packs are always returned.

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?

A single front-loaded sentence with zero waste. It immediately tells the agent what the tool lists and what information comes back.

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?

For a simple one-parameter read tool with no output schema, the description is adequate but thin. It names returned fields, but it omits filtering behavior and any guidance about browsing versus searching.

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 the optional 'category' parameter is already documented in the schema. The description mentions categories only as returned data and does not add filtering semantics beyond what the schema provides.

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?

States a specific verb and resource: 'List all available photo packs' and enumerates returned fields (categories, prices, visual prompts). It does not distinguish itself from the sibling 'search_photo_packs', so it stops short of a 5.

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 phrase 'List all available' implies browsing/listing usage, but it gives no explicit when-to-use guidance or exclusions. It never mentions when to use this instead of 'search_photo_packs' or 'recommend_photo_pack'.

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

recommend_photo_packB

Recommend the best photo packs for a given user objective or niche.

NameRequiredDescriptionDefault
goalYesTarget goal (e.g. executive presence, travel lifestyle, dating).
industryNoTarget industry or platform.

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden. It does not state whether this is a read-only operation, how many recommendations are returned, whether results are ranked or explained, whether it requires an existing identity or photo pack set, or how it behaves when no packs match the goal.

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?

A single sentence with no wasted words, front-loaded with the verb and resource. It is efficient, though the brevity contributes to the missing usage and behavioral context.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a recommendation tool with no annotations, no output schema, and no sibling differentiation, the description is too thin. An agent cannot tell what a recommendation looks like, how it differs from search_photo_packs, or what prerequisites exist before calling it.

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 the schema already documents both parameters, and the baseline is 3. The description adds the framing that goal maps to a 'user objective or niche,' but it does not explain how industry/platform interacts with goal or what values are expected beyond the schema examples.

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?

States a specific verb and resource ('recommend the best photo packs') and a scope ('for a given user objective or niche'), so the core action is unambiguous. It does not distinguish itself from the sibling tools list_photo_packs and search_photo_packs, leaving the agent to infer whether this is retrieval or ranking.

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 phrase 'for a given user objective or niche' implicitly signals that this tool is for goal-driven selection rather than browsing or keyword search, which weakly differentiates it from search_photo_packs. However, there is no explicit when-to-use/when-not-to-use guidance or naming of the alternatives.

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

remaining_creditsB

Retrieve the users current remaining credit balance.

NameRequiredDescriptionDefault

No parameters

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden. It implies a read operation but does not confirm read-only safety, authentication requirements, rate limits, or whether the balance is live or cached.

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 a single, front-loaded sentence with no wasted words. It is appropriately sized for a simple zero-parameter tool.

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?

For a simple no-argument, read-style tool, the description is minimally adequate. However, with no output schema and no annotations, it should say more about what the returned balance represents and whether it is a number, string, or currency amount.

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 tool has zero parameters, so per the rubric the baseline is 4. The description adds no parameter meaning because none exists to describe.

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 clear verb ('Retrieve') and resource ('remaining credit balance'), so an agent can understand what the tool returns. It does not differentiate from the sibling `subscription_status`, which may also expose account billing information, so it stops short of a 5.

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?

There is no explicit guidance about when to use this tool versus `subscription_status` or other account-related siblings. Usage is only implied by the phrase 'remaining credit balance'.

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

remove_backgroundA

Remove background from an image leaving transparent alpha channel.

NameRequiredDescriptionDefault
imageUrlYesSource photo URL.

TDQS

A3.5/5.0
Behavior3/5

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

With no annotations, the description carries the full disclosure burden. It does add one useful behavioral fact โ€” the output retains a transparent alpha channel โ€” but it says nothing about whether the source image is mutated or a new generation is produced, whether credits are consumed, or any format/size constraints.

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?

One compact sentence with zero waste, front-loading the action and ending with the observable result. Nothing could be removed without losing information.

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?

For a single-parameter tool this is close to adequate, but with no annotations and no output schema the agent still doesn't know the return shape (image URL? new generation ID?) or whether the operation costs credits or alters the original โ€” details that matter in a credits/generations-oriented toolset.

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 the single parameter (imageUrl, 'Source photo URL') is fully documented there. The description adds no format, dimension, or accepted-source detail beyond the schema, so baseline 3 applies.

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?

States a specific verb and resource (remove background from an image) plus the resulting artifact (transparent alpha channel). However, it does not distinguish itself from the sibling tool change_background, which an agent could easily confuse with this one.

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 purpose implies when to use it, but there is no explicit guidance about when to prefer it over change_background, no prerequisites, and no note on how it relates to the generation workflow that the sibling tools (list_generations, favorite_generation) suggest.

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

resize_image_for_platformB

Resize and re-crop an image for specific social media aspect ratios.

NameRequiredDescriptionDefault
imageUrlYesSource image URL.
platformYesTarget platform aspect ratio.

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. It does not say whether the original image is preserved or overwritten, whether the operation costs credits, whether the result is a new generation stored in the library, or what happens when the source aspect ratio already matches the target.

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?

A single front-loaded sentence with no filler. It is efficient, though the brevity comes at the cost of the behavioral and usage detail noted elsewhere rather than being a model of tight completeness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with zero annotations and no output schema, the description should say what comes back (a URL, a generation ID, a library item) and whether the source is modified. None of that is covered, leaving the agent guessing about the side effects of 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?

Schema coverage is 100%, including a fully enumerated platform list, so the schema already documents both parameters. The description adds only the framing that the platform maps to an aspect-ratio re-crop, which is helpful but not more than the baseline.

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?

States a specific verb pair ('resize and re-crop') and a specific resource ('an image') with a stated goal ('specific social media aspect ratios'). It is clearly distinguishable from siblings like export_to_social or upscale_photo, though it never explicitly names those neighbors.

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 purpose implies when to use it, but there is no explicit when/when-not guidance, no mention of how it relates to export_to_social (does resizing happen as part of export?), and no indication of prerequisites such as the image needing to already exist in the account.

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

search_photo_packsC

Search for photo packs matching a query string.

NameRequiredDescriptionDefault
queryYesSearch keywords.

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. It does not disclose whether results are ranked by relevance, whether there is a result limit or pagination, or whether the search is fuzzy or exact โ€” all things an agent needs to interpret the response for a search tool.

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?

A single front-loaded sentence with no filler. It is efficiently sized for the tool's simplicity, though it is arguably under-specified rather than optimally concise.

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?

For a one-parameter, no-output-schema tool this covers the essentials of what the tool does. However, with no annotations and search semantics undocumented (ranking, limits, matching behavior), an agent lacks enough to interpret or trust results fully.

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 the single parameter is documented as "Search keywords." The description adds no syntax, matching behavior, or format detail beyond that, so the baseline 3 applies.

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 uses a specific verb ("Search") and resource ("photo packs") with a qualifying condition ("matching a query string"), so the agent knows it is a keyword-driven lookup. It does not explicitly distinguish itself from the sibling list_photo_packs or recommend_photo_pack, which would be the natural confusion points.

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?

There is no guidance on when to use this instead of list_photo_packs (browse all) or recommend_photo_pack (get suggestions). The agent must infer that searching is for a known keyword and listing is for enumeration, with nothing stated.

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

subscription_statusA

Retrieve the active subscription status and renewal date for the user.

NameRequiredDescriptionDefault

No parameters

TDQS

A3.7/5.0
Behavior3/5

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

With no annotations, the description carries the full behavioral burden, and it does convey the two return facts (status and renewal date) plus per-user scoping. It is silent on what happens when the user has no active subscription (empty result vs. error) and on auth requirements, which matters for an account-state lookup.

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?

A single front-loaded sentence that states the resource and the returned fields, with no filler. There is nothing an agent would want removed.

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 trivial zero-parameter read tool with no output schema, naming the two returned fields (status and renewal date) is close to sufficient. The main residual gap is the inactive/no-subscription case, which an agent might hit and cannot predict from this text.

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 tool takes no parameters, so there is nothing for the description to disambiguate beyond confirming the call is implicitly scoped to the current user. That confirmation is present, so the baseline for a zero-parameter tool applies cleanly.

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 pairs a specific verb ("Retrieve") with a specific resource ("active subscription status and renewal date"), so the agent knows exactly what it gets back. It does not explicitly contrast itself with the neighbouring remaining_credits tool, which is the closest sibling and would otherwise be a natural point of confusion.

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?

Usage is only implied: the agent can infer it should call this when it needs billing/subscription state, and the zero-parameter schema means there is no wrong way to invoke it. However, there is no stated when-not condition and no pointer to remaining_credits when the caller actually wants credit balance.

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

suggest_stylesC

Suggest popular visual styles and rendering qualities for a prompt type.

NameRequiredDescriptionDefault
categoryYesCategory.

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden, yet it says nothing about whether the call is read-only (only implied by 'suggest'), whether it consumes credits, or what the response contains. For a suggestion tool, knowing the shape of the returned style list is essential and is absent.

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?

A single front-loaded sentence with no filler. It is efficient, though its brevity borders on under-specification rather than tight structure.

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 tool is simple (one enum param, no nested objects), so not much is required, but with no output schema and no annotations the description should at least sketch what a 'suggestion' looks like and whether it feeds into generate_photo or improve_prompt.

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 the baseline is 3, but the schema's own description is only the tautology 'Category.' The description adds the phrase 'for a prompt type', which hints at meaning without explaining how the professional/dating/creator/travel/fashion enum values affect the suggestions.

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?

States a specific verb ('suggest') and resource ('popular visual styles and rendering qualities') scoped to a prompt type. An agent can grasp the intent immediately, though it does not differentiate itself from neighbors like improve_prompt or recommend_photo_pack, and 'prompt type' only loosely matches the schema's 'category' enum.

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?

No guidance on when to call this versus improve_prompt, recommend_photo_pack, or generate_photo, and no prerequisites or sequencing hints. The usage is only inferable from the verb itself.

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

upscale_photoB

AI-upscale photo to 4K resolution with micro-texture restoration.

NameRequiredDescriptionDefault
imageUrlYesSource image URL to upscale.
scaleFactorNoScale multiplier (2 or 4).

TDQS

B3.2/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden. It does disclose the meaningful behavioral outcome (4K upscaling plus micro-texture restoration), which is more than the schema says, but it omits credit consumption, whether the operation is synchronous, and what happens to the source image.

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?

A single front-loaded sentence with the verb and the quality outcome first and zero wasted words. Nothing needs to be trimmed.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a generative mutation tool with no annotations and no output schema, the description is thin: it never says what is returned (a URL? a generation ID?), whether credits are charged, or how '4K' relates to the scaleFactor of 2 or 4 โ€” a tension left unresolved.

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 imageUrl and scaleFactor are fully documented in the schema itself. The description adds no syntax, format, or constraint detail beyond that, so the baseline 3 applies.

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?

Names a specific verb and resource ('AI-upscale photo') and adds a concrete outcome ('4K resolution with micro-texture restoration'). It does not, however, differentiate itself from the sibling resize_image_for_platform, which an agent could plausibly confuse it with.

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?

There is no guidance on when to choose this over resize_image_for_platform, nor any prerequisites such as credit cost or supported input formats. The agent must infer the use case entirely from the name and one descriptive clause.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 28 tool updatesv0.2.0
    • First observedchange_background
    • First observedcombine_videos
    • First observedcreate_identity
    • First observeddelete_generation
    • First observeddelete_identity
    • First observedexport_to_fanvue
    • First observedexport_to_notion
    • First observedexport_to_shopify
    • First observedexport_to_social
    • First observedfavorite_generation
    • First observedfilm_studio_skills
    • First observedgenerate_caption
    • First observedgenerate_content_calendar
    • First observedgenerate_photo
    • First observedgenerate_production_script
    • First observedgenerate_video
    • First observedimprove_prompt
    • First observedlist_generations
    • First observedlist_identities
    • First observedlist_photo_packs
    • First observedrecommend_photo_pack
    • First observedremaining_credits
    • First observedremove_background
    • First observedresize_image_for_platform
    • First observedsearch_photo_packs
    • First observedsubscription_status
    • First observedsuggest_styles
    • First observedupscale_photo

TDQS

B3.1/5.0

Scored across 28 tools

Disambiguation4/5

Most tools target distinct resources or actions, such as generation vs. background editing vs. exporting. A few areas could still be confused, especially recommend_photo_pack versus list_photo_packs/search_photo_packs and the multiple prompt/content helpers, but descriptions generally clarify boundaries.

Naming Consistency4/5

The set is mostly consistent snake_case with verb_noun or verb_to_noun patterns like generate_photo, change_background, and export_to_shopify. Deviations such as remaining_credits, subscription_status, and film_studio_skills are minor but noticeable.

Tool Count2/5

At 28 tools, the surface exceeds the 25+ threshold for being too many under the rubric. The server has broad scope across generation, editing, exports, identities, photo packs, and account management, but the count still feels heavy for an agent to navigate efficiently.

Completeness4/5

Core workflows are well covered: prompt improvement, photo/video generation, image editing, exports, credits/subscription, identities, and photo packs. Minor lifecycle gaps remain, such as no explicit get/update for identities and limited retrieval/update coverage for generations and videos.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers