agentic-commerce-catalog
Server Details
AI music, video, image, and voice tools callable by agents with USDC payments via x402 on Base.
- Status
- Healthy
- Uptime
- 100.0% over 60 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 5 tools
agent_image, agent_video, and create_music are clearly distinct by medium, but create_music and skyfire_create_music both generate music and differ primarily in payment/auth pathway, which risks misselection. skyfire_get_music is also only explicitly tied to the Skyfire path, leaving polling for other async tools ambiguous.
The set mixes three conventions: agent_* prefixes, a bare verb_noun create_music, and skyfire_ verb_noun tools. It remains readable, but there is no single predictable pattern across all five tools.
Five tools is a reasonable, well-scoped size for an image/video/music generation catalog. The only slight excess is the second music-generation entry via Skyfire, which duplicates create_music's core function.
The surface covers the three main media types (image, video, music) plus a status/retrieval tool for the Skyfire path. Minor gaps remain: generic polling for create_music and the direct image/video async jobs are not exposed as tools, relying on external pollUrl handling instead.
Available Tools
5 toolsagent_imageAInspect
AI image generation from a text prompt. Generate album and single cover art, podcast and video thumbnails, social and campaign graphics, concept art, storyboard frames, product shots, and article illustrations. Returns one hosted still image as PNG or JPEG in square, portrait, or widescreen framing (1:1, 4:5, 9:16, 16:9, 21:9). Async by default: poll the returned pollUrl for imageUrl, or pass ?async=false to block. — $0.15 USDC via x402 on Base (chain 8453).
| Name | Required | Description | Default |
|---|---|---|---|
| prompt | Yes | Image description — subject, style, composition. | |
| asyncMode | No | Return immediately with a jobId while the render runs. Can only switch async on: false is the same as omitting it, so a paid call stays asynchronous; ?async=false is the only way to force a blocking call. | |
| aspectRatio | No | Aspect ratio, e.g. '1:1', '16:9', '9:16'. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full disclosure burden and does so well. It reveals async-by-default behavior, the polling mechanism (pollUrl → imageUrl), the blocking alternative (?async=false), output format (one hosted PNG/JPEG), supported aspect ratios, and pricing/chain details ($0.15 USDC on Base). This gives the agent a reliable mental model of how the call behaves.
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 three dense sentences with no filler. It front-loads the core purpose first, then use cases, output behavior, async semantics, and cost. Every sentence contributes operational or selection-relevant 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?
The tool has no output schema and no annotations, so the description must supply essential invocation and return details. It covers purpose, output format, aspect ratios, async polling, blocking option, and cost. The only notable gap is how the x402 payment flow is initiated or handled, but the description provides enough for an agent to make the call and interpret the response.
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 value beyond the schema by listing the full set of supported aspect ratios and reinforcing the async/blocking behavioral distinction. It does not deeply elaborate on prompt nuances, but the schema already describes prompt as 'subject, style, composition.'
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 specific verb and resource: 'AI image generation from a text prompt.' It then enumerates concrete use cases (album art, thumbnails, concept art, product shots, etc.) that make the tool's scope unmistakable. The contrast with siblings agent_video and create_music is implicit but clear: this tool produces still images, not video or music.
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 the tool through its list of image-generation use cases. It does not explicitly exclude alternatives or name sibling tools for video/music, but the domain separation is evident enough that an agent can route correctly. No explicit 'when not to use' guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
agent_videoAInspect
AI video generation from a text prompt. Returns an 8-second 720p clip with native audio. Use for short-form video, b-roll, product shots, music-video visuals, social clips, and ads. Include sound cues (instruments, voices, weather, movement) since audio is generated from the scene; a silent scene renders near-silent by design. Async by default: poll the returned pollUrl for videoUrl, or pass ?async=false to block. — $4.99 USDC via x402 on Base (chain 8453).
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Optional random seed for reproducible renders. | |
| model | No | Optional model preset variant. Leave unset for the default. | |
| prompt | Yes | Narrative or visual prompt to drive the music video concept. | |
| asyncMode | No | Return immediately with a jobId while the render runs. Can only switch async on: false is the same as omitting it, so a paid call stays asynchronous; ?async=false is the only way to force a blocking call. | |
| resolution | No | Target rendering resolution. | |
| aspectRatio | No | Desired frame aspect ratio. | |
| durationSeconds | No | Clip length in seconds (default 8). |
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 does well by disclosing async-by-default behavior, pollUrl/videoUrl, the blocking override, native audio generation, and pricing. However, 'Returns an 8-second 720p clip' is stated as fixed even though the schema exposes durationSeconds and a 1024p resolution option, so it slightly overstates the default output.
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 compact, front-loaded with the core purpose, and every sentence adds value: output format, use cases, prompt strategy, async behavior, and cost. It avoids redundancy and is easy for an agent to scan.
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 runtime behavior—default output, async flow, polling, blocking mode, audio considerations, and cost—without an output schema to rely on. It does not detail authentication, error cases, or the full set of param interactions, but the schema already documents the parameters and the core workflow is sufficiently complete.
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 meaningful prompt guidance—include sound cues since audio is generated from the scene—and clarifies the default duration and resolution. This goes beyond the schema's field descriptions, particularly for the prompt parameter.
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 specific verb and resource: 'AI video generation from a text prompt.' It further clarifies the output—an 8-second 720p clip with native audio—and lists concrete use cases such as b-roll, product shots, and social clips. This makes it clearly distinct from sibling tools agent_image and create_music.
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 clear usage context by listing short-form video, b-roll, product shots, music-video visuals, social clips, and ads. It does not explicitly name when not to use this tool or contrast it with agent_image and create_music, but the video-specific framing makes the intended scope clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_musicAInspect
AI music generation from a text prompt. Creates a complete original song with vocals, melody, and full arrangement as a finished MP3, not a loop or preview. Describe genre, mood, instrumentation, and tempo, supply your own lyrics, request an instrumental, or pin a style tag. Use for soundtracks under video, release-ready artist tracks, podcast and game themes, and demo sketches. Async: poll songId until model_version leaves 'pending'. — $0.50 USDC via x402 on Base (chain 8453).
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | Comma-separated keywords to tag the generated file. | |
| style | No | Specific musical style or genre tag (e.g., 'Hip Hop', 'Ambient', 'Rock'). Helping the AI focus on a specific sound. | |
| lyrics | No | Your custom lyrics. Required if custom_mode is true. | |
| prompt | Yes | Describe the song you want to create. Include genre, mood, instruments, and any specific vibe. Example: 'Upbeat 80s synthwave with driving bass and neon atmosphere' or 'A melancholic acoustic guitar ballad about rain'. | |
| custom_mode | No | Set to true to use your own lyrics provided in the 'lyrics' field. | |
| vocal_gender | No | Preferred gender for the vocalist ('m' for male, 'f' for female). | |
| durationSeconds | No | Duration of the track in seconds. Defaults to a full-length song. | |
| make_instrumental | No | If true, generates a track without vocals. |
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 does so well: it states the output format, async polling behavior (songId/model_version leaving 'pending'), and pricing/payment rails (USDC via x402 on Base). This goes well beyond the schema's field-level information.
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 front-loaded with the core purpose and every sentence carries weight—use cases, async behavior, and cost are all relevant. The first two sentences overlap slightly in saying this is text-prompt music generation, which keeps it just shy of a 5.
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, the description provides the necessary extra context: final MP3 output, async polling touchpoints, and payment details. It is terse about the actual poll mechanism and response shape, but the 100% input-schema coverage compensates for parameter-side gaps.
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 8 parameters, so the baseline is 3; the description adds useful mapping like 'Describe genre, mood, instrumentation, and tempo' (prompt), 'supply your own lyrics' (custom_mode/lyrics), 'request an instrumental' (make_instrumental), and 'pin a style tag' (style). This enriches without duplicating schema detail.
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 identifies a specific verb and resource: AI music generation from a text prompt producing a complete original song as an MP3. It also differentiates from the sibling media tools by specifying vocals, melody, full arrangement, and 'not a loop or preview'.
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?
It gives concrete, relevant use cases (soundtracks, release-ready tracks, podcast/game themes, demo sketches) and clarifies the output type. It does not explicitly name sibling alternatives or state when not to use this tool, so it falls short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
skyfire_create_musicAInspect
Generate one original song using a Skyfire PAY token scoped to seller service ea133c15-9ed4-4346-ad48-990b10aa1c87. The backend charges $0.50 USDC; it also accepts x402 payments. Supply the Skyfire token privately, never quote it in the answer. Paid calls queue a job; use skyfire_get_music to poll it. Do not retry a paid call without checking its outcome.
| Name | Required | Description | Default |
|---|---|---|---|
| prompt | Yes | Original song description. | |
| skyfireToken | Yes | Skyfire PAY or KYA-PAY token scoped to the Suede Create Music seller service. Treat as a bearer secret. | |
| make_instrumental | No | Generate without vocals. |
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 does so richly: cost ($0.50 USDC), alternate x402 payment acceptance, asynchronous job queuing, polling requirement, retry hazard, and the secret-handling rule for the token. This is exactly the context an agent needs before invoking a paid, non-immediate call.
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?
Five short sentences, each carrying distinct loadable information: capability, cost, payment alternatives, async polling, and safety/retry rules. Payment and privacy constraints are front-loaded where they matter.
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?
There is no output schema, and the description compensates by explaining that a paid call returns only a queued job that must be polled via skyfire_get_music. For a paid asynchronous generation tool with 3 params, nothing an agent needs to call and follow up correctly 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 already 100%, so the baseline is 3. The description adds meaning beyond the schema by tying skyfireToken to a specific seller service scope ID and instructing that it be supplied privately and never quoted, which is not captured in the schema text.
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 verb+resource ('Generate one original song') and pins the payment mechanism (Skyfire PAY token scoped to a named seller service). It differentiates from the similarly named sibling create_music only implicitly via the Skyfire payment framing, so it stops short of an explicit sibling distinction.
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?
Gives clear operational context: paid calls queue a job, poll with skyfire_get_music, and do not retry a paid call without checking its outcome. It names the follow-up tool and the retry condition, but does not say when to choose this over the sibling create_music or agent_* tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
skyfire_get_musicAInspect
Poll a Create Music songId for the finished track. This GET is free and does not require a Skyfire token or another x402 USDC payment.
| Name | Required | Description | Default |
|---|---|---|---|
| songId | Yes | songId returned by skyfire_create_music. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden and does well: it discloses the HTTP verb (GET), that it is free, and that no Skyfire token or x402 USDC payment is required — meaningful cost/auth context that a caller must know. It stops short of describing pending-vs-finished response 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?
Two tight sentences with zero filler. The core action (poll for the finished track) is front-loaded, and the cost/auth caveat follows as supporting detail.
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 and no annotations exist, so the description must handle behavior on its own. Polling semantics are implied but the description never says what is returned while the track is unfinished or how completion is signaled, leaving an agent guessing about the poll loop.
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 single songId parameter is fully documented (including its origin in skyfire_create_music). The description's reference to a 'Create Music songId' reinforces but does not add syntax or constraints 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.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Poll'), a specific resource ('a Create Music songId'), and the goal ('the finished track'). This clearly separates it from the sibling creation tools (create_music, skyfire_create_music) without the agent needing to open a schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage context is clear: you poll a songId that resulted from a prior create step, reinforced by the param description 'songId returned by skyfire_create_music.' It gives a strong positive trigger but states no explicit exclusion or termination condition (e.g., stop polling once finished).
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.
2 tool updates
- Added
skyfire_create_music - Added
skyfire_get_music
2 tool updates
- Changed
agent_image1 field changed- added
Input schema / properties / asyncModeAdded value: +{ + "description": "Return immediately with a jobId while the render runs. Can only switch async on: false is the same as omitting it, so a paid call stays asynchronous; ?async=false is the only way to force a blocking call.", + "type": "boolean" +}
- Changed
agent_video1 field changed- changed
Input schema / properties / asyncMode / descriptionPrevious value: -"If true, return immediately while the video renders asynchronously."New value: +"Return immediately with a jobId while the render runs. Can only switch async on: false is the same as omitting it, so a paid call stays asynchronous; ?async=false is the only way to force a blocking call."
1 tool update
- Changed
agent_image4 fields changed- removed
Input schema / additionalPropertiesRemoved value: -false - added
Input schema / properties / aspectRatioAdded value: +{ + "description": "Aspect ratio, e.g. '1:1', '16:9', '9:16'.", + "type": "string" +} - added
Input schema / properties / promptAdded value: +{ + "description": "Image description — subject, style, composition.", + "type": "string" +} - added
Input schema / requiredAdded value: +[ + "prompt" +]
1 tool update
- Changed
agent_image6 fields changed- added
Input schema / additionalPropertiesAdded value: +false - removed
Input schema / properties / aspectRatioRemoved value: -{ - "description": "Desired image aspect ratio.", - "enum": [ - "1:1", - "16:9", - "9:16" - ], - "type": "string" -} - removed
Input schema / properties / promptRemoved value: -{ - "description": "Text prompt for cover art, promo art, or a standalone campaign visual.", - "type": "string" -} - removed
Input schema / properties / seedRemoved value: -{ - "description": "Optional random seed for reproducible renders.", - "type": "integer" -} - removed
Input schema / properties / styleRemoved value: -{ - "description": "Optional visual style direction.", - "type": "string" -} - removed
Input schema / requiredRemoved value: -[ - "prompt" -]
1 tool update
- Changed
agent_image6 fields changed- removed
Input schema / additionalPropertiesRemoved value: -false - added
Input schema / properties / aspectRatioAdded value: +{ + "description": "Desired image aspect ratio.", + "enum": [ + "1:1", + "16:9", + "9:16" + ], + "type": "string" +} - added
Input schema / properties / promptAdded value: +{ + "description": "Text prompt for cover art, promo art, or a standalone campaign visual.", + "type": "string" +} - added
Input schema / properties / seedAdded value: +{ + "description": "Optional random seed for reproducible renders.", + "type": "integer" +} - added
Input schema / properties / styleAdded value: +{ + "description": "Optional visual style direction.", + "type": "string" +} - added
Input schema / requiredAdded value: +[ + "prompt" +]
1 tool update
- Added
agent_image
Related MCP Connectors
Pay-per-call tools for autonomous agents, settled in USDC on Base via x402.
63 pay-per-call tools for agents: vision, text, data, web, blockchain. USDC on Base via x402.
x402 toolkit for AI agents: paid web, AI, and Base chain tools per call in USDC. Free tools too.
Pay-per-call AI infra for agents: DeFi market data, LLM inference, STT/TTS. x402 v2, USDC on Base.
Related MCP Servers
- FlicenseAqualityDmaintenancePay-per-call tools for AI agents including trust checks, due diligence, market data, and human-verified approvals, settled in USDC on Base via the x402 protocol.16-

x402-video MCP serverofficial
AlicenseAqualityCmaintenanceEnables AI agents to generate videos by paying per call with USDC on Base via the x402 protocol, with no accounts or API keys required.652 npmMIT- AlicenseAqualityCmaintenanceProvides AI agents with 10 pay-per-call utility tools (QR generation, DNS lookup, OCR, etc.) using USDC on Base via the x402 protocol, with agent's private key never leaving the agent.1136 npmMIT
- AlicenseBqualityDmaintenanceConnects AI agents to the Base network for onchain data, batch USDC payments, and access to over 200 AI models. It utilizes the x402 protocol to enable pay-per-request functionality using USDC without requiring traditional API keys or accounts.10029 npm4MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.