Skip to main content
Glama
README.md
# @retomagic/mcp

An [MCP](https://modelcontextprotocol.io) server for the **Magicly** image & video
generation API. Lets any MCP client (Claude Desktop, IDEs, agents) generate media
through your Magicly developer API key.

## Setup

1. Create an API key at **dev.magicly.ai → API Keys**.
2. Add the server to your MCP client. For Claude Desktop
   (`claude_desktop_config.json`):

```json
{
  "mcpServers": {
    "magicly": {
      "command": "npx",
      "args": ["-y", "@retomagic/mcp"],
      "env": { "MAGICLY_API_KEY": "sk_live_..." }
    }
  }
}
```

Restart the client. That's it.

## Tools

- **`list_models`** — list available models with id, media type, price ($) and inputs.
- **`generate`** — generate an image/video: `{ model, prompt, aspect_ratio?, size?, seconds?, seed?, image? }`. Creates a prediction and waits for the result, returning the output URL(s). Pass `wait: false` to return immediately with an id to poll.
- **`get_prediction`** — fetch a prediction's status/output by `id`.

## Config

| Env | Default | Description |
| --- | --- | --- |
| `MAGICLY_API_KEY` | – | **Required.** Your developer API key (`sk_live_…`). |
| `MAGICLY_API_URL` | `https://api.magicly.ai/v1` | API base URL (override for staging). |

Billing is metered in credits (1000 credits = \$1) against your organization's
balance. See dev.magicly.ai for pricing, keys and usage.

## Development

```
npm install
npm run build        # → dist/
MAGICLY_API_KEY=sk_live_... npm start
```

TDQS

A4.3/5.0

Scored across 3 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: generating content, checking prediction status, and listing available models. There is no overlap or ambiguity.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern with lowercase and underscores (generate, get_prediction, list_models), making them predictable and easy to understand.

Tool Count5/5

Three tools is appropriate for the server's scope: model discovery, content generation, and result retrieval. Each tool serves a necessary function without excess or deficiency.

Completeness5/5

The tool surface covers the full workflow: listing models to know available options, generating content with optional polling, and checking results asynchronously. No obvious gaps for the intended purpose.

Maintenance

ActivityStale
ResponsivenessNo issues