# Magic Hour

```json
{
  "name": "Magic Hour",
  "slug": "magic_hour",
  "url": "https://composio.dev/toolkits/magic_hour",
  "markdown_url": "https://composio.dev/toolkits/magic_hour.md",
  "logo_url": "https://logos.composio.dev/api/magic_hour",
  "categories": [
    "design & creative tools"
  ],
  "is_composio_managed": false,
  "updated_at": "2026-09-24T15:46:10.508Z"
}
```

![Magic Hour logo](https://logos.composio.dev/api/magic_hour)

## Description

Securely connect your AI agents and chatbots (Claude, ChatGPT, Cursor, etc) with Magic Hour MCP or direct API to generate images, edit videos, transcribe and enhance audio, and manage media assets through natural language.

## Summary

Magic Hour is an AI media creation platform for generating and editing images, videos, and audio through a unified API.
It streamlines multimedia production so teams can programmatically create and iterate on visual and audio assets faster.

## Categories

- design & creative tools

## Toolkit Details

- Tools: 38

## Images

- Logo: https://logos.composio.dev/api/magic_hour

## Authentication

- **Api Key**
  - Type: `api_key`
  - Description: Api Key authentication for Magic Hour.
  - Setup:
    - Configure Api Key credentials for Magic Hour.
    - Use the credentials when creating an auth config in Composio.

## Suggested Prompts

- Generate three 16:9 hero image variations
- Create 30-second promo video from script
- Transcribe and denoise a podcast episode

## Supported Tools

| Tool slug | Name | Description |
|---|---|---|
| `MAGIC_HOUR_CREATE_AI_CLOTHES_CHANGE` | Create AI Clothes Change | Start a credit-consuming asynchronous clothes-change image job from person and garment images. Each image costs 25 credits. The operation is documented for Free accounts but requires sufficient credits. It returns an image project ID immediately, not a completed image; poll MAGIC_HOUR_GET_IMAGE_PROJECT until status is complete or error. |
| `MAGIC_HOUR_CREATE_AI_FACE_EDIT` | Create AI Face Edit | Start a credit-consuming asynchronous edit of facial features in an image. This Free-tier operation returns an image project ID and credit charge immediately, not a completed image. Pass the ID to MAGIC_HOUR_GET_IMAGE_PROJECT and poll until status is complete or error. |
| `MAGIC_HOUR_CREATE_AI_GIF` | Create AI GIF | Start a credit-consuming asynchronous prompt-based animation in GIF, MP4, or WebM format. This operation costs 50 credits and returns an image project ID immediately, not completed media. Pass the ID to MAGIC_HOUR_GET_IMAGE_PROJECT and poll until status is complete, error, or canceled. |
| `MAGIC_HOUR_CREATE_AI_HEADSHOT` | Create AI Headshot | Start a credit-consuming asynchronous headshot generation from an image containing one detectable face. Each headshot costs 50 credits. This returns an image project ID immediately, not a completed image; poll MAGIC_HOUR_GET_IMAGE_PROJECT until status is complete, error, or canceled. |
| `MAGIC_HOUR_CREATE_AI_IMAGE` | Create AI Image | Start a credit-consuming asynchronous text-to-image job. The request returns a project ID and immediate credit charge, not completed images. Model, image-count, resolution, cost, and tier availability vary by option; only flux-2-klein, flux-schnell, and z-image-turbo are documented for Free. Pass the returned ID to MAGIC_HOUR_GET_IMAGE_PROJECT and poll until status is complete or error. |
| `MAGIC_HOUR_CREATE_AI_IMAGE_EDIT` | Create AI Image Edit | Start a credit-consuming asynchronous prompt-based edit of one or more images. Model, resolution, input-image limits, cost, and tier availability vary by option. Credits are charged when the request is made. Pass the returned project ID to MAGIC_HOUR_GET_IMAGE_PROJECT and poll until status is complete or error. |
| `MAGIC_HOUR_CREATE_AI_MEME` | Create AI Meme | Start a credit-consuming asynchronous meme generation from a topic and a documented Magic Hour template. Each meme costs 10 credits. This returns an image project ID immediately, not a completed image; pass the ID to MAGIC_HOUR_GET_IMAGE_PROJECT and poll until status is complete or error. |
| `MAGIC_HOUR_CREATE_AI_QR_CODE` | Create AI QR Code | Start an asynchronous artistic QR-code generation for supplied content. Magic Hour documents each AI QR code as costing 0 credits. The operation returns an image project ID and credits charged immediately, not a completed image; poll MAGIC_HOUR_GET_IMAGE_PROJECT until status is complete or error. |
| `MAGIC_HOUR_CREATE_AI_VIDEO_EDIT` | Create AI Video Edit | Start a credit-consuming asynchronous prompt-based edit of an input video. Free accounts default to the ltx-2.3 model and 480p; other model and resolution options depend on the connected account's plan. The returned credit charge is initially an estimate. Pass the returned project ID to MAGIC_HOUR_GET_VIDEO_PROJECT and poll until status is complete, error, or canceled. |
| `MAGIC_HOUR_CREATE_AI_VOICE` | Create AI Voice | Start credit-consuming asynchronous speech generation from text using a documented preset voice. Each character costs 0.1 credits, rounded up to a whole credit. This returns an audio project ID and immediate credit charge, not completed audio; pass the ID to MAGIC_HOUR_GET_AUDIO_PROJECT and poll until status is complete or error. |
| `MAGIC_HOUR_CREATE_AI_VOICE_CLONE` | Create AI Voice Clone | Start credit-consuming asynchronous speech generation by cloning an input voice recording. Each prompt character costs 0.1 credits, rounded up to a whole credit, and sufficient credits are required. This returns an audio project ID and immediate credit charge, not completed audio; pass the ID to MAGIC_HOUR_GET_AUDIO_PROJECT and poll until status is complete or error. |
| `MAGIC_HOUR_CREATE_ANIMATION_VIDEO` | Create Animation Video | Start one credit-consuming asynchronous animation render with explicit dimensions, frame rate, duration, style, and assets. The request returns immediately with a video project ID and estimated credits charged; pass the ID to MAGIC_HOUR_GET_VIDEO_PROJECT and poll until complete, error, or canceled. |
| `MAGIC_HOUR_CREATE_AUDIO_TO_VIDEO` | Create Audio-to-Video | Start a credit-consuming asynchronous video generation job from audio and optional visual style controls. Free accounts can use the documented 480p default; higher resolutions depend on the connected account's plan. Returns a video project ID immediately; poll MAGIC_HOUR_GET_VIDEO_PROJECT until the project is complete, error, or canceled. Requires sufficient credits, and the initial credits_charged value is an estimate until rendering finishes. |
| `MAGIC_HOUR_CREATE_BACKGROUND_REMOVAL` | Create Background Removal | Start a credit-consuming asynchronous image job that removes a background or replaces it with an optional supplied image. Each image costs 5 credits. The operation is documented for Free accounts but requires sufficient credits. It returns an image project ID immediately, not a completed image; poll MAGIC_HOUR_GET_IMAGE_PROJECT until status is complete or error. |
| `MAGIC_HOUR_CREATE_BODY_SWAP` | Create Body Swap | Start a credit-consuming asynchronous body-swap image job that places a person into a scene at the selected resolution. Resolution determines the model and credit cost. This returns an image project ID immediately, not a completed image; pass the ID to MAGIC_HOUR_GET_IMAGE_PROJECT and poll until status is complete or error. Credits are charged when this request is made and refunded if generation fails. |
| `MAGIC_HOUR_CREATE_CHARACTER_ANIMATION_VIDEO` | Create Character Animation Video | Animate a reference character with motion transferred from a source video in a credit-consuming asynchronous job. The documented 480p default is available on Free; 720p depends on the connected account's plan. This returns a project ID and estimated credit charge, not a completed video. Poll MAGIC_HOUR_GET_VIDEO_PROJECT with the returned ID until status is complete, error, or canceled. |
| `MAGIC_HOUR_CREATE_CHARACTER_REPLACEMENT_VIDEO` | Create Character Replacement Video | Replace a source-video subject with a reference character in a credit-consuming asynchronous video job. The documented 480p default is available on Free; 720p depends on the connected account's plan. This returns a project ID and estimated credit charge, not a completed video. Poll MAGIC_HOUR_GET_VIDEO_PROJECT with the returned ID until status is complete, error, or canceled. |
| `MAGIC_HOUR_CREATE_FACE_SWAP_PHOTO` | Create Face Swap Photo | Start a credit-consuming asynchronous photo face swap using one source face for all detected faces or up to five individual face mappings. Each photo costs 10 credits. The operation returns an image project ID and credit charge immediately, not a completed image; poll MAGIC_HOUR_GET_IMAGE_PROJECT until status is complete or error. |
| `MAGIC_HOUR_CREATE_FACE_SWAP_VIDEO` | Create Face Swap Video | Start a credit-consuming asynchronous video face-swap job using one image for all detected faces or up to five individual face mappings. The operation is documented for Free accounts but requires sufficient credits. It returns a project ID and estimated charge immediately, not a completed video; poll MAGIC_HOUR_GET_VIDEO_PROJECT until status is complete, error, or canceled. |
| `MAGIC_HOUR_CREATE_HEAD_SWAP` | Create Head Swap | Start a credit-consuming asynchronous head-swap image job from body and head images. Each image costs 10 credits. This returns an image project ID immediately, not a completed image; pass the ID to MAGIC_HOUR_GET_IMAGE_PROJECT and poll until status is complete or error. Credits are charged when this request is made and refunded if generation fails. |
| `MAGIC_HOUR_CREATE_IMAGE_TO_VIDEO` | Create Image-to-Video | Start a credit-consuming asynchronous video generation job from a still image and optional final frame, prompt, audio, model, and resolution controls. Free accounts default to ltx-2.5 at 480p; other model and resolution options depend on the connected account's plan. Returns a project ID and estimated credit charge immediately; poll MAGIC_HOUR_GET_VIDEO_PROJECT until status is complete, error, or canceled. |
| `MAGIC_HOUR_CREATE_IMAGE_UPSCALE` | Create Image Upscale | Start a credit-consuming asynchronous 2x or 4x image upscale. A 4x upscale requires a Creator, Pro, or Business tier, while mode affects the credit charge. This returns an image project ID immediately, not a completed image; poll MAGIC_HOUR_GET_IMAGE_PROJECT until status is complete or error. |
| `MAGIC_HOUR_CREATE_LIP_SYNC_VIDEO` | Create Lip Sync Video | Start a credit-consuming asynchronous lip-sync video job from audio and a file or YouTube video. This returns a project ID immediately, not the completed video; poll MAGIC_HOUR_GET_VIDEO_PROJECT until complete, error, or canceled. The returned credit charge is an estimate, may be adjusted after rendering based on actual output FPS, and is refunded if generation fails. |
| `MAGIC_HOUR_CREATE_PHOTO_COLORIZATION` | Create Photo Colorization | Start a credit-consuming asynchronous colorization of a photo. Each image costs 10 credits. This returns an image project ID immediately, not a completed image; poll MAGIC_HOUR_GET_IMAGE_PROJECT until status is complete or error. |
| `MAGIC_HOUR_CREATE_SUBTITLED_VIDEO` | Create Subtitled Video | Start a credit-consuming asynchronous job that transcribes speech and burns styled subtitles into an MP4 video. This returns a project ID immediately, not the completed video; poll MAGIC_HOUR_GET_VIDEO_PROJECT until complete, error, or canceled. The initial credit charge is an estimate, can be adjusted after rendering, and is refunded if generation fails. |
| `MAGIC_HOUR_CREATE_TALKING_PHOTO` | Create Talking Photo | Start a credit-consuming asynchronous talking-photo video from an image and audio. This operation is documented for Free accounts, but requires enough credits and available models and resolutions depend on the connected account's tier. It returns immediately with a video project ID; pass that ID to MAGIC_HOUR_GET_VIDEO_PROJECT and poll until complete, error, or canceled. |
| `MAGIC_HOUR_CREATE_TEXT_TO_VIDEO` | Create Text-to-Video | Start a credit-consuming asynchronous video generation job from a text prompt and model/output options. Free accounts default to ltx-2.5 at 480p; model, duration, aspect ratio, resolution, and audio availability vary by plan. This returns a project ID and estimated credit charge, not a completed video; poll MAGIC_HOUR_GET_VIDEO_PROJECT until status is complete, error, or canceled. |
| `MAGIC_HOUR_CREATE_VIDEO_TO_VIDEO` | Create Video-to-Video | Start a credit-consuming asynchronous stylized transformation of an input video. Free accounts can use the documented lower-resolution configuration; higher output quality depends on the connected account's plan. Returns a project ID and estimated credit charge immediately, not a completed video. Poll MAGIC_HOUR_GET_VIDEO_PROJECT with the returned ID until status is complete, error, or canceled. |
| `MAGIC_HOUR_DELETE_AUDIO_PROJECT` | Delete Audio Project | Permanently delete one rendered Magic Hour audio project by ID. This destructive operation is irreversible and is not a way to cancel a queued or rendering audio project. Success requires exactly HTTP 204 with an empty body. |
| `MAGIC_HOUR_DELETE_IMAGE_PROJECT` | Delete Image Project | Permanently delete one Magic Hour image project and its rendered images by ID. This destructive operation is irreversible and is not a way to cancel a render. Success requires exactly HTTP 204 with an empty body. |
| `MAGIC_HOUR_DELETE_VIDEO_PROJECT` | Delete Video Project | Permanently delete one rendered Magic Hour video project by ID. This destructive operation is irreversible and is not a way to cancel a queued or rendering video. Success requires exactly HTTP 204 with an empty body. |
| `MAGIC_HOUR_DETECT_FACES` | Detect Faces | Start asynchronous face detection for an image or video and return a task ID. Pass the returned ID to MAGIC_HOUR_GET_FACE_DETECTION and poll until status is complete or error. Face detection is currently documented as free, though pricing may change. |
| `MAGIC_HOUR_GENERATE_ASSET_UPLOAD_URLS` | Generate Asset Upload URLs | Generate ordered, expiring signed upload URLs and Magic Hour file paths for image, video, or audio assets. This allocates upload URLs but does not upload file bytes. Treat each signed URL query string as sensitive: do not log or persist it. |
| `MAGIC_HOUR_GET_ACCOUNT` | Get Account | Return the connected Magic Hour account's tier, available credits, identity, and subscription details; use this before generation to check entitlement and balance. |
| `MAGIC_HOUR_GET_AUDIO_PROJECT` | Get Audio Project | Get an audio project's asynchronous status, error, credit charge, and temporary downloads. Poll until complete, error, or canceled. Download URLs expire at their expires_at timestamps; call this tool again afterward to obtain refreshed URLs. |
| `MAGIC_HOUR_GET_FACE_DETECTION` | Get Face Detection | Get face-detection status and detected face paths by task ID. Poll only IDs returned by MAGIC_HOUR_DETECT_FACES and stop on complete or error: live probing showed that arbitrary and malformed IDs can return 200 queued indefinitely, so a successful response does not prove the task exists. |
| `MAGIC_HOUR_GET_IMAGE_PROJECT` | Get Image Project | Get an image project's asynchronous status, error, credit charge, and temporary downloads. Poll until complete, error, or canceled. Download URLs expire at their expires_at timestamps; call this tool again afterward to obtain refreshed URLs. |
| `MAGIC_HOUR_GET_VIDEO_PROJECT` | Get Video Project | Get a video project's asynchronous status, error, credit charge, and temporary downloads. Poll until complete, error, or canceled. Download URLs expire after 24 hours; call this tool again to refresh expired URLs. |

## Supported Triggers

None listed.

## Installation and MCP Setup

### Path 1: SDK Installation

#### Path 1, Step 1: Install Composio

Install the Composio SDK, the OpenAI provider, and the OpenAI SDK
```python
pip install composio composio_openai openai
```

```typescript
npm install @composio/core @composio/openai openai
```

#### Path 1, Step 2: Create a Composio session

Initialize Composio with the OpenAI Responses provider and create a session scoped to Magic Hour
```python
import json
from openai import OpenAI
from composio import Composio
from composio_openai import OpenAIResponsesProvider

composio = Composio(provider=OpenAIResponsesProvider())
client = OpenAI()

session = composio.create(user_id="your-user-id", toolkits=["magic_hour"])
tools = session.tools()
```

```typescript
import OpenAI from "openai";
import { Composio } from "@composio/core";
import { OpenAIResponsesProvider } from "@composio/openai";

const composio = new Composio({ provider: new OpenAIResponsesProvider() });
const client = new OpenAI();

const session = await composio.create("your-user-id", { toolkits: ["magic_hour"] });
const tools = await session.tools();
```

#### Path 1, Step 3: Run Magic Hour tools with your agent

Send a request, execute the Magic Hour tool calls through the session, and print the final answer
```python
response = client.responses.create(
    model="gpt-5.6-sol",
    tools=tools,
    input=[{"role": "user", "content": "Generate three 16:9 hero image variations"}],
)

while True:
    tool_calls = [o for o in response.output if o.type == "function_call"]
    if not tool_calls:
        break
    results = composio.provider.handle_tool_calls(response=response, session=session)
    response = client.responses.create(
        model="gpt-5.6-sol",
        tools=tools,
        previous_response_id=response.id,
        input=[
            {"type": "function_call_output", "call_id": call.call_id, "output": json.dumps(results[i])}
            for i, call in enumerate(tool_calls)
        ],
    )

print(response.output_text)
```

```typescript
let response = await client.responses.create({
  model: "gpt-5.6-sol",
  tools,
  input: [{ role: "user", content: "Generate three 16:9 hero image variations" }],
});

while (response.output.some((o) => o.type === "function_call")) {
  const outputs = await composio.provider.handleToolCalls(session, response.output);
  response = await client.responses.create({
    model: "gpt-5.6-sol",
    tools,
    previous_response_id: response.id,
    input: outputs,
  });
}

console.log(response.output_text);
```

### Path 2: MCP Server Setup

#### Path 2, Step 1: Install Composio

Install the Composio SDK and your agent framework
```python
pip install composio claude-agent-sdk
```

```typescript
npm install @composio/core ai @ai-sdk/mcp @ai-sdk/openai
```

#### Path 2, Step 2: Create a session with MCP enabled

Create a session scoped to Magic Hour and read its MCP URL and headers
```python
from composio import Composio

composio = Composio()
session = composio.create(user_id="your-user-id", toolkits=["magic_hour"], mcp=True)
```

```typescript
import { Composio } from "@composio/core";

const composio = new Composio();
const { mcp } = await composio.create("your-user-id", {
  toolkits: ["magic_hour"],
  mcp: true,
});
```

#### Path 2, Step 3: Connect your agent to the MCP server

Pass the session's MCP URL and headers to your agent and run a Magic Hour request
```python
import asyncio
from claude_agent_sdk import ClaudeSDKClient, ClaudeAgentOptions, AssistantMessage, TextBlock

options = ClaudeAgentOptions(
    mcp_servers={
        "composio": {
            "type": "http",
            "url": session.mcp.url,
            "headers": session.mcp.headers,
        }
    },
    system_prompt="You are a helpful assistant with access to Magic Hour tools.",
    tools=[],
    allowed_tools=["mcp__composio__*"],
)

async def main():
    async with ClaudeSDKClient(options=options) as client:
        await client.query("Generate three 16:9 hero image variations")
        async for message in client.receive_response():
            if isinstance(message, AssistantMessage):
                for block in message.content:
                    if isinstance(block, TextBlock):
                        print(block.text)

asyncio.run(main())
```

```typescript
import { createMCPClient } from "@ai-sdk/mcp";
import { openai } from "@ai-sdk/openai";
import { generateText, stepCountIs } from "ai";

const client = await createMCPClient({
  transport: { type: "http", url: mcp.url, headers: mcp.headers },
});

const { text } = await generateText({
  model: openai("gpt-5.6-sol"),
  tools: await client.tools(),
  prompt: "Generate three 16:9 hero image variations",
  stopWhen: stepCountIs(10),
});

console.log(text);
await client.close();
```

## Why Use Composio?

### 1. AI Native Magic Hour Integration

- Supports both Magic Hour MCP and direct API based integrations
- Structured, LLM-friendly schemas for reliable tool execution
- Rich coverage for reading, writing, and querying your Magic Hour data

### 2. Managed Auth

- Built-in OAuth handling with automatic token refresh and rotation
- Central place to manage, scope, and revoke Magic Hour access
- Per user and per environment credentials instead of hard-coded keys

### 3. Agent Optimized Design

- Tools are tuned using real error and success rates to improve reliability over time
- Comprehensive execution logs so you always know what ran, when, and on whose behalf

### 4. Enterprise Grade Security

- Fine-grained RBAC so you control which agents and users can access Magic Hour
- Scoped, least privilege access to Magic Hour resources
- Full audit trail of agent actions to support review and compliance

## Use Magic Hour with any AI Agent Framework

Choose a framework you want to connect Magic Hour with:

- [ChatGPT](https://composio.dev/toolkits/magic_hour/framework/chatgpt)
- [Claude Cowork](https://composio.dev/toolkits/magic_hour/framework/claude-cowork)
- [Hermes](https://composio.dev/toolkits/magic_hour/framework/hermes-agent)
- [Atomic Agent](https://composio.dev/toolkits/magic_hour/framework/atomic-agent)

## Related Toolkits

- [Figma](https://composio.dev/toolkits/figma) - Figma is a collaborative interface design tool for teams and individuals. It streamlines design workflows with real-time collaboration and easy sharing.
- [Abyssale](https://composio.dev/toolkits/abyssale) - Abyssale is a creative automation platform for generating images, videos, GIFs, PDFs, and HTML5 content programmatically. It streamlines and scales visual content production for marketing, design, and operations teams.
- [Alttext ai](https://composio.dev/toolkits/alttext_ai) - AltText.ai is a service that generates alt text for images automatically. It helps boost accessibility and SEO for your visual content.
- [Are.na](https://composio.dev/toolkits/arena) - Are.na is a creative research platform for collecting images, links, notes, and ideas in channels. Use it to organize inspiration, build knowledge maps, and connect research across projects.
- [Bannerbear](https://composio.dev/toolkits/bannerbear) - Bannerbear is an API-driven platform for generating images and videos automatically at scale. It helps businesses create custom graphics, social visuals, and marketing assets using powerful templates.
- [Bannerbite](https://composio.dev/toolkits/bannerbite) - Bannerbite is a creative automation platform for generating images and videos from reusable projects and templates. It helps teams produce on-brand visual assets faster without rebuilding designs from scratch.
- [BeatAPI](https://composio.dev/toolkits/beatapi) - BeatAPI is an asynchronous API platform for AI image, video, and music workflows. It enables scalable generation, video analysis, uploads, and ecommerce video pipelines.
- [Builder.io](https://composio.dev/toolkits/builder_io) - Builder.io is a visual development platform for managing content, models, assets, and Space configuration. Use it to ship editable digital experiences faster without waiting on every code change.
- [Canva](https://composio.dev/toolkits/canva) - Canva is a drag-and-drop design suite for creating professional graphics, presentations, and marketing materials. It makes it easy for anyone to design with beautiful templates and a vast library of elements.
- [Canva MCP](https://composio.dev/toolkits/canva_mcp) - Canva MCP is Canva's remote MCP server for accessing designs and content. It centralizes design assets and enables programmatic design workflows.
- [Claid ai](https://composio.dev/toolkits/claid_ai) - Claid.ai delivers AI-driven image editing APIs for tasks like background removal, upscaling, and color correction. It helps automate and enhance image workflows with powerful, developer-friendly tools.
- [Cloudinary](https://composio.dev/toolkits/cloudinary) - Cloudinary is a cloud-based platform for managing, uploading, and transforming images and videos. It streamlines media workflows and delivers optimized assets globally.
- [Contentdrips](https://composio.dev/toolkits/contentdrips) - Contentdrips is an asynchronous rendering API for branded graphics and carousels. It turns reusable templates into on-brand social visuals at scale.
- [Creatomate](https://composio.dev/toolkits/creatomate) - Creatomate is an API for generating automated videos, images, GIFs, and reusable media templates. Use it to turn structured data into polished visual content at scale.
- [Cults](https://composio.dev/toolkits/cults) - Cults is a digital marketplace for 3D printing models, connecting designers and makers. It lets creators share, sell, and discover a huge variety of printable designs easily.
- [DeepImage](https://composio.dev/toolkits/deepimage) - DeepImage is an AI-powered image enhancer and upscaler. Get higher-quality images with just a few clicks.
- [Dreamstudio](https://composio.dev/toolkits/dreamstudio) - DreamStudio is Stability AI’s platform for generating and editing images with AI. It lets you easily turn ideas into stunning visuals, fast.
- [Dribbble](https://composio.dev/toolkits/dribbble) - Dribbble is a design community and publishing platform for managing shots, projects, and attachments. Use it to showcase work, collect feedback, and organize creative designs.
- [Dynamic Mockups](https://composio.dev/toolkits/dynamic_mockups) - Dynamic Mockups is an API platform for generating product mockups, rendering templates, and managing visual asset catalogs. Use it to automate high-quality product visuals, AI images, and motion assets at scale.
- [Dynapictures](https://composio.dev/toolkits/dynapictures) - Dynapictures is a cloud-based platform for generating personalized images at scale. Instantly create hundreds of custom visuals using your data sources, like Google Sheets.

## Frequently Asked Questions

### Do I need my own developer credentials to use Magic Hour with Composio?

Yes, Magic Hour requires you to configure your own API key credentials. Once set up, Composio handles secure credential storage and API request handling for you.

### Can I use multiple toolkits together?

Yes! Composio's Tool Router enables agents to use multiple toolkits. [Learn more](https://docs.composio.dev/tool-router/overview).

### Is Composio secure?

Composio is SOC 2 and ISO 27001 compliant with all data encrypted in transit and at rest. [Learn more](https://trust.composio.dev).

### What if the API changes?

Composio maintains and updates all toolkit integrations automatically, so your agents always work with the latest API versions.

---
[See all toolkits](https://composio.dev/toolkits) · [Composio docs](https://docs.composio.dev/llms.txt)
