nanoodle
Server Details
Your saved nanoodle workflow graphs as MCP tools — BYOK or pay per call in Nano (x402)
- Status
- Healthy
- Uptime
- 100.0% over 41 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
- Repository
- nanoodlecom/nanoodle-mcp
- GitHub Stars
- 0
- Server Listing
- nanoodle-mcp
TDQS
Scored across 13 tools
Each tool targets a distinct creative media workflow (e.g., character sprites, product photo editing, postcard generation, song creation). Even the image-generation tools differ by output type and use case (favicon vs. product still vs. postcard vs. UI mockup), so there is no ambiguity.
All tool names use lowercase kebab-case with descriptive compound words (e.g., 'edit-a-photo', 'night-market-postcard', 'talking-avatar'). The pattern is uniform across the set, with no mixing of conventions like camelCase or underscores.
With 13 tools, the server sits comfortably in the well-scoped range. Each tool represents a distinct creative workflow, and none feel redundant or superfluous. The count is appropriate for a media-generation server.
The server covers a broad range of creative media generation: images, videos, audio, and specialized workflows like character sprites and model comparison. Minor gaps exist (e.g., no general-purpose text-to-image tool or video editing), but the curated set handles common use cases well without dead ends.
Available Tools
13 toolscharacter-spritesAInspect
Description → canonical character → separate cutout parts → local rig and animation baking. One text call + two image calls. The companion rig.mjs extracts transparent parts and bakes 32 frames: id… text:Character -> llm:Character designer -> image:Canonical character -> resize:Reference -> edit:Rig parts; returns image + image (muse-image/edit, 1:1) saved to disk (file paths in result). Runs on NanoGPT — $0.05 deposit per call, paid in Nano (XNO) — settles at actual model cost + 20%, change returned; no account needed. Example: Iron Verdict (https://nanoodle.com/examples/iron-verdict/). A playable fighting game built with character-sprites. This graph generates a character reference and parts sheet; the local skill bakes animated sprites, and a coding agent adds combat, gravity and game rules. Agent skill: https://github.com/nanoodlecom/noodle-skills/tree/main/skills/character-sprites
| Name | Required | Description | Default |
|---|---|---|---|
| Character | No | Text; default: "A compact furnace knight with a cracked ivory helmet, narrow glowing amber visor, dark navy armor, a short rust-red s..."; optional | |
| _payment_id | No | Payment id from this tool's previous payment-required response. Phase 3 only: after /x402/watch closes with status paid, call again with the same arguments plus this id to open the RESULTS stream. Do not pass it while payment is still pending — monitor the watch SSE first. | |
| Character_designer | No | System prompt; default: "Write ONE image prompt, maximum 130 words, for a game character reference from the description. Preserve the user des..."; optional |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full responsibility for behavioral disclosure, and it does this thoroughly. It explains the multi-call pipeline, the 32-frame baking process, that outputs are saved to disk with file paths in the result, the NanoGPT payment model with deposit and change returned, and that no account is needed. This is rich behavioral context beyond what the schema reveals.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense but packed with useful information: pipeline, call count, output location, pricing, an example, and a skill link. It is not as tight as it could be, and the 'id…' fragment is confusing, but most sentences earn their place and the core functionality is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no output schema and no annotations, the description is quite complete: it covers the expected result (image + image saved to disk with file paths), the payment workflow, and the local skill integration. Minor gaps remain, such as the exact structure of the returned file paths and the meaning of the truncated diagram label, but the agent has enough context to invoke and interpret the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the input schema already documents the Character, _payment_id, and Character_designer parameters, including defaults and payment flow. The narrative description adds overall pipeline context but does not materially add per-parameter meaning beyond what the schema provides, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: it transforms a text description into a canonical character, separate cutout parts, and local rig/animation baking, generating a character reference and parts sheet. This distinguishes it from image-generation siblings by focusing on character sprites for game development, reinforced by the playable fighting game example.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The tool's purpose is implied through the pipeline description and the Iron Verdict example, so an agent can infer it should be used when game character sprites or animated character assets are needed. However, there is no explicit guidance about when to choose this tool over alternatives or when not to use it, and no sibling exclusions are named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
combine-imagesCInspect
Upload a product, then a setting, to preview placement before a photoshoot. Muse Edit uses both reference images ($0.01/image). Inspect product identity, scale and contact shadows; this is a concep… upload:Product photo -> upload:Setting photo -> text:Placement brief -> edit:Product in setting; returns image (muse-image/edit) saved to disk (file path in result). Runs on NanoGPT — $0.18 deposit per call, paid in Nano (XNO) — settles at actual model cost + 20%, change returned; no account needed; last run $0.075, ~1m 49s. Example: Reviewed sample (https://nanoodle.com/examples/gallery/#combine-images). A bottle and a mug-on-desk source image combined into one plausible scene. The sample includes both inputs; exact product fidelity needs a separate comparison.
| Name | Required | Description | Default |
|---|---|---|---|
| _payment_id | No | Payment id from this tool's previous payment-required response. Phase 3 only: after /x402/watch closes with status paid, call again with the same arguments plus this id to open the RESULTS stream. Do not pass it while payment is still pending — monitor the watch SSE first. | |
| Product_photo | Yes | * required; image — file path or https URL | |
| Setting_photo | Yes | * required; image — file path or https URL | |
| Placement_brief | No | Text; default: "Place the product from image 1 naturally into the setting from image 2. Preserve the product shape, proportions, mate..."; optional |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are absent, so the description carries the burden. It does disclose that the tool 'returns image (muse-image/edit) saved to disk (file path in result)' and references a payment flow, but it does not fully explain side effects, persistence, or error behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely cluttered with irrelevant details including pricing, deposit fees, last run cost, and an example URL. This makes it difficult to parse and detracts from the essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of an output schema, the description provides some crucial context (returns a file path, payment flow). However, the information is buried in noise and not organized, making it less accessible than it should be.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already describes all parameters with 100% coverage. The description adds some context about the workflow (upload product, setting, brief) but does not significantly enhance understanding beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The core purpose is clear: 'Upload a product, then a setting, to preview placement before a photoshoot.' This states a specific action and resource. However, the description is cluttered with pricing and example details that dilute the clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives. It mentions a use case (preview placement before a photoshoot) but does not compare with sibling tools or specify exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
deslopBInspect
Edit a customer notice without losing prices, dates or caveats. Grok drafts; a second model compares the draft with the source; Grok applies the review. Three paid text calls. The review checks wri… text:Your draft -> llm:First rewrite -> join:Source and rewrite -> llm:Fact and clarity review -> join:Source, rewrite and review -> llm:Edited notice; returns text. Runs on NanoGPT — $0.10 deposit per call, paid in Nano (XNO) — settles at actual model cost + 20%, change returned; no account needed; last run $0.0341, ~78s. Example: Reviewed sample (https://nanoodle.com/examples/gallery/#deslop). A repair-booking announcement rewritten in plain language while retaining the supplied facts. Compare the source and result in the sample; this is an editorial workflow, not an authorship detector.
| Name | Required | Description | Default |
|---|---|---|---|
| Your_draft | No | Text; default: "We are thrilled to announce a game-changing improvement to the repair booking experience. Starting 8 September, custo..."; optional | |
| _payment_id | No | Payment id from this tool's previous payment-required response. Phase 3 only: after /x402/watch closes with status paid, call again with the same arguments plus this id to open the RESULTS stream. Do not pass it while payment is still pending — monitor the watch SSE first. | |
| Edited_notice | No | System prompt; default: "Your input contains the original draft, === PASS 1 REWRITE ===, and === EDITORIAL REVIEW ===. Treat these blocks as s..."; optional | |
| First_rewrite | No | System prompt; default: "You rewrite AI-sounding text so it reads like a person wrote it. Output only the rewritten text — no preamble, no not..."; optional | |
| Fact_and_clarity_review | No | System prompt; default: "You are an editorial reviewer. Your input contains the original draft followed by === PASS 1 REWRITE === and its rewr..."; optional |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full transparency burden. It clearly discloses the multi-stage process (draft -> rewrite -> review -> edited), the payment requirements ($0.10 deposit, cost +20%), and that it is 'not an authorship detector'. This is a high level of behavioral disclosure, though the exact payment flow could be clearer.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is verbose and poorly structured, repeating workflow segments ('join:Source and rewrite -> llm:...') and interleaving payment info and examples. It reads more like a stream-of-consciousness specification than a compact, scannable definition, which hurts usability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description gives an overview of the multi-phase process and mentions the output is text, but it omits key context: exact phase sequencing, what each parameter contributes, the meaning of the example URL, and the overall expected input/output contract. Given the complexity, this is incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 100% description coverage, but the descriptions are largely default snippets rather than explanations. Only '_payment_id' receives meaningful context. The roles of 'Edited_notice', 'First_rewrite', and 'Fact_and_clarity_review' as system prompts are not explained beyond their defaults, leaving the agent to guess their function in the workflow.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Edit') and resource ('customer notice') and clearly distinguishes this text-editing tool from the image-focused sibling tools. However, the purpose is somewhat muddled by the workflow description and non-essential payment details, so it is not maximally crisp.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies it is used for multi-step editorial rewrites but never explicitly states when to choose this tool over alternatives, nor provides exclusion criteria. No sibling comparison is mentioned, leaving the agent to infer the tool's niche.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
edit-a-photoAInspect
Upload a product photo and make a clean catalog image. Muse Edit preserves the product while changing the background ($0.01/image). Check logos, small details and color against the original before … upload:Product photo -> text:Edit request -> edit:Clean product photo; returns image (muse-image/edit) saved to disk (file path in result). Runs on NanoGPT — $0.18 deposit per call, paid in Nano (XNO) — settles at actual model cost + 20%, change returned; no account needed; last run $0.075, ~80s. Example: Reviewed sample (https://nanoodle.com/examples/gallery/#edit-a-photo). A bottle image edit with its source and instruction documented in the sample. The shape remains recognizable; compare any markings that must survive an edit of your own product.
| Name | Required | Description | Default |
|---|---|---|---|
| _payment_id | No | Payment id from this tool's previous payment-required response. Phase 3 only: after /x402/watch closes with status paid, call again with the same arguments plus this id to open the RESULTS stream. Do not pass it while payment is still pending — monitor the watch SSE first. | |
| Edit_request | No | Text; default: "Prepare this product photo for a catalog. Preserve the exact product shape, color, materials, markings and visible te..."; optional | |
| Product_photo | Yes | * required; image — file path or https URL |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses the payment flow, the two-phase call pattern (pending vs results), the return of a file path, and the output being saved to disk. It does not mention any destructive side effects, which is reasonable for an image-editing tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is rambling and repetitive, with pricing details, deposit amounts, and the example sentence appearing twice. It mixes core functionality with payment mechanics and example text in a single unstructured block, making it harder to parse quickly. A clearer separation of purpose, pricing, and example would improve readability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the essential operational context: what the tool does, what it costs, how payment works (including the two-phase call), what the output is (saved image with file path), and an example. It does not provide an output schema, but the return behavior is described sufficiently for an agent to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All three parameters have descriptive comments that go beyond simple naming: Product_photo specifies required file path or URL, Edit_request includes a default instruction, and _payment_id explains the phase-3 behavior and warnings. The schema coverage is 100% and the descriptions add meaningful context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's verb and resource: 'Upload a product photo and make a clean catalog image' with the specific behavior of preserving the product while changing the background. Despite surrounding payment details, the core purpose is unmistakable and distinct from sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Some usage context is implied by the catalog-image use case and the advisory to 'check logos, small details and color against the original', but there is no explicit guidance on when to choose this tool over sibling tools or when not to use it. The description focuses more on payment mechanics than on selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
faviconAInspect
Turn a brand brief into a square favicon concept. GLM Flash condenses the brief; Muse renders one image (image step $0.01, plus text). Inspect at 16px; export or convert to favicon sizes separately. text:Brand -> llm:Icon prompt -> image:Favicon; returns image (muse-image/text-to-image, 1:1) saved to disk (file path in result). Runs on NanoGPT — $0.03 deposit per call, paid in Nano (XNO) — settles at actual model cost + 20%, change returned; no account needed; last run $0.01, ~40s. Example: Reviewed sample (https://nanoodle.com/examples/gallery/#favicon). A lighthouse-inspired icon for a pocket weather radio. The output is a raster concept; creating an ICO or SVG requires a separate step.
| Name | Required | Description | Default |
|---|---|---|---|
| Brand | No | Text; default: "Lumen — pocket weather radio. One lighthouse beam as a chevron. Deep navy field, single warm-gold mark. No letters."; optional | |
| Icon_prompt | No | System prompt; default: "Write one concise image prompt for a favicon concept from the brand brief. Preserve the requested symbol and colors. ..."; optional | |
| _payment_id | No | Payment id from this tool's previous payment-required response. Phase 3 only: after /x402/watch closes with status paid, call again with the same arguments plus this id to open the RESULTS stream. Do not pass it while payment is still pending — monitor the watch SSE first. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Since no annotations are provided, the description fully carries the burden. It discloses that the tool renders exactly one image, mentions cost ($0.01), settlement details (20% markup), deposit requirement, payment flow including phases, and that output is saved to disk with file path returned. It also mentions runtime (~40s) and points to a gallery example. This is comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is a wall of text with many interleaved details (pipeline, costs, payment, example, output format). It front-loads the core purpose but then jumps between technical flow, payment details, and an example link, which is hard to scan. Could be broken into short bullet points for clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite its structure, it covers essential operational details: payment, output, cost, and example. Missing explicit mention of error handling or state (like what happens if raster conversion is needed), but given the complexity and no output schema, the description covers most needed context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so parameters are already documented. Description adds value by explaining the pipeline roles: Brand brief feeding into Icon_prompt, which generates the image prompt. It also clarifies the _payment_id usage across phases, which is not fully in schema. Slight redundancy but generally adds context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool's purpose: turning a brand brief into a square favicon concept, with a specific pipeline (text -> llm:Icon prompt -> image:Favicon). It mentions the output type (raster concept) and the need for a separate step for ICO/SVG, which helps distinguish from siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides context on when to use (for favicon concepts) but doesn't explicitly contrast with sibling tools like 'character-sprites' or 'render-a-mockup'. It does mention the separate step needed for ICO/SVG, which implies when not to use for final formats. No explicit alternative routing, but clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fibo-studio-stillBInspect
Create an editorial product concept from a description and lighting choice. GLM Flash structures the brief; Bria FIBO renders at 1MP (image step $0.04, plus text). FIBO is offered as a model traine… text:Product -> choice:Light -> join:Brief -> llm:Structured prompt -> image:Still; returns image (fibo-generate-1.5/text-to-image, 1mp) saved to disk (file path in result). Runs on NanoGPT — $0.10 deposit per call, paid in Nano (XNO) — settles at actual model cost + 20%, change returned; no account needed. Example: Reviewed sample (https://nanoodle.com/examples/gallery/#fibo-studio-still). An amber soap bottle rendered from a product brief and lighting choice. This is a generated concept, not a photograph of an existing product.
| Name | Required | Description | Default |
|---|---|---|---|
| Light | No | Choice; default: "large softbox left, gentle shadow, neutral backdrop"; optional | |
| Product | No | Text; default: "One unbranded amber glass hand-soap bottle with a matte black pump, resting upright on a pale limestone counter. No l..."; optional | |
| _payment_id | No | Payment id from this tool's previous payment-required response. Phase 3 only: after /x402/watch closes with status paid, call again with the same arguments plus this id to open the RESULTS stream. Do not pass it while payment is still pending — monitor the watch SSE first. | |
| Structured_prompt | No | System prompt; default: "Write one structured descriptive image prompt for the supplied product and lighting. Preserve its shape, materials an..."; optional |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that the tool requires a deposit, settles at actual cost plus 20%, returns a file path, and requires no account. This is useful behavioral transparency, though some wording is truncated and payment-flow specifics are only partially explained.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is repetitive and contains truncated or awkward phrasing such as 'model traine…' and duplicated pipeline/pricing statements. It would benefit from tighter organization separating purpose, process, and payment details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description explains the pipeline, output as an image file path, and payment model, but the truncated text and lack of explicit success/failure behavior leave some context incomplete. Still, a reasonably capable agent could infer the tool's operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with defaults and enums provided. The description itself does not add much semantic meaning beyond the schema, but the schema already covers the parameters adequately, so the baseline applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it creates an editorial product concept from a description and lighting choice, giving a specific verb and resource. It is somewhat clouded by pricing and pipeline details, but the core purpose is identifiable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by describing the input-to-output flow and payment requirements, but it does not explain when to choose this tool over sibling image-generation tools or provide explicit usage scenarios. Payment phase guidance appears only in the parameter description, not the main description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
image-model-arenaAInspect
Compare four image models on the same useful brief. Run makes four paid images. Judge exact text, object count, composition and color before choosing the model for your own task. Each contender alr… text:Shared test brief -> image:Contender 1 -> image:Contender 2 -> image:Contender 3 -> image:Contender 4; returns image (muse-image/text-to-image, 1:1) + image (turbo, 1k) + image (grok-imagine-image/v2.0/text-to-image, 1:1) + image (recraft-v4, 1024×1024) saved to disk (file paths in result). Runs on NanoGPT — $0.59 deposit per call, paid in Nano (XNO) — settles at actual model cost + 20%, change returned; no account needed; last run $0.2455, ~1m 39s. Example: Reviewed sample (https://nanoodle.com/examples/gallery/#image-model-arena). The same bicycle-repair poster brief sent to four image models. All four retained the requested text in this run; only Grok rendered recognizable tire levers. Compare all outputs before choosing.
| Name | Required | Description | Default |
|---|---|---|---|
| _payment_id | No | Payment id from this tool's previous payment-required response. Phase 3 only: after /x402/watch closes with status paid, call again with the same arguments plus this id to open the RESULTS stream. Do not pass it while payment is still pending — monitor the watch SSE first. | |
| Shared_test_brief | No | Text; default: "Create a square poster for a bicycle repair workshop. Exact heading: FIX A FLAT. Exact footer: SATURDAY 10 AM. A sing..."; optional |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of disclosing behavior. It clearly states that the run creates four paid images, outlines the deposit and cost model, mentions the results stream, and says images are saved to disk with file paths in the result. This is transparent about cost and output behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is informative but somewhat verbose and repetitive, repeating 'paid' and 'compare' multiple times. It includes example and pricing details that may be useful but could be tightened without losing meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite no output schema, the description adequately explains the workflow, the four returned images, the saved-file behavior, cost details, and how to handle the payment-id parameter. It is complete enough for an agent to understand the tool's purpose and execution flow.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the description adds substantial meaning: it explains the _payment_id lifecycle across payment phases and provides the full default text for Shared_test_brief. This goes well beyond the raw schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool as comparing four image models on a shared brief, which distinguishes it from sibling tools that generate or edit images. It also states the intended use: judge outputs before choosing a model for your own task.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides practical guidance on when to use the tool and what to do with the results: compare all outputs, judge text, object count, composition, and color, then choose a model. It also explains the payment flow and the role of _payment_id. It does not explicitly contrast with sibling tools, but the use case is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
night-market-postcardAInspect
Create a landscape travel postcard illustration from a place and mood. Change both inputs for a new destination. GLM Flash writes the prompt; Muse renders at 3:2 (image step $0.01, plus text). Insp… text:Place -> choice:Vibe -> join:Spec -> llm:Postcard prompt -> image:Postcard; returns image (muse-image/text-to-image, 3:2) saved to disk (file path in result). Runs on NanoGPT — $0.03 deposit per call, paid in Nano (XNO) — settles at actual model cost + 20%, change returned; no account needed. Example: Reviewed sample (https://nanoodle.com/examples/gallery/#night-market-postcard). An illustrated Raohe night-market postcard from the saved place and atmosphere inputs. Use it as creative artwork rather than a documentary record.
| Name | Required | Description | Default |
|---|---|---|---|
| Vibe | No | Choice; default: "warm illustrated travel print"; optional | |
| Place | No | Text; default: "Raohe night market, Taipei — grilled squid smoke hanging in the lane, red lanterns, wet asphalt, one stall still roaring"; optional | |
| _payment_id | No | Payment id from this tool's previous payment-required response. Phase 3 only: after /x402/watch closes with status paid, call again with the same arguments plus this id to open the RESULTS stream. Do not pass it while payment is still pending — monitor the watch SSE first. | |
| Postcard_prompt | No | System prompt; default: "Write one image prompt for a 3:2 landscape travel postcard illustration from the supplied place and mood. Preserve su..."; optional |
TDQS
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 delivers: it discloses the multi-step pipeline (prompt generation, rendering, disk save), the exact cost model ($0.03 deposit, actual cost +20%, change returned), the payment flow via _payment_id (including Phase 3 and the need to monitor watch SSE), and the caveat that output is creative, not documentary. This is exceptionally transparent for a tool of this complexity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is long and dense, mixing purpose, workflow, pricing, and payment instructions in a single block. It is front-loaded with the core purpose, which is good, but the torrent of cost and payment details makes it less scannable than it could be. Some of this information (like the exact cost breakdown) might be better placed in annotations or a linked page, but it is all relevant, so it is not wasteful—just not tightly structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (a paid, multi-phase workflow with prompt generation and rendering), the description covers nearly everything an agent needs: how to start, how to handle payment, what the result looks like, and that it saves to disk. It lacks an explicit statement of what happens if no inputs are provided (defaults are given in the schema), but it is otherwise comprehensive. The presence of an example URL and the note on creative vs. documentary use round it out.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds meaning beyond the schema by explaining how the parameters interlock (e.g., changing both inputs yields a new destination) and by providing a concrete example of what a result looks like. It also clarifies the role of _payment_id in the payment workflow, which is not fully evident from the schema alone. This pushes it above the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a clear, specific verb-resource pair: 'Create a landscape travel postcard illustration from a place and mood.' It names the output (landscape postcard) and the two inputs (place and mood), and even notes that changing both inputs yields a new destination. This is enough to distinguish it from the sibling image-generation tools, none of which are described as travel postcard makers.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives some usage guidance ('Change both inputs for a new destination') and explains the workflow (GLM Flash writes the prompt, Muse renders, returns a saved file). However, it never explicitly contrasts this tool with any sibling or states when to prefer an alternative. No 'use X instead if...' is provided, so the agent must infer applicability from the postcard-specific wording.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
omni-flash-turntableAInspect
Create a short product-motion concept from an object and camera move. GLM Flash structures the brief; Omni Flash 1.1 renders 5s at 360p / 16:9 (video step $0.195, plus text). No upload required. In… text:Object -> choice:Move -> join:Brief -> llm:Video prompt -> tvideo:Clip; returns video (gemini-omni-flash/v1.1) saved to disk (file path in result). Runs on NanoGPT — $0.10 deposit per call, paid in Nano (XNO) — settles at actual model cost + 20%, change returned; no account needed. Example: Reviewed sample (https://nanoodle.com/examples/gallery/#omni-flash-turntable). A 360p draft camera orbit around a generated bottle with coherent geometry in the reviewed clip. This thumbnail is one frame; open the sample to inspect the motion.
| Name | Required | Description | Default |
|---|---|---|---|
| Move | No | Choice; default: "camera makes a slow quarter-orbit; object stays still"; optional | |
| Object | No | Text; default: "One unbranded matte sage-green insulated water bottle with a black screw cap on a stationary pale-gray studio plinth,..."; optional | |
| _payment_id | No | Payment id from this tool's previous payment-required response. Phase 3 only: after /x402/watch closes with status paid, call again with the same arguments plus this id to open the RESULTS stream. Do not pass it while payment is still pending — monitor the watch SSE first. | |
| Video_prompt | No | System prompt; default: "Write one text-to-video prompt from the object brief and selected move. Preserve the object, material, color, setting..."; optional |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses costs, payment mechanics, that no upload is required, and that the output is saved to disk. No destructive actions are implied and there are no contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is cluttered with extraneous pricing details, a garbled pipeline string, an example URL, and an odd 'thumbnail is one frame' note. This makes it harder to parse the essential information quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers cost, output, defaults, and payment flow, but no output schema exists and the narrative is muddled by promotional and example content. It is adequate but not fully polished.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with each parameter described. Most descriptions are redundant with the schema, but _payment_id adds significant workflow context about phases and when to pass it. This extra detail lifts the score above baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool creates a short product-motion concept from an object and camera move, and mentions the output is a video saved to disk. This is specific enough to distinguish it from sibling tools like photo-to-video or render-a-mockup.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides usage hints like 'No upload required' and explains the payment flow via _payment_id in the schema. It does not explicitly name alternatives, but the purpose and conditions are reasonably clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
photo-to-videoAInspect
Make a five-second ambient loop concept: Muse draws the first frame ($0.01), MiniMax H3 Spicy animates one small movement (480p, $0.20). This model supports image-to-video; the scene is a simple pr… text:Still brief -> text:Motion brief -> image:First frame -> ivideo:Animated clip; returns video (image-to-video-spicy) saved to disk (file path in result). Runs on NanoGPT — $0.51 deposit per call, paid in Nano (XNO) — settles at actual model cost + 20%, change returned; no account needed. Example: Reviewed sample (https://nanoodle.com/examples/gallery/#photo-to-video). A short tea-on-a-desk animation. Sampled frames retained the mug while steam moved. This thumbnail is one frame; the example does not establish a seamless loop.
| Name | Required | Description | Default |
|---|---|---|---|
| Still_brief | No | Text; default: "A ceramic mug of hot tea on an oak desk beside a closed notebook. Soft morning window light from the left, plain warm..."; optional | |
| _payment_id | No | Payment id from this tool's previous payment-required response. Phase 3 only: after /x402/watch closes with status paid, call again with the same arguments plus this id to open the RESULTS stream. Do not pass it while payment is still pending — monitor the watch SSE first. | |
| Motion_brief | No | Text; default: "Locked camera for five seconds. A thin wisp of steam rises slowly from the tea and curls gently in the window light. ..."; optional |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It transparently discloses the payment model ($0.51 deposit in Nano, 20% fee), the two-step generation (Muse draws frame, MiniMax animates), and that it returns a video saved to disk. It does not mention destructive actions, but no such side effects are implied.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is somewhat rambling, mixing cost details, pipeline explanation, and an example in a single sentence with typos (e.g., 'NanoGPT' vs 'Nano'). It could be more concise and better structured, but it is still readable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema is provided, but the description states the result is a video file saved to disk with a file path returned. It does not specify video format, resolution beyond 480p, or any error responses, which would be helpful for full context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema describes Still_brief and Motion_brief with defaults and _payment_id with detailed phase instructions. The tool description adds context by explaining the pipeline (Still brief -> Motion brief -> image -> video), clarifying the role of each text parameter beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool generates a five-second ambient video loop from a still image, describing the image-to-video pipeline (text briefs -> first frame -> animated clip). This distinguishes it from sibling tools that produce static images or other media.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains the tool's function and workflow but does not explicitly state when to prefer it over siblings (e.g., 'use this instead of fibo-studio-still when you need motion'). The example and cost details hint at usage, but no direct guidance is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
render-a-mockupAInspect
Turn a screen brief and visual style into a UI concept for design review. Qwen Image 3 Pro renders at 1K ($0.04/image); no prompt-writing call. Keep the combined brief and style under the model lim… text:Screen brief -> text:Visual style -> join -> image:Screen concept; returns image (qwen-image-3-pro, 1k) saved to disk (file path in result). Runs on NanoGPT — $0.20 deposit per call, paid in Nano (XNO) — settles at actual model cost + 20%, change returned; no account needed; last run $0.079, ~2m 16s. Example: Reviewed sample (https://nanoodle.com/examples/gallery/#render-a-mockup). A repair-shop dashboard concept with the requested navigation, date, three appointment rows, names, statuses and totals. This is a rendered screen concept; implementation and interaction are separate work.
| Name | Required | Description | Default |
|---|---|---|---|
| _payment_id | No | Payment id from this tool's previous payment-required response. Phase 3 only: after /x402/watch closes with status paid, call again with the same arguments plus this id to open the RESULTS stream. Do not pass it while payment is still pending — monitor the watch SSE first. | |
| Screen_brief | No | Text; default: "Repair shop dashboard, desktop screenshot. Navigation: Today, Repairs, Customers. Header: Tuesday, 8 September. Main ..."; optional | |
| Visual_style | No | Text; default: "Warm white background, charcoal text, gray dividers, forest-green primary button. Simple sans-serif, readable table r..."; optional |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and delivers: it discloses that output is saved to disk with a file path, specifies the model (Qwen Image 3 Pro) and resolution (1K), explains payment flow (no account, Nano deposit, cost settlement, last run cost and runtime), and clarifies the separation from implementation. This is comprehensive for a payment-required tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a long, unstructured paragraph mixing purpose, payment details, an example link, and separation notes. It front-loads the core purpose but then digresses into costs, runtime, and an example that are not essential for calling the tool. Better organization and trimming would improve readability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the essential outputs (image saved to disk, file path in result), the payment model, and the separation from implementation. It does not explicitly explain the payment phases (watch SSE, _payment_id) but these are detailed in the input schema. Given the tool's complexity, the description is nearly complete, though it could be more structured.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptive parameter names and defaults, so the baseline is 3. The description adds minimal extra value—only a vague hint about keeping the combined brief and style under a model limit. It does not clarify formatting or length constraints beyond the schema's default strings.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The opening sentence clearly states the action ('Turn a screen brief and visual style into a UI concept') with a specific verb and resource. It distinguishes itself from image-generation siblings by focusing on UI design review, not generic image creation. The later mention of 'rendered screen concept' reinforces its unique role.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context for when to use it ('for design review') and clarifies that it produces a static concept, not implementation. However, it does not explicitly name alternative tools or state conditions when NOT to use it. The sibling list includes other image tools, but no explicit routing is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
singAInspect
Draft an original closing-credits song. One text model writes lyrics; Mureka Generate Song sings them using the editable musical style. Music step $0.225, plus text. Listen for clear words, melody … text:Song Instructions -> text:Musical style -> llm:Lyrics -> music:Song; returns audio (mureka-v9.5/generate-song) saved to disk (file path in result). Runs on NanoGPT — $0.55 deposit per call, paid in Nano (XNO) — settles at actual model cost + 20%, change returned; no account needed; last run $0.0497, ~1m 56s. Example: Audio sample (https://nanoodle.com/examples/gallery/#sing). A 170-second generated closing-credits song. Gemini 3.8 Flash reported clear gentle acoustic vocals and a chorus matching the supplied lyrics. This is model-assisted audio review, not human listening sign-off.
| Name | Required | Description | Default |
|---|---|---|---|
| Lyrics | No | System prompt; default: "Write original singable lyrics from the brief, maximum 160 words. Plain language, concrete details, natural stresses ..."; optional | |
| _payment_id | No | Payment id from this tool's previous payment-required response. Phase 3 only: after /x402/watch closes with status paid, call again with the same arguments plus this id to open the RESULTS stream. Do not pass it while payment is still pending — monitor the watch SSE first. | |
| Musical_style | No | Text; default: "Gentle acoustic folk, relaxed mid-tempo, warm solo vocal, fingerpicked guitar, soft brushed percussion. Clear words a..."; optional | |
| Song_Instructions | No | Text; default: "Write a short original song for the closing credits of a cozy repair-shop game. Theme: fixing a small thing makes a h..."; optional |
TDQS
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 delivers: it discloses the multi-step workflow, that the result is audio saved to disk with a file path, the NanoGPT payment/deposit model, estimated cost and runtime, no-account requirement, and that audio quality review is model-assisted rather than human sign-off.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Purpose and pipeline are front-loaded, which is good, but the description is a long, dense paragraph including volatile details like last-run cost and duration, plus a Gemini quality report. These add context but make it less concise than it could be.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no output schema and no annotations, the description is very complete: it covers workflow, return value and file path, payment mechanics, cost and runtime expectations, an example, and a caveat about audio review. Nothing essential for invoking the tool is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already documents all parameters with 100% coverage, so the baseline is 3. The description adds value by showing the pipeline order and how the parameters interact: text instructions and musical style feed into LLM-written lyrics, which are then sung by the music model.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific purpose: drafting an original closing-credits song, and clarifies that actual audio is produced by Mureka Generate Song. It describes the full pipeline from lyrics to sung audio, so an agent knows exactly what the tool delivers and how it differs from the visual-art sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies when to use it: whenever an original closing-credits song with editable musical style is needed. It does not explicitly list exclusions or alternative tools, but the sibling tools are all image/video-focused, so the intended use is evident.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
talking-avatarAInspect
Prototype a short spoken introduction with a fictional presenter. Muse makes the portrait, MiniMax Speech reads the script, and LongCat animates speech at 480p. Keep scripts under 30 seconds. Cost … text:Presenter look -> text:Spoken script -> text:Delivery -> image:face -> tts -> lipsync; returns video (longcat-avatar-1.5) saved to disk (file path in result). Runs on NanoGPT — $0.53 deposit per call, paid in Nano (XNO) — settles at actual model cost + 20%, change returned; no account needed. Example: Video sample (https://nanoodle.com/examples/gallery/#talking-avatar). A fictional presenter reads a short workshop introduction. Sampled frames preserve the presenter; check precise lip-sync timing in playback. Generation can take several minutes.
| Name | Required | Description | Default |
|---|---|---|---|
| Delivery | No | Text; default: "Natural calm delivery, subtle blinks and small head movements. Keep the face and mouth visible, eyes toward the camer..."; optional | |
| _payment_id | No | Payment id from this tool's previous payment-required response. Phase 3 only: after /x402/watch closes with status paid, call again with the same arguments plus this id to open the RESULTS stream. Do not pass it while payment is still pending — monitor the watch SSE first. | |
| Spoken_script | No | Text; default: "Welcome to the workshop. Start with the blue tray on your table. Inside you will find paper, a pencil, and the parts ..."; optional | |
| Presenter_look | No | Text; default: "A fictional friendly male museum guide in his thirties, wearing a plain navy shirt, shoulders-up front-facing portrai..."; optional |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full disclosure burden and delivers: the payment model ('$0.53 deposit per call, paid in Nano (XNO) — settles at actual model cost + 20%, change returned'), output behavior ('returns video (longcat-avatar-1.5) saved to disk (file path in result)'), runtime ('Generation can take several minutes'), and a caveat ('check precise lip-sync timing in playback'). This is exemplary behavioral disclosure well beyond what the schema provides.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense and mostly earns its length, but the 'Cost … text:Presenter look -> …' transition is structurally broken — it reads as a truncated sentence that awkwardly merges the cost topic with the pipeline diagram. The example section ('Example: Video sample (URL). A fictional presenter reads…') is slightly disorganized, and the opening purpose partially duplicates the Presenter_look default. Front-loading of purpose is good, but the flow needs polish.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex tool — 4 optional params, a payment-required two-phase flow, multi-minute generation, and no output schema — the description covers what matters: the produced artifact (video file saved to disk, path in result), generation time, cost and settlement mechanics, and the lip-sync caveat. The only flow detail left to the schema is the _payment_id watch/stream protocol, which the schema documents thoroughly. Nothing an agent needs to call this successfully is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 description adds real meaning by mapping params to pipeline stages ('text:Presenter look -> text:Spoken script -> text:Delivery -> image:face -> tts -> lipsync') and by constraining the Spoken_script param ('Keep scripts under 30 seconds') — a constraint the schema does not express. The _payment_id flow is already thoroughly documented in the schema, so no compensation is needed there.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Opens with a specific verb+resource: 'Prototype a short spoken introduction with a fictional presenter.' The pipeline detail (Muse makes the portrait, MiniMax Speech reads the script, LongCat animates speech at 480p) makes the function unmistakable and inherently distinguishes it from siblings like 'sing' (singing) and 'photo-to-video' (photo animation). An agent cannot confuse this with a sprite generator, image editor, or mockup renderer.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear usage context: it is for prototyping short spoken introductions, with an explicit constraint ('Keep scripts under 30 seconds'), an example use case ('A fictional presenter reads a short workshop introduction'), and expectations for cost and runtime ('no account needed', 'Generation can take several minutes'). It does not name explicit alternatives or when-not-to-use conditions, which keeps it from a 5.
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.
13 tool updates
- Removed
alishan-fog-dawn - Changed
combine-images7 fields changed- removed
Input schema / properties / ImageRemoved value: -{ - "description": "* required; image — file path or https URL", - "type": "string" -} - removed
Input schema / properties / Image_2Removed value: -{ - "description": "* required; image — file path or https URL", - "type": "string" -} - added
Input schema / properties / Placement_briefAdded value: +{ + "description": "Text; default: \"Place the product from image 1 naturally into the setting from image 2. Preserve the product shape, proportions, mate...\"; optional", + "type": "string" +} - added
Input schema / properties / Product_photoAdded value: +{ + "description": "* required; image — file path or https URL", + "type": "string" +} - added
Input schema / properties / Setting_photoAdded value: +{ + "description": "* required; image — file path or https URL", + "type": "string" +} - removed
Input schema / properties / TextRemoved value: -{ - "description": "default: \"Composite these two people as rival cartographers knee-deep in the flooded sub-basement of the Vatican Secret Archive...\"; optional", - "type": "string" -} - changed
Input schema / requiredPrevious value: -[ - "Image", - "Image_2" -]New value: +[ + "Product_photo", + "Setting_photo" +]
- Changed
deslop7 fields changed- added
Input schema / properties / Edited_noticeAdded value: +{ + "description": "System prompt; default: \"Your input contains the original draft, === PASS 1 REWRITE ===, and === EDITORIAL REVIEW ===. Treat these blocks as s...\"; optional", + "type": "string" +} - added
Input schema / properties / Fact_and_clarity_reviewAdded value: +{ + "description": "System prompt; default: \"You are an editorial reviewer. Your input contains the original draft followed by === PASS 1 REWRITE === and its rewr...\"; optional", + "type": "string" +} - added
Input schema / properties / First_rewriteAdded value: +{ + "description": "System prompt; default: \"You rewrite AI-sounding text so it reads like a person wrote it. Output only the rewritten text — no preamble, no not...\"; optional", + "type": "string" +} - removed
Input schema / properties / System_promptRemoved value: -{ - "description": "System prompt; default: \"You rewrite AI-sounding text so it reads like a person wrote it. Output only the rewritten text — no preamble, no not...\"; optional", - "type": "string" -} - removed
Input schema / properties / System_prompt_2Removed value: -{ - "description": "System prompt; default: \"You are a blunt AI-text detector. You see one passage and nothing else. Decide whether a machine wrote it.\\nReply in e...\"; optional", - "type": "string" -} - removed
Input schema / properties / System_prompt_3Removed value: -{ - "description": "System prompt; default: \"You are the final editor. Your input holds three blocks in this order:\\n1. the ORIGINAL DRAFT — everything before the ...\"; optional", - "type": "string" -} - changed
Input schema / properties / Your_draft / descriptionPrevious value: -"Text; default: \"In today's fast-paced experiential landscape, last night's monsoon activation on the shrine stairs at Jiufen's Shengp...\"; optional"New value: +"Text; default: \"We are thrilled to announce a game-changing improvement to the repair booking experience. Starting 8 September, custo...\"; optional"
- Changed
edit-a-photo5 fields changed- added
Input schema / properties / Edit_requestAdded value: +{ + "description": "Text; default: \"Prepare this product photo for a catalog. Preserve the exact product shape, color, materials, markings and visible te...\"; optional", + "type": "string" +} - removed
Input schema / properties / ImageRemoved value: -{ - "description": "* required; image — file path or https URL", - "type": "string" -} - added
Input schema / properties / Product_photoAdded value: +{ + "description": "* required; image — file path or https URL", + "type": "string" +} - removed
Input schema / properties / TextRemoved value: -{ - "description": "default: \"Rewind this photo into a typhoon night on Taipei's Dihua Street: shuttered Qing-era shophouses, red lanterns thrashin...\"; optional", - "type": "string" -} - changed
Input schema / requiredPrevious value: -[ - "Image" -]New value: +[ + "Product_photo" +]
- Changed
favicon3 fields changed- added
Input schema / properties / Icon_promptAdded value: +{ + "description": "System prompt; default: \"Write one concise image prompt for a favicon concept from the brand brief. Preserve the requested symbol and colors. ...\"; optional", + "type": "string" +} - removed
Input schema / properties / TextRemoved value: -{ - "description": "default: \"You design one favicon. From the brand name/description, write ONE image prompt for a square app icon: a single bold ...\"; optional", - "type": "string" -} - removed
Input schema / properties / Text_2Removed value: -{ - "description": "Text; default: \"style guide:\\n- Reduce the brand to its most distinctive visual idea; prefer a simple metaphor over a literal product ...\"; optional", - "type": "string" -}
- Changed
fibo-studio-still4 fields changed- changed
Input schema / properties / Light / descriptionPrevious value: -"Choice; default: \"sea-fog tungsten, copper-green water sheen, wet slate\"; optional"New value: +"Choice; default: \"large softbox left, gentle shadow, neutral backdrop\"; optional" - changed
Input schema / properties / Light / enumPrevious value: -[ - "sea-fog tungsten, copper-green water sheen, wet slate", - "pre-dawn overcast, pale gold through mine-mouth mist, verdigris", - "hard carbide flame, specular brass, crushed-quartz glitter", - "analog-film moonlight, lifted blacks, one warm lamp spill" -]New value: +[ + "large softbox left, gentle shadow, neutral backdrop", + "window daylight, soft shadows, warm stone", + "hard side light, crisp silhouette, gray paper", + "backlit translucent glass, soft fill from front" +] - changed
Input schema / properties / Product / descriptionPrevious value: -"Text; default: \"Jinguashi gold-mine coast, Taiwan — 4:07am. A dented brass carbide miner's lamp on wet black slate, verdigris crawlin...\"; optional"New value: +"Text; default: \"One unbranded amber glass hand-soap bottle with a matte black pump, resting upright on a pale limestone counter. No l...\"; optional" - changed
Input schema / properties / Structured_prompt / descriptionPrevious value: -"System prompt; default: \"You write one image prompt for a commercially safe editorial product still, in the structured-caption style FIBO was ...\"; optional"New value: +"System prompt; default: \"Write one structured descriptive image prompt for the supplied product and lighting. Preserve its shape, materials an...\"; optional"
- Changed
image-model-arena2 fields changed- added
Input schema / properties / Shared_test_briefAdded value: +{ + "description": "Text; default: \"Create a square poster for a bicycle repair workshop. Exact heading: FIX A FLAT. Exact footer: SATURDAY 10 AM. A sing...\"; optional", + "type": "string" +} - removed
Input schema / properties / TextRemoved value: -{ - "description": "default: \"Liziba, Chongqing at 11:47pm: Light Rail Line 2 frozen mid-crossing through the 6th–8th floors of a lived-in resident...\"; optional", - "type": "string" -}
- Changed
night-market-postcard3 fields changed- changed
Input schema / properties / Postcard_prompt / descriptionPrevious value: -"System prompt; default: \"Write ONE image prompt in the final answer text (not only in hidden reasoning). Cinematic 3:2 landscape travel postca...\"; optional"New value: +"System prompt; default: \"Write one image prompt for a 3:2 landscape travel postcard illustration from the supplied place and mood. Preserve su...\"; optional" - changed
Input schema / properties / Vibe / descriptionPrevious value: -"Choice; default: \"humid neon, crowded, reflections in puddles\"; optional"New value: +"Choice; default: \"warm illustrated travel print\"; optional" - changed
Input schema / properties / Vibe / enumPrevious value: -[ - "humid neon, crowded, reflections in puddles", - "rainy analog film, grain, amber sodium lamps", - "late-night steam, quieter alley, one stall still open", - "cyberpunk postcard, saturated teal and magenta, still photoreal" -]New value: +[ + "warm illustrated travel print", + "fine-grain analog photograph", + "quiet watercolor scene", + "bold two-color screenprint" +]
- Changed
omni-flash-turntable4 fields changed- changed
Input schema / properties / Move / descriptionPrevious value: -"Choice; default: \"slow clockwise orbit through dock fog, tungsten key left, salt spray, wet teak grain\"; optional"New value: +"Choice; default: \"camera makes a slow quarter-orbit; object stays still\"; optional" - changed
Input schema / properties / Move / enumPrevious value: -[ - "slow clockwise orbit through dock fog, tungsten key left, salt spray, wet teak grain", - "lazy quarter-turn, north-window daylight, linen behind", - "locked-off, seawater sheets down the visor as it rotates, specular rivets, tungsten", - "push-in while it rotates, overcast skylight, fog rolling, teak grain sharp" -]New value: +[ + "camera makes a slow quarter-orbit; object stays still", + "locked camera; object rotates slowly clockwise", + "slow camera push-in; object stays still" +] - changed
Input schema / properties / Object / descriptionPrevious value: -"Text; default: \"Barnacled brass diving helmet on a rain-slick teak ship's binnacle, visor fogged from inside, no labels or brand mark...\"; optional"New value: +"Text; default: \"One unbranded matte sage-green insulated water bottle with a black screw cap on a stationary pale-gray studio plinth,...\"; optional" - changed
Input schema / properties / Video_prompt / descriptionPrevious value: -"System prompt; default: \"You write one text-to-video prompt for Gemini Omni Flash 1.1. Combine the object and the move into a single cinematic...\"; optional"New value: +"System prompt; default: \"Write one text-to-video prompt from the object brief and selected move. Preserve the object, material, color, setting...\"; optional"
- Changed
photo-to-video5 fields changed- added
Input schema / properties / Motion_briefAdded value: +{ + "description": "Text; default: \"Locked camera for five seconds. A thin wisp of steam rises slowly from the tea and curls gently in the window light. ...\"; optional", + "type": "string" +} - added
Input schema / properties / Still_briefAdded value: +{ + "description": "Text; default: \"A ceramic mug of hot tea on an oak desk beside a closed notebook. Soft morning window light from the left, plain warm...\"; optional", + "type": "string" +} - removed
Input schema / properties / motion_system_promptRemoved value: -{ - "description": "Text; default: \"You are writing a motion prompt for MiniMax H3 Spicy image-to-video.\\nPrompting guide:\\n1. Be specific. Name subjects, ...\"; optional", - "type": "string" -} - removed
Input schema / properties / movementRemoved value: -{ - "description": "Text; default: \"she takes one careful step down the fire-escape grate, red silk billows sideways in a wet gust, camera slow orbit rig...\"; optional", - "type": "string" -} - removed
Input schema / properties / the_image_beingRemoved value: -{ - "description": "Text; default: \"photoreal fashion editorial, adult woman STANDING upright full-body three-quarter view on a wet Tokyo fire-escape lan...\"; optional", - "type": "string" -}
- Changed
render-a-mockup5 fields changed- added
Input schema / properties / Screen_briefAdded value: +{ + "description": "Text; default: \"Repair shop dashboard, desktop screenshot. Navigation: Today, Repairs, Customers. Header: Tuesday, 8 September. Main ...\"; optional", + "type": "string" +} - removed
Input schema / properties / System_promptRemoved value: -{ - "description": "System prompt; default: \"You write image prompts for UI mockups. Given a screen description and a style guide, reply with ONE detailed image p...\"; optional", - "type": "string" -} - removed
Input schema / properties / TextRemoved value: -{ - "description": "default: \"An underground dumpling cartel ops dashboard: live dumpling-shipment map across Taipei night markets, steam-timer hea...\"; optional", - "type": "string" -} - removed
Input schema / properties / Text_2Removed value: -{ - "description": "Text; default: \"Style guide: premium, cinematic dark-mode product dashboard with an immediate wow factor, rendered as an exceptionall...\"; optional", - "type": "string" -} - added
Input schema / properties / Visual_styleAdded value: +{ + "description": "Text; default: \"Warm white background, charcoal text, gray dividers, forest-green primary button. Simple sans-serif, readable table r...\"; optional", + "type": "string" +}
- Changed
sing7 fields changed- removed
Input schema / properties / BandsRemoved value: -{ - "description": "Text; default: \"Bands liked:\\nPortishead, Massive Attack, Tricky\"; optional", - "type": "string" -} - added
Input schema / properties / LyricsAdded value: +{ + "description": "System prompt; default: \"Write original singable lyrics from the brief, maximum 160 words. Plain language, concrete details, natural stresses ...\"; optional", + "type": "string" +} - added
Input schema / properties / Musical_styleAdded value: +{ + "description": "Text; default: \"Gentle acoustic folk, relaxed mid-tempo, warm solo vocal, fingerpicked guitar, soft brushed percussion. Clear words a...\"; optional", + "type": "string" +} - changed
Input schema / properties / Song_Instructions / descriptionPrevious value: -"Text; default: \"Write a late-night 90s trip-hop torch song set under the last lit vermillion torii at Fushimi Inari, 3:17am. A rusted...\"; optional"New value: +"Text; default: \"Write a short original song for the closing credits of a cozy repair-shop game. Theme: fixing a small thing makes a h...\"; optional" - removed
Input schema / properties / Style_System_PromptRemoved value: -{ - "description": "Text; default: \"You invent a musical style that fits the given lyrics. Reply with only the style, richly descriptive — no commentary....\"; optional", - "type": "string" -} - removed
Input schema / properties / System_promptRemoved value: -{ - "description": "System prompt; default: \"You are an award-winning songwriter. Write only the lyrics — no title, no commentary, no explanations.\\nPrinciples:\\n- ...\"; optional", - "type": "string" -} - removed
Input schema / properties / System_prompt_2Removed value: -{ - "description": "System prompt; default: \"Negate the style — what would go poorly, the worst you can imagine. No preamble or postamble.\"; optional", - "type": "string" -}
- Changed
talking-avatar6 fields changed- added
Input schema / properties / DeliveryAdded value: +{ + "description": "Text; default: \"Natural calm delivery, subtle blinks and small head movements. Keep the face and mouth visible, eyes toward the camer...\"; optional", + "type": "string" +} - added
Input schema / properties / Presenter_lookAdded value: +{ + "description": "Text; default: \"A fictional friendly male museum guide in his thirties, wearing a plain navy shirt, shoulders-up front-facing portrai...\"; optional", + "type": "string" +} - added
Input schema / properties / Spoken_scriptAdded value: +{ + "description": "Text; default: \"Welcome to the workshop. Start with the blue tray on your table. Inside you will find paper, a pencil, and the parts ...\"; optional", + "type": "string" +} - removed
Input schema / properties / lookRemoved value: -{ - "description": "Text; default: \"cinematic film still of a night courier, late 20s, on the cliff-walk at Hongyadong, Chongqing, 2:11am: cropped black ...\"; optional", - "type": "string" -} - removed
Input schema / properties / movementRemoved value: -{ - "description": "Text; default: \"Natural talking-head: small nods timed to the speech, Hongyadong lantern-light catching the visor, slight jaw set, st...\"; optional", - "type": "string" -} - removed
Input schema / properties / speakRemoved value: -{ - "description": "Text; default: \"Last drop of the night. Hongyadong, cliff side. If the stairs flood, tell dispatch I climbed it — the package is alre...\"; optional", - "type": "string" -}
15 tool updates
- Added
alishan-fog-dawn - Added
character-sprites - Changed
combine-images1 field changed- changed
Input schema / properties / Text / descriptionPrevious value: -"default: \"Make these two people explore a dungeon together\"; optional"New value: +"default: \"Composite these two people as rival cartographers knee-deep in the flooded sub-basement of the Vatican Secret Archive...\"; optional"
- Changed
deslop1 field changed- changed
Input schema / properties / Your_draft / descriptionPrevious value: -"Text; default: \"In today's fast-paced digital landscape, keeping your team in sync has never been more critical. That's why we're thr...\"; optional"New value: +"Text; default: \"In today's fast-paced experiential landscape, last night's monsoon activation on the shrine stairs at Jiufen's Shengp...\"; optional"
- Changed
edit-a-photo1 field changed- changed
Input schema / properties / Text / descriptionPrevious value: -"default: \"make it night-time, add glowing neon signs and rain reflections\"; optional"New value: +"default: \"Rewind this photo into a typhoon night on Taipei's Dihua Street: shuttered Qing-era shophouses, red lanterns thrashin...\"; optional"
- Changed
favicon2 fields changed- changed
Input schema / properties / Brand / descriptionPrevious value: -"* required; Text"New value: +"Text; default: \"Lumen — pocket weather radio. One lighthouse beam as a chevron. Deep navy field, single warm-gold mark. No letters.\"; optional" - removed
Input schema / requiredRemoved value: -[ - "Brand" -]
- Added
fibo-studio-still - Changed
image-model-arena1 field changed- changed
Input schema / properties / Text / descriptionPrevious value: -"default: \"a tiny dragon curled up asleep in a teacup, macro photo, soft morning light\"; optional"New value: +"default: \"Liziba, Chongqing at 11:47pm: Light Rail Line 2 frozen mid-crossing through the 6th–8th floors of a lived-in resident...\"; optional"
- Added
night-market-postcard - Added
omni-flash-turntable - Changed
photo-to-video3 fields changed- changed
Input schema / properties / motion_system_prompt / descriptionPrevious value: -"Text; default: \"You are animating this image for ltx-2.3.\\nPromptig guide:\\n1. Be More Specific. The Engine Can Handle It.\\nLTX-2.3 incl...\"; optional"New value: +"Text; default: \"You are writing a motion prompt for MiniMax H3 Spicy image-to-video.\\nPrompting guide:\\n1. Be specific. Name subjects, ...\"; optional" - changed
Input schema / properties / movement / descriptionPrevious value: -"Text; default: \"sailing very fast in rough seas\"; optional"New value: +"Text; default: \"she takes one careful step down the fire-escape grate, red silk billows sideways in a wet gust, camera slow orbit rig...\"; optional" - changed
Input schema / properties / the_image_being / descriptionPrevious value: -"Text; default: \"a tiny sailboat on a glowing bioluminescent sea, night, stars\"; optional"New value: +"Text; default: \"photoreal fashion editorial, adult woman STANDING upright full-body three-quarter view on a wet Tokyo fire-escape lan...\"; optional"
- Changed
render-a-mockup1 field changed- changed
Input schema / properties / Text / descriptionPrevious value: -"default: \"A habit-tracker web app dashboard: today's checklist, current streaks, a week-at-a-glance grid, and a quick-add button.\"; optional"New value: +"default: \"An underground dumpling cartel ops dashboard: live dumpling-shipment map across Taipei night markets, steam-timer hea...\"; optional"
- Changed
sing3 fields changed- changed
Input schema / properties / Bands / descriptionPrevious value: -"Text; default: \"Bands liked:\\nSoundgarden, XX\"; optional"New value: +"Text; default: \"Bands liked:\\nPortishead, Massive Attack, Tricky\"; optional" - changed
Input schema / properties / Song_Instructions / descriptionPrevious value: -"Text; default: \"Write a wistful 90s trip-hop track about the singularity.\"; optional"New value: +"Text; default: \"Write a late-night 90s trip-hop torch song set under the last lit vermillion torii at Fushimi Inari, 3:17am. A rusted...\"; optional" - changed
Input schema / properties / System_prompt_2 / descriptionPrevious value: -"System prompt; default: \"Negate the style - what would go poorly, the worst you can imagine. No preamble or postamble.\"; optional"New value: +"System prompt; default: \"Negate the style — what would go poorly, the worst you can imagine. No preamble or postamble.\"; optional"
- Changed
talking-avatar5 fields changed- removed
Input schema / properties / ImageRemoved value: -{ - "description": "* required; image — file path or https URL", - "type": "string" -} - added
Input schema / properties / lookAdded value: +{ + "description": "Text; default: \"cinematic film still of a night courier, late 20s, on the cliff-walk at Hongyadong, Chongqing, 2:11am: cropped black ...\"; optional", + "type": "string" +} - changed
Input schema / properties / movement / descriptionPrevious value: -"Text; default: \"exaggerated head movement\"; optional"New value: +"Text; default: \"Natural talking-head: small nods timed to the speech, Hongyadong lantern-light catching the visor, slight jaw set, st...\"; optional" - changed
Input schema / properties / speak / descriptionPrevious value: -"Text; default: \"Hi there! I used to be a still photo — then somebody wired three nodes together, and now I won't stop talking.\"; optional"New value: +"Text; default: \"Last drop of the night. Hongyadong, cliff side. If the stairs flood, tell dispatch I climbed it — the package is alre...\"; optional" - removed
Input schema / requiredRemoved value: -[ - "Image" -]
- Removed
text-to-image
10 tool updates
- First observed
combine-images - First observed
deslop - First observed
edit-a-photo - First observed
favicon - First observed
image-model-arena - First observed
photo-to-video - First observed
render-a-mockup - First observed
sing - First observed
talking-avatar - First observed
text-to-image
Related MCP Connectors
Create, browse, remix, collaborate on, and run durable AI workflow nodes from MCP hosts.
5 pay-per-call SEO tools over MCP. Free discovery, tool calls settle in USDC on Base via x402.
Free public MCP for AI agents — 193 tools, 44 workflows. No API key.
337 MCP tools with x402 micropayments on Base. $0.001/call. No signup, no API keys.
Related MCP Servers
- AlicenseBqualityCmaintenanceExposes your LLMGraph workflow deployments as MCP tools, allowing AI assistants to invoke them via natural language.127 npmMIT
- AlicenseBqualityCmaintenanceMCP server wrapping x402.eleeth.com — 35 pay-per-call tools for AI agents (x402 v2, USDC on Base)35MIT
- AlicenseNot gradedqualityCmaintenance250+ AI-powered MCP tools: research, write, code, translate, scrape, sentiment, vision, RAG, agent memory, marketplace, trading signals, and more. 15 models across 7 providers. Pay-per-use via API key or x402 USDC micropayments.83 PyPI2MIT

gatefareio/mcp-serverofficial
AlicenseAqualityDmaintenanceMarketplace MCP for paid HTTP APIs. Pay per call in USDC on Base via the open x402 standard — non-custodial. 13 tools for discovery, buying, and publishing APIs.727 npm2MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.