Torna ai casi di studioCasi di studio

Processore di Immagine MCP

Un server MCP open-source che dà agli assistenti AI vere capacità di elaborazione delle immagini: scarica, comprimi, converti in batch, rinomina e leggi il testo dalle immagini, tutto tramite conversazione.

Processore di Immagine MCP
6MCP tools
35+Input formats
100%Local OCR, no API key

Panoramica

Ogni progetto di sito web finisce con la stessa incombenza: una cartella di immagini troppo grandi che devono essere convertite, compresse, rinominate e ricollegate nel codice. È un lavoro meccanico - esattamente il tipo di lavoro che un assistente AI dovrebbe gestire. Il problema: gli assistenti possono parlare delle immagini, ma non possono toccarle.

Image Processor MCP risolve questo problema. È un server Model Context Protocol, pubblicato su npm, che rende disponibili sei strumenti per immagini di livello produttivo a qualsiasi assistente compatibile con MCP (Claude Desktop, estensioni VS Code e altri). Una sola riga `npx -y image-processor-mcp` in un file di configurazione e il tuo assistente può scaricare, comprimere, convertire in batch, fare OCR e mantenere il tuo codice sincronizzato con i file rinominati.

Obiettivi di progettazione

  • Locale-primario: L'OCR funziona al 100% sul dispositivo tramite tesseract.js - il contenuto dell'immagine non lascia mai il tuo disco e non è necessaria alcuna chiave API.

  • Output deterministici su cui un LLM può fare affidamento: ogni strumento restituisce risultati strutturati (dimensioni, rapporti, fasi di qualità, percorsi dei report) piuttosto che prose.

  • Sicurezza prima della velocità: le operazioni in batch generano report e mappature; la sincronizzazione dei nomi dei file è di prova per impostazione predefinita e rifiuta file di mappatura obsoleti.

  • Formati del mondo reale: 35+ formati di input accettati, 10 formati di output inclusi WebP, AVIF e JPEG XL.

L'ingegneria interessante in un server MCP raramente riguarda il percorso facile: riguarda far sì che ogni caso limite produca qualcosa su cui un LLM possa agire invece di inventare informazioni.

Cosa fa

download_image

Recupera un'immagine da un URL o cerca su Pexels tramite parola chiave - quindi facoltativamente comprimila e converti nella stessa chiamata.

compress_image

Converti e comprimi una singola immagine in 10 formati di output, con aumento della qualità ricorsivo fino a raggiungere una dimensione del file target in KB.

compress_directory

Elaborare in batch un'intera directory in modo ricorsivo - struttura preservata, nomi dei file normalizzati, con un report in markdown auto-generato e un file di mappature.

sync_filenames

Scansiona il tuo codice e riscrivi ogni riferimento alle immagini rinominate - esecuzione di prova per impostazione predefinita, con anteprime riga per riga prima di qualsiasi modifica.

extract_text

OCR tramite tesseract.js in oltre 100 lingue, eseguibile interamente sul tuo computer - nessuna API cloud, nessuna chiave, nessun dato lascia il tuo disco.

get_acknowledgement

Strumento auto-documentante che restituisce l'intero riferimento alla configurazione, in modo che l'assistente possa imparare da solo le impostazioni predefinite.

Come Funziona

Processore di Immagine MCP

L'installazione è una singola voce di configurazione. Qualsiasi client compatibile con MCP rileva il server tramite npx - nessuna installazione globale, nessun passaggio di build:

json
{
  "mcpServers": {
    "image-processor-mcp": {
      "command": "npx",
      "args": ["-y", "image-processor-mcp"],
      "env": { "IMAGE_SEARCH_API_KEY": "chiave-pexels-opzionale" }
    }
  }
}

Compressione ricorsiva a una dimensione target

Il nucleo di compressione risolve un problema pratico: "rendere questa immagine sotto i 100 KB senza distruggerla." La pipeline sharp applica il formato e la qualità richiesti, misura il risultato e - in modalità ricorsiva - riduce la qualità iterazione dopo iterazione fino a raggiungere la dimensione target o finché un limite minimo di qualità lo impedisce. Le dimensioni esplicite prevalgono; altrimenti qualsiasi valore superiore alla dimensione massima viene ridimensionato proporzionalmente. La compressione in loco passa attraverso un buffer, così un tentativo di scrittura fallito non può mai corrompere l'originale.

Elaborazione batch con ricevute

compress_directory attraversa un albero di cartelle, converte ogni immagine preservando la struttura e normalizza i nomi dei file lungo il percorso. Poi scrive due artefatti: un rapporto in markdown di ogni file (dimensioni prima/dopo, percentuali di riduzione) e un file JSON di mappatura dei vecchi e nuovi nomi dei file. Quel file di mappatura alimenta sync_filenames, che esamina il tuo progetto e riscrive ogni riferimento nel codice - dopo aver mostrato un'anteprima simulata con contesto per riga. Un file di mappatura senza il suo rapporto corrispondente viene rifiutato immediatamente, quindi i rinomini obsoleti non possono mai essere riapplicati su un codice modificato.

OCR che rispetta i tuoi dati

extract_text avvolge tesseract.js con l'infrastruttura di produzione di cui la libreria ha bisogno: una coda di lavori che serializza il riconoscimento, il riutilizzo dei worker con re-inizializzazione automatica quando cambia la lingua, il riciclaggio dei worker ogni 500 lavori e il recupero in caso di crash. I formati non supportati vengono convertiti automaticamente in PNG prima; il preprocessing applica la scala di grigi e la rotazione automatica per una maggiore accuratezza. L'output viene restituito come testo semplice, blocchi posizionati, hOCR o TSV - con punteggi di confidenza.

Questo sito è la prova che lo strumento funziona: ogni immagine generata nel sistema di design che stai guardando è stata compressa attraverso lo stesso processo Sharp che questo pacchetto rende disponibile.

Realizzato con

TypeScriptMCP SDKsharptesseract.jsPexels APINode.js

Questo è lo standard di ingegneria che riceve anche il tuo progetto.

Parliamo

Vuoi strumenti come questo costruiti per il tuo stack?