TutuPP
69 strumenti MCP + REST API completa

Documentazione API di TutuPP

Usa l’API REST o il protocollo MCP per far eseguire a un assistente IA stampa foto, stampa documenti, gestione ordini e ogni altra operazione direttamente. Supporta 21 client IA principali, tra cui Claude, Gemini, Codex e Copilot.

Avvio rapido

Integra in tre passaggi e inizia subito a usare l’IA per stampare.

1

Registra un account

Visita il sito di TutuPP e registrati rapidamente con un codice di verifica via SMS.

2

Crea una API Key

Nella pagina «Chiavi API» del centro account, crea una chiave con un clic e usala subito.

3

Invia una richiesta

Chiama l’API REST con la tua API Key, oppure configurala in un client IA per usare MCP.

Autenticazione

Tutte le richieste API si autenticano tramite la API Key in un header HTTP.

Authorization: Bearer tk_YOUR_API_KEY

Base URL

https://tutupp.com

Formato della risposta

Content-Type: application/json

Endpoint MCP

POST https://tutupp.com/api/mcp
Piattaforma aperta: dopo la registrazione crea una API Key senza approvazione e usa subito tutte le funzioni API e MCP.

Integrazione MCP

MCP (Model Context Protocol) è un protocollo aperto di Anthropic che consente agli assistenti IA di chiamare strumenti esterni direttamente.

Una volta configurato, puoi usare il linguaggio naturale per far eseguire all’IA l’intero flusso «carica documento → crea ordine → paga con saldo».

Informazioni sul protocollo

Endpoint:https://tutupp.com/api/mcp

Protocollo:JSON-RPC 2.0 over Streamable HTTP

Metodi:initialize · tools/list · tools/call

Caricamento file:Supporta l’estensione multipart/form-data (message part + file parts, senza base64, 100MB+) e lo standard application/json

Scegli il tuo client IA 21

Claude Code — CLI da terminale

Aggiungi (Add)

claude mcp add --transport http tutupp https://tutupp.com/api/mcp --header "Authorization: Bearer tk_YOUR_API_KEY"

Aggiungi --scope user per il globale, --scope project solo per il progetto corrente

Sostituisci chiave (Replace)

claude mcp remove tutupp && claude mcp add --transport http tutupp ...(nuova chiave)

Rimuovi (Remove)

claude mcp remove tutupp

Esempio di conversazione con l’IA

Tu: Stampa report.pdf dal mio desktop, A4 bianco e nero, e paga con il mio saldo

L’IA chiama automaticamente:

1. upload_document → Carica il file

2. get_print_prices → Cerca il prezzo A4 B/N

3. create_order → Crea l’ordine

4. pay_with_balance → Paga con il saldo

AI: Fatto! Ordine PP2026040612345, A4 B/N ×1, ¥0,50 detratti dal tuo saldo.

Riferimento API REST

Una API Key può accedere a tutti gli endpoint seguenti, coprendo ogni funzione dell’interfaccia.

Gestione documenti

POST /api/documents/upload
GET /api/documents
GET /api/documents/{id}
DELETE /api/documents/{id}

Gestione foto

POST /api/photos/upload
GET /api/photos/{id}
DELETE /api/photos/{id}
GET /api/photos/{id}/quality-check?size={size}

Ordini

POST /api/orders
GET /api/orders
GET /api/orders/{id}
PUT /api/orders/{id}/cancel
GET /api/orders/track/{order_no}
GET /api/orders/{id}/tracking

Pagamento

POST /api/payment/create
POST /api/payment/balance
GET /api/payment/status/{order_id}

Saldo

GET /api/user/balance
POST /api/user/balance/topup
GET /api/user/balance/transactions

Coupon

GET /api/user/coupons
GET /api/user/coupons/available
POST /api/user/coupons/redeem

Indirizzi di consegna

GET /api/addresses
POST /api/addresses
PUT /api/addresses/{id}
DELETE /api/addresses/{id}
POST /api/addresses/parse

Ordinare per altri (pre-ordini)

GET /api/user/pre-orders
POST /api/user/pre-orders
GET /api/user/pre-orders/{id}
PUT /api/user/pre-orders/{id}
PUT /api/user/pre-orders/{id}/status
POST /api/user/pre-orders/{id}/submissions/{sid}/review
PUT /api/user/pre-orders/{id}/submissions/{sid}/cancel

Condivisione pre-ordini

GET /api/share/{code}
POST /api/share/{code}/submit
GET /api/share/{code}/submissions/{sid}
GET /api/share/{code}/my-submissions

Post-vendita

GET /api/user/after-sales
POST /api/after-sales

Regioni e consegna

GET /api/regions
GET /api/regions/{id}
GET /api/regions/tree
GET /api/regions/coverage
GET /api/regions/{city_id}/city-coverage
GET /api/regions/{id}/express-delivery
GET /api/regions/{id}/pickup-points
GET /api/agents/referral/{code}
GET /api/shipping/config
GET /api/shipping/carriers

Consultazione config

GET /api/prices
GET /api/print-options/sizes
GET /api/print-options/paper-types

Restauro foto con IA

POST /api/photos/{id}/restore
GET /api/restorations/{id}

Informazioni utente

GET /api/auth/me
PUT /api/auth/me

Stato di stampa

GET /api/printer/status
GET /api/print-queue/status
GET /api/orders/auto-print-schedule

Autogestione chiavi API

GET /api/user/api-keys
POST /api/user/api-keys
DELETE /api/user/api-keys/{id}

Stato del sistema

GET /api/health

Elenco strumenti MCP69

Tutti gli strumenti sotto sono richiamabili tramite il protocollo MCP; i client IA li rilevano automaticamente una volta configurati.

Gestione documenti

upload_document Carica un documento (PDF/DOC/DOCX/XLS/XLSX/PPT/PPTX) — one of: file_url / content (base64) / file_path (curl)
list_documents Elenca tutti i documenti caricati dall’utente corrente
get_document_info Ottieni i dettagli del documento (n. pagine, dimensione, ecc.)
delete_document Elimina un documento (solo se non collegato a un ordine attivo)

Gestione foto

upload_photo Carica una foto (JPG/PNG/WebP/HEIC) — one of: file_url / content (base64) / file_path (curl)
get_photo Ottieni i dettagli della foto
delete_photo Elimina una foto (solo se non collegata a un ordine attivo)
check_photo_quality Verifica la qualità di stampa della foto a una data dimensione (DPI)

Ordini

create_order Crea un ordine di stampa
list_orders Elenca tutti gli ordini dell’utente corrente
get_order_status Interroga stato e dettagli dell’ordine
cancel_order Annulla un ordine (solo in attesa di pagamento)
track_order Cerca le info dell’ordine per numero (pubblico)
get_order_tracking Ottieni il tracciamento della spedizione dell’ordine

Pagamento e saldo

create_payment Crea un pagamento di terzi (restituisce payment_url, apri nel browser per pagare)
pay_with_balance Paga un ordine con il saldo dell’account
get_payment_status Interroga lo stato di pagamento dell’ordine
create_topup Crea un ordine di ricarica saldo (restituisce payment_url)
get_balance Interroga il saldo del conto (totale/congelato/disponibile)
get_balance_transactions Interroga lo storico delle transazioni del saldo

Coupon

list_coupons Elenca i coupon dell’utente corrente
get_available_coupons Ottieni i coupon disponibili (filtra per importo)
redeem_coupon Riscatta un coupon tramite codice

Indirizzi di consegna

list_addresses Elenca gli indirizzi di consegna
create_address Aggiungi un indirizzo di consegna
update_address Aggiorna un indirizzo di consegna
delete_address Elimina un indirizzo di consegna
parse_address Analizza il testo dell’indirizzo

Ordinare per altri (pre-ordini)

list_pre_orders Elenca tutti i pre-ordini
create_pre_order Crea un pre-ordine (condividi un link per l’invio da parte di altri)
get_pre_order Ottieni i dettagli del pre-ordine (incl. tutti gli invii)
update_pre_order Aggiorna le impostazioni del pre-ordine
update_pre_order_status Cambia lo stato del pre-ordine
review_submission Rivedi un invio di pre-ordine
cancel_submission Annulla un invio

Condivisione pre-ordini

get_share_info Ottieni le info del link di condivisione
submit_share_photos Invia foto a un link di condivisione
get_submission_status Interroga lo stato dell’invio e i dettagli delle foto
list_my_submissions Elenca tutti gli invii di un link di condivisione

Post-vendita

list_after_sales Elenca i record post-vendita dell’utente corrente
create_after_sales Crea una richiesta post-vendita (rimborso/ristampa/rispedizione)

Regioni e consegna

list_regions Interroga l’elenco delle regioni
get_region Ottieni i dettagli della regione e sotto-regioni
get_region_tree Ottieni l’albero completo delle regioni (provincia → città → distretto)
get_region_coverage Ottieni le statistiche di copertura agenti
get_city_coverage Ottieni la copertura dei distretti in una città
get_agent_by_referral Trova agente tramite codice referral
check_express_delivery Verifica se la consegna in giornata è supportata
get_shipping_config Ottieni la configurazione di consegna (globale)
get_shipping_carriers Ottieni l’elenco dei corrieri (incl. supplemento zone remote)
list_pickup_points Interroga l’elenco dei punti di ritiro

Config e stato

get_print_prices Ottieni i prezzi di stampa + fasce di sconto quantità
get_print_options Ottieni formati e tipi di carta disponibili
get_printer_status Interroga lo stato della stampante
get_queue_status Interroga lo stato della coda di stampa

Informazioni utente

get_profile Ottieni il profilo dell’utente corrente
update_profile Aggiorna il nickname dell’utente

Restauro foto con IA

restoration_preview Esegui un’anteprima di restauro IA su una foto
get_restoration Ottieni il risultato dell’attività di restauro IA

Autogestione chiavi API

list_api_keys Elenca tutte le API Key dell’utente corrente
create_api_key Crea una nuova API Key (la chiave completa è mostrata una sola volta)
revoke_api_key Revoca una API Key specifica

Sistema

health_check Verifica lo stato del servizio (database/gateway di pagamento/versione)
get_auto_print_schedule Ottieni le impostazioni della finestra di stampa automatica

Recensioni ordini

submit_order_review Invia una singola recensione ordine (valutazione a 3 dimensioni + commento); idempotente via ON CONFLICT; limite 5/h
batch_submit_order_reviews Recensione in blocco (max 20 · transazione singola · atomica); 5 stelle con un tocco
list_my_order_reviews Elenca le mie recensioni (envelope paginato)
get_order_review Ottieni i dettagli di una recensione (incl. risposta ufficiale)
mark_order_review_read Segna la risposta ufficiale come letta (CTE previene il replay, riduce il contatore del badge nav)

Esempi di codice

Un esempio completo del flusso «consulta prezzi → carica file → crea ordine → paga con saldo».

# 查询打印价格
curl https://tutupp.com/api/prices \
  -H "Authorization: Bearer tk_YOUR_API_KEY"

# 上传文档
curl -X POST https://tutupp.com/api/documents/upload \
  -H "Authorization: Bearer tk_YOUR_API_KEY" \
  -F "file=@report.pdf"

# 创建订单
curl -X POST https://tutupp.com/api/orders \
  -H "Authorization: Bearer tk_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "items": [{
      "document_id": "uuid-here",
      "size": "A4",
      "paper_type": "matte",
      "quantity": 1
    }],
    "delivery_method": "pickup"
  }'

# 余额支付
curl -X POST https://tutupp.com/api/payment/balance \
  -H "Authorization: Bearer tk_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"order_id": "uuid-here"}'

Flusso di lavoro tipico

Carica file Consulta prezzi Crea ordine Paga con saldo Fatto

Gestione degli errori

L’API usa codici di stato HTTP standard; le risposte di errore contengono le info sull’errore in JSON.

// Formato della risposta di errore
{
  "error": "Descrizione dell’errore"
}
400
Parametri di richiesta errati Campi obbligatori mancanti, formato errato
401
Non autenticato API Key mancante o non valida
403
Vietato Operazione vietata, permessi insufficienti
404
Risorsa non trovata ID ordine/documento/foto inesistente
409
Conflitto Foto collegata a un ordine, non eliminabile
413
File troppo grande Documento oltre 50MB / foto oltre 120MB
422
Regola di business non soddisfatta Saldo insufficiente, ordine non annullabile
429
Troppe richieste Superato il limite di frequenza API
500
Errore interno del server Riprova più tardi o contatta il supporto
Limitazione della frequenza: solo operazioni di scrittura sensibili come login / registrazione / codici di verifica sono protette dagli attacchi; l’uso normale non la attiva mai e le soglie sono configurabili nella console di amministrazione. Le risposte includono il campo retry_after_seconds + l’header Retry-After.

Pronto per iniziare?

Registra un account, crea una API Key e lascia che l’IA gestisca le tue stampe.