Mochify - Automate Image Workflows
Execute compressão, redimensionamento, corte e conversão de imagens com linguagem natural.
Documentação
mochify-cli
Uma ferramenta de linha de comando e servidor MCP para mochify.app — uma API de compressão e conversão de imagens rápida e focada em privacidade, alimentada por um motor nativo em C++.
Comprima e converta imagens para formatos modernos (AVIF, JXL, WebP, Jpegli) a partir do seu terminal, ou dê a assistentes de IA como o Claude acesso direto ao processamento de imagens via Model Context Protocol.
Instalação
macOS (Homebrew):
brew tap getmochify/mochify
brew install mochify
Windows (Scoop):
scoop bucket add mochify https://github.com/getmochify/scoop-mochify
scoop install mochify
Linux / WSL:
# x86_64
curl -L https://github.com/getmochify/mochify-cli/releases/latest/download/mochify-linux-x86_64 -o mochify
chmod +x mochify
sudo mv mochify /usr/local/bin/
# arm64
curl -L https://github.com/getmochify/mochify-cli/releases/latest/download/mochify-linux-arm64 -o mochify
chmod +x mochify
sudo mv mochify /usr/local/bin/
Cargo (todas as plataformas):
cargo install mochify
Requer Rust. Opção mais fácil no Linux/WSL se você já tiver o toolchain.
Manual: Todos os binários em Releases.
A partir do código-fonte:
cargo install --path .
Autenticação
Entre com sua conta mochify.app para desbloquear sua cota completa:
mochify auth login
Isso abre seu navegador, onde você faz login e autoriza a CLI. As credenciais são salvas automaticamente em ~/.config/mochify/credentials.toml — não são necessárias variáveis de ambiente ou cópia manual de chaves. Tanto a CLI quanto o servidor MCP as detectam automaticamente.
mochify auth status # check whether you're signed in
mochify auth logout # remove saved credentials
Sem conta, você obtém 3 imagens por lote (baseado em IP). Com uma conta gratuita: 25 imagens/mês. Cadastre-se em mochify.app.
Uso da CLI
mochify [OPTIONS] <FILES>...
Opções
| Flag | Descrição |
|---|---|
-t, --type <FORMAT> | Formato de saída: jpg, png, webp, avif, jxl |
-w, --width <N> | Largura alvo em pixels |
-H, --height <N> | Altura alvo em pixels |
--crop | Cortar para dimensões exatas (guiado por saliência) |
-r, --rotation <DEG> | Rotação: 0, 90, 180, 270 |
-o, --output <DIR> | Diretório de saída (padrão: mesmo da entrada) |
-n, --name <NAME> | Nome base para o arquivo de saída (sem extensão) |
--clarity | Aplicar clareza (realce de contraste de tons médios — aparência mais nítida e detalhada) |
-p, --prompt <TEXT> | Prompt em linguagem natural — resolve todos os parâmetros automaticamente |
-k, --api-key <KEY> | Substituição de chave de API (ou defina a variável de ambiente MOCHIFY_API_KEY) |
Exemplos
# Convert to AVIF
mochify photo.jpg -t avif
# Resize and convert to WebP
mochify photo.jpg -t webp -w 800
# Batch convert a folder to AVIF at 1200px wide
mochify ./images/*.jpg -t avif -w 1200 -o ./compressed
# Natural-language prompt — let the AI pick the right params
mochify photo.jpg -p "convert to avif, 1200px wide"
mochify photo.jpg -p "optimise for eBay"
mochify photo.jpg -p "remove background and convert to WebP"
mochify photo.jpg -p "resize to 50%, strip EXIF, keep as WebP"
# Custom output name
mochify photo.jpg -t webp -n hero
mochify product.jpg -p "optimise for Shopify" -n product-main
# Pipe file paths from stdin
find . -name "*.jpg" | mochify -t webp -o ./out
cat images.txt | mochify -p "convert to avif 1200px wide" -o ./compressed
ls *.heic | mochify -t jpg
Nomenclatura do arquivo de saída
Por padrão, quando o formato e o diretório de saída correspondem à entrada, o resultado é salvo como {name}_mochified.{ext} para que fique sempre claro que algo aconteceu. Se esse arquivo já existir, um sufixo numérico é adicionado (_1, _2, etc.). Quando o formato muda (por exemplo, .jpg → .webp), a mudança de extensão já é inequívoca, então nenhum sufixo é adicionado.
Use -n, --name para definir um nome base explícito: mochify photo.jpg -t webp -n hero salva hero.webp. O caminho de prompt também suporta isso: mochify *.jpg -p "optimise for Shopify, name them product" produzirá product.webp, product_1.webp, etc.
Processamento de PDF
PDFs são detectados automaticamente pela extensão .pdf. Você pode dividir um PDF em um arquivo por página, ou rasterizar suas páginas em imagens. O resultado é salvo como .zip ao lado da entrada. (PDFs e imagens não podem ser misturados em um único comando — execute-os separadamente.)
| Flag | Descrição |
|---|---|
--op <OP> | split (um PDF por página) ou rasterize (páginas → imagens) |
-t, --type <FORMAT> | Formato de saída da rasterização: png, jpg, webp (padrão png) |
--dpi <N> | Resolução da rasterização em DPI (padrão 150) |
-q, --quality <N> | Qualidade da rasterização 1–100 para formatos com perda (jpg/webp) |
# Split a PDF into per-page PDFs
mochify document.pdf --op split
# Rasterize pages to PNG at 150 DPI
mochify document.pdf --op rasterize -t png --dpi 150
# High-res JPEGs for print
mochify document.pdf --op rasterize -t jpg --dpi 300 -q 90
# Or describe it in natural language
mochify document.pdf -p "split into pngs"
mochify report.pdf -p "rasterize to high-res jpegs"
Servidor MCP (Claude Desktop)
mochify pode ser executado como um servidor MCP, permitindo que o Claude processe imagens em seu nome diretamente da conversa.
Configuração
Execute mochify auth login primeiro, depois adicione o seguinte à configuração do Claude Desktop em ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"mochify": {
"command": "mochify",
"args": ["serve"]
}
}
}
Reinicie o Claude Desktop. O servidor mochify aparecerá em suas conexões e usará suas credenciais salvas automaticamente.
Uso
Descreva o que você deseja em linguagem natural com o caminho completo para sua imagem:
"Converta
/Users/me/Desktop/photo.jpgpara AVIF com 1000px de largura"
"Comprima todos os JPEGs em
/Users/me/projects/blog/images/para WebP e salve em/Users/me/projects/blog/compressed/"
"Otimize
/Users/me/Desktop/product.jpgpara o eBay"
"Remova o fundo de
/Users/me/Desktop/shirt.pnge salve como WebP"
"Rasterize
/Users/me/Desktop/report.pdfpara PNGs a 200 DPI"
O Claude chama a ferramenta squish para imagens e a ferramenta pdf para PDFs automaticamente, e informa o caminho salvo e o tamanho do arquivo.
API
Alimentado por https://api.mochify.app — /v1/squish para imagens e /v1/pdf para divisão/rasterização de PDF. Os arquivos são processados em memória e nunca gravados em disco.
| Plano | Ops/mês | Tamanho máximo de arquivo |
|---|---|---|
| Free (sem conta) | 3/lote | 20 MB |
| Free (com conta) | 25 | 20 MB |
| Seller ($7.99/mo) | 300 | 75 MB |
| Pro ($24.99/mo) | 1.200 | 75 MB |
Visite mochify.app para a interface web, preços e documentação da API.