Back to the catalog

qkconvert

File conversion API - images, audio, documents, data formats, archives, and hashing

Open source Repository Open in the app JSON README (API)

About

File conversion API - images, audio, documents, data formats, archives, and hashing

Details

Kind
Plugins
Topic
No topic detected
Publisher
necromunger
Origin
marketplace
Category
ferramentas
Last push
2026-04-09T14:24:08Z
Repository state
ativo
License
MIT
Added
2026-08-30 01:48:58
Updated
2026-08-30 01:48:58
Origin id
necromunger/qkconvert-plugin/qkconvert

README

# QkConvert Plugin for Claude

File conversion API plugin — convert images, audio, documents, and data formats directly from Claude Code and Cowork. [Try it in the sandbox](https://qkconvert.dev/sandbox) — 20 requests/day, no signup required.

## Install

**1. Add the marketplace:**
```
/plugin marketplace add Necromunger/qkconvert-plugin
```

**2. Install the plugin:**
```
/plugin install qkconvert@qkconvert-plugin
```

**3. Set your API key:**

Sign up free at [qkconvert.dev](https://qkconvert.dev/portal/signup) (Google, GitHub, or email), then create an API key in the dashboard.

**Claude Code (Mac/Linux)** — add to your shell config (`.bashrc`, `.zshrc`):
```bash
export QKCONVERT_API_KEY=sk_live_...
```

**Claude Code (Windows)** — run in CMD or PowerShell (persists across sessions):
```
setx QKCONVERT_API_KEY sk_live_...
```

**Cowork** — set in the plugin's environment configuration when prompted during install, or via Settings > Plugins > QkConvert > Environment Variables.

The plugin reads `QKCONVERT_API_KEY` from the environment and passes it as `Authorization: Bearer` to all API calls.

> **No key yet?** Try the [sandbox](https://qkconvert.dev/sandbox) first — 20 free requests per day with no signup.

## Skills

6 skills covering all 64 API endpoints. All endpoints **must** be called via curl (as the skills do), not by invoking the MCP tools directly - the OpenAPI-to-MCP bridge cannot transmit multipart/form-data bodies, so direct tool calls arrive with empty content regardless of whether you pass a file path or inline data. The MCP tools are exposed for discovery and documentation only.

| Skill | What it does | Credits | Endpoints covered |
|-------|-------------|---------|-------------------|
| `/convert-image` | Convert, resize, optimize, watermark, strip EXIF, thumbnails, QR codes, barcodes, OCR, batch ops, blurhash, GIF, crop | 1 | 18 |
| `/convert-audio` | Convert, trim, merge, split, normalize volume, generate waveform | 3 | 7 |
| `/process-document` | Merge, split, compress, watermark, extract text, render to image, create PDF, protect, office-to-pdf | 2 | 11 |
| `/convert-data` | Convert between CSV, JSON, XML, YAML, XLSX, TOML + Markdown to HTML | 1 | 25 |
| `/hash-file` | Compute MD5, SHA-1, SHA-256, SHA-512, CRC32 for any file | 1 | 1 |
| `/archive` | Create ZIP archives, inspect ZIP contents | 2 | 2 |

**Total: 64 endpoints across 7 categories** - see the [OpenAPI spec](https://qkconvert.dev/api/openapi.json) for the full inventory.

## Output Files

All skills save output files to the **current working directory** by default, using the original filename with the new extension (e.g. `photo.png` → `photo.webp`). If a file with that name already exists, the skill will ask before overwriting.

Skills are **manually chainable** — run one, then reference the output path in the next:
```
/convert-image photo.tiff to png
/hash-file photo.png sha256
```

Automatic piping between skills is not currently supported — each skill runs as an independent API call.

## Examples

**Image conversion with options:**
```
/convert-image photo.png to webp at quality 85, resize to 800px wide
```

**Trim an audio clip:**
```
/convert-audio podcast.mp3 trim from 1:30 to 5:45, output as wav
```

**Merge PDFs:**
```
/process-document merge chapter1.pdf chapter2.pdf chapter3.pdf
```

**Convert a spreadsheet to JSON:**
```
/convert-data sales.xlsx to json, pretty-printed
```

**Verify file integrity:**
```
/hash-file release.zip sha256
```

## Pricing

| Plan | Monthly | Credits | Rate limit | Overage |
|------|---------|---------|------------|---------|
| Free | $0 | 500/mo | 5 RPM | Hard cap |
| Hobby | $6 | 1,000/mo | 30 RPM | $0.006/credit |
| Starter | $15 | 5,000/mo | 60 RPM | $0.003/credit |
| Pro | $60 | 50,000/mo | 300 RPM | $0.002/credit |

**Credit costs by category:**

| Category | Credits | Endpoints |
|----------|---------|-----------|
| Images (convert, resize, optimize, watermark, QR, barcode, EXIF, thumbnails, metadata, OCR, batch ops, blurhash, GIF, crop) | 1 | 18 |
| Data (CSV, JSON, XML, YAML, XLSX, TOML, Markdown — 25 conversion pairs) | 1 | 25 |
| File utilities (hash/checksum) | 1 | 1 |
| Documents (merge, split, compress, watermark, text, to-image, from-images, text-to-pdf, metadata, protect, office-to-pdf) | 2 | 11 |
| Archives (ZIP create, ZIP inspect) | 2 | 2 |
| Audio (convert, trim, merge, split, normalize, waveform, metadata) | 3 | 7 |

Free tier: 500 credits total per month across all categories. For example, 500 image conversions, or 166 audio conversions, or any mix.

## Limits

- **Max file size:** 10 MB (authenticated), 2 MB (sandbox)
- **Supported image input:** JPEG, PNG, WebP, AVIF, GIF, BMP, TIFF, ICO, SVG
- **Supported audio input:** MP3, WAV, FLAC, OGG, AAC, AIFF
- **Audio output:** MP3, WAV, FLAC only
- **Documents:** PDF only
- **Archives:** ZIP only

## Error Reference

| HTTP Code | Error code | Meaning |
|-----------|-----------|---------|
| 400 | `bad_request` | Malformed input, unsupported format, missing parameter, or file too large |
| 401 | `unauthorized` | API key missing or invalid — check `QKCONVERT_API_KEY` |
| 403 | `quota_exceeded` | Monthly credits exhausted (free tier). Upgrade or wait for billing reset |
| 429 | `rate_limited` | Too many requests — wait for `Retry-After` header value |
| 500 | `internal_error` | Server error (rare). Retry the request |

Error responses are JSON: `{"error": {"code": "bad_request", "message": "Unsupported format: 'xyz'"}}`

## Manual MCP Config

If you prefer to configure MCP directly instead of using the plugin:

```json
{
  "mcpServers": {
    "qkconvert": {
      "command": "npx",
      "args": ["-y", "@ivotoby/openapi-mcp-server"],
      "env": {
        "API_BASE_URL": "https://qkconvert.dev",
        "OPENAPI_SPEC_PATH": "https://qkconvert.dev/api/openapi.json",
        "API_HEADERS": "Authorization:Bearer YOUR_API_KEY"
      }
    }
  }
}
```

## Plugin Structure

```
.claude-plugin/
  plugin.json           # Plugin manifest (name, version, description)
  marketplace.json      # Marketplace catalog for discovery
.mcp.json               # MCP server config (OpenAPI bridge)
skills/
  convert-image/SKILL.md
  convert-audio/SKILL.md
  process-document/SKILL.md
  convert-data/SKILL.md
  hash-file/SKILL.md
  archive/SKILL.md
```

## Links

- [Website](https://qkconvert.dev)
- [API Docs](https://qkconvert.dev/docs) (interactive Swagger UI)
- [Sandbox](https://qkconvert.dev/sandbox) — try 20 requests/day without signing up
- [OpenAPI Spec](https://qkconvert.dev/api/openapi.json)
- [llms.txt](https://qkconvert.dev/llms.txt) — AI-readable API reference

## License

MIT — see [LICENSE](LICENSE).

More