Skip to main content
Glama
智睦云打印

智睦云打印

Official
by zimsoft

MCP de Impresión en la Nube ZhiMu

webprinter_mcp es un servidor MCP para impresión en la nube. Si tu cliente MCP admite el tipo stdio, puedes usarlo para subir archivos, consultar impresoras, enviar tareas de impresión e imprimir directamente.

¿Qué puede hacer por ti?

Puedes entenderlo como una "herramienta que te ayuda a gestionar tareas de impresión".

Por ejemplo, puedes decirle a una IA conectada a este MCP:

  • "Ayúdame a ver si hay impresoras disponibles ahora"

  • "Sube este archivo, prepáralo para imprimir"

  • "Añade este archivo a la cola de impresión"

  • "Imprime directamente en la impresora de la oficina"

  • "Cambia la tarea anterior a doble cara"

Related MCP server: printagent

Preparación antes de usar

Primero debes instalar el servidor de impresión en la nube ZhiMu y compartir la impresora. Obtén el paquete de instalación desde la impresión en la nube ZhiMu:

  • https://any.webprinter.cn

Luego, necesitas obtener un token de acceso a la impresión en la nube.

Dirección de obtención:

  • [https://any.webprinter.cn/get-ai-server-token](https://any.webprinter.cn/get-ai-server-token)

Después de obtener el token, configura la variable de entorno:

  • WEBPRINTER_ACCESS_TOKEN: Obligatorio

Instalación

Instalación mediante pip

pip install webprinter_mcp

O instalación desde el código fuente

pip install .

Método de inicio

Si solo quieres confirmar que se puede iniciar localmente, puedes ejecutar:

webprinter_mcp

O:

python -m webprinter_mcp

Nota: Después de iniciar este comando, normalmente no imprimirá mensajes de aviso de forma activa. Entrará en un estado de espera de conexión del cliente MCP, lo cual es normal.

Cómo configurar en el cliente MCP

Este proyecto es más adecuado para conectarse mediante stdio.

Método Python local

Si ya has instalado este paquete en tu máquina, se recomienda configurarlo así:

{
  "type": "stdio",
  "config": {
    "mcpServers": {
      "webprinter": {
        "type": "stdio",
        "command": "webprinter_mcp",
        "args": [],
        "env": {
          "WEBPRINTER_ACCESS_TOKEN": "your-access-token"
        }
      }
    }
  }
}

Método npx

Si tu cliente admite el estilo npx, también puedes configurarlo así:

{
  "type": "stdio",
  "config": {
    "mcpServers": {
      "webprinter": {
        "type": "npx",
        "command": "npx",
        "args": ["-y", "webprinter_mcp"],
        "env": {
          "WEBPRINTER_ACCESS_TOKEN": "your-access-token"
        }
      }
    }
  }
}

Nota: Si usas npx webprinter_mcp, aún necesitas tener un entorno de ejecución de Python disponible en tu máquina.

Uso directo de la configuración mcpServers

Si tu cliente MCP acepta directamente la estructura mcpServers, puedes usar la siguiente configuración:

{
  "mcpServers": {
    "webprinter": {
      "args": [
        "-y",
        "webprinter_mcp"
      ],
      "command": "npx",
      "env": {
        "WEBPRINTER_ACCESS_TOKEN": "your-access-token"
      },
      "type": "npx"
    }
  }
}

Donde:

  • WEBPRINTER_ACCESS_TOKEN

    • Debe obtenerse primero desde https://any.webprinter.cn/get-ai-server-token

  • command y args

    • Indican iniciar el servidor MCP a través de npx webprinter_mcp

  • type

    • Indica que el cliente actual utiliza el método npx para conectarse

Lista de herramientas

El servidor MCP actual proporciona las siguientes herramientas:

  • check_install_progress

    • Comprueba si la cuenta y el entorno del dispositivo tienen capacidad de impresión en la nube

  • query_printers

    • Consulta la lista de impresoras disponibles para la cuenta actual

  • query_printer_detail

    • Consulta información detallada sobre las capacidades de una impresora o dispositivo compartido específico

  • upload_file

    • Sube un archivo local y devuelve una dirección pública utilizable para imprimir

  • create_roaming_task

    • Crea una tarea de impresión en itinerancia basada en la URL del archivo

  • update_printer_side

    • Modifica la configuración de una o dos caras de la tarea de impresión en itinerancia

  • update_printer_color

    • Modifica la configuración de color/blanco y negro de la tarea de impresión en itinerancia

  • update_printer_copies

    • Modifica el número de copias de la tarea de impresión en itinerancia

  • update_printer_paper

    • Modifica el tamaño de papel de la tarea de impresión en itinerancia, admite tamaños preestablecidos como A3, A4, etc., y también admite ancho y alto personalizados

  • direct_print_document

    • Envía el archivo directamente a la impresora especificada para imprimir

Puedes entenderlo como un conjunto completo de capacidades de flujo de impresión:

  1. Primero verifica el entorno: check_install_progress

  2. Luego revisa las impresoras: query_printers / query_printer_detail

  3. Sube el archivo: upload_file

  4. Crea la impresión en itinerancia: create_roaming_task

  5. Ajusta los parámetros de la tarea según sea necesario: update_printer_side / update_printer_color / update_printer_copies / update_printer_paper

  6. O imprime directamente: direct_print_document

Descripción de las herramientas

A continuación, se explica cada herramienta según "propósito, comportamiento, parámetros clave, sugerencias de uso", para facilitar su visualización en plataformas MCP, directorios y documentación de integración.

check_install_progress

  • Propósito

    • Comprobar si la cuenta actual, el cliente y el entorno de impresión tienen capacidades de impresión en la nube disponibles

  • Cuándo usarlo

    • Llamar primero al realizar la integración inicial

    • Llamar prioritariamente cuando no se pueda imprimir, no se encuentren impresoras o falle el envío de tareas

  • Comportamiento

    • Consulta el estado actual de instalación y configuración en la plataforma de impresión en la nube

    • No modifica ninguna tarea de impresión

  • Parámetros

    • Ninguno

  • Resultado devuelto

    • Devuelve el resultado de la comprobación del entorno actual, generalmente utilizado para determinar si la configuración del cliente, dispositivo o compartido está completa

  • Sugerencias de uso

    • Se recomienda como el primer paso de todo flujo de impresión

  • Ejemplo de frase

    • "Comprueba primero si el entorno actual puede usar la impresión en la nube"

query_printers

  • Propósito

    • Consultar la lista de impresoras disponibles bajo la cuenta actual

  • Cuándo usarlo

    • Cuando el usuario quiera ver las impresoras disponibles

    • Cuando se quiera confirmar si la impresora de destino existe antes de imprimir directamente

  • Comportamiento

    • Devuelve la lista de impresoras

    • Las impresoras ocultas se marcarán como compatibles solo con tareas de itinerancia

  • Parámetros

    • Ninguno

  • Resultado devuelto

    • Los campos comunes incluyen nombre de la impresora, alias, estado en línea, número de control, si está oculta, etc.

  • Sugerencias de uso

    • Si el usuario dice "imprimir en cierta impresora", se recomienda llamar primero a esta herramienta para confirmar el nombre del dispositivo y el número de control

  • Ejemplo de frase

    • "Ayúdame a ver qué impresoras hay disponibles actualmente"

query_printer_detail

  • Propósito

    • Consultar información detallada sobre las capacidades de una impresora o dispositivo compartido

  • Cuándo usarlo

    • Cuando el usuario necesite confirmar las capacidades admitidas por el dispositivo

    • Cuando se quiera confirmar el tipo de dispositivo, número de compartido o parámetros detallados antes de imprimir

  • Comportamiento

    • Devuelve información detallada según el nombre de la impresora, número de compartido o tipo de dispositivo

  • Parámetros

    • printer_name

      • Nombre de la impresora, opcional

    • share_sn

      • Número de dispositivo compartido, opcional

    • device_type

      • Tipo de dispositivo, opcional, admite printer, scanner, camera

  • Resultado devuelto

    • Devuelve las capacidades detalladas o datos de configuración del dispositivo especificado

  • Sugerencias de uso

    • Proporciona al menos un criterio de filtro para evitar que el alcance de la consulta sea demasiado amplio

  • Ejemplo de frase

    • "Ayúdame a ver qué capacidades admite la impresora de la recepción"

upload_file

  • Propósito

    • Subir un archivo local y obtener una URL pública utilizable para la impresión posterior

  • Cuándo usarlo

    • Cuando el archivo de origen está en el disco local

    • Cuando aún no hay una dirección de archivo pública antes de la impresión en itinerancia o directa

  • Comportamiento

    • Lee el archivo local y lo sube a la nube

    • Devuelve una dirección de archivo que puede ser leída por el servicio de impresión

  • Parámetros

    • file_path

      • Ruta del archivo local, obligatorio

  • Resultado devuelto

    • Devuelve la información del archivo subido y la dirección accesible

  • Sugerencias de uso

    • Si el archivo ya es una URL pública, puedes omitir este paso

  • Ejemplo de frase

    • "Sube el PDF que está en mi escritorio y dame una dirección imprimible"

create_roaming_task

  • Propósito

    • Crear una tarea de impresión en itinerancia para que el archivo entre en la cola de impresión a la espera de procesamiento posterior

  • Cuándo usarlo

    • Cuando el usuario quiera generar primero una tarea de impresión en lugar de imprimir inmediatamente en un dispositivo específico

  • Comportamiento

    • Crea una tarea de impresión en itinerancia basada en el nombre del archivo, la URL del archivo y el tipo de archivo

    • Devuelve el ID de la tarea tras el éxito

  • Parámetros

    • file_name

      • Nombre de visualización del archivo, obligatorio

    • url

      • Dirección pública del archivo, obligatorio

    • media_format

      • Formato del archivo, obligatorio, admite PDF, PNG, JPG, WORD, EXCEL, PPT, etc.

  • Resultado devuelto

    • Devuelve el ID de la tarea de itinerancia recién creada

  • Sugerencias de uso

    • Si posteriormente deseas cambiar una o dos caras, color, copias o papel, necesitarás este ID de tarea

  • Ejemplo de frase

    • "Envía este archivo como una tarea de impresión en itinerancia"

update_printer_side

  • Propósito

    • Modificar la configuración de una o dos caras de la tarea de impresión en itinerancia

  • Cuándo usarlo

    • Cuando el usuario especifique claramente una cara, dos caras, volteo por borde largo o volteo por borde corto

  • Comportamiento

    • Actualiza la configuración de cara de impresión de la tarea según el ID de la tarea

  • Parámetros

    • task_id

      • ID de la tarea de itinerancia, obligatorio

    • side

      • Valores opcionales: ONESIDE, DUPLEX, TUMBLE

  • Resultado devuelto

    • Devuelve el resultado de la actualización

  • Sugerencias de uso

    • Aplicable a tareas de itinerancia ya creadas, no para tareas de impresión directa

  • Ejemplo de frase

    • "Cambia la tarea 123 a impresión a doble cara"

update_printer_color

  • Propósito

    • Modificar el modo de color de la tarea de impresión en itinerancia

  • Cuándo usarlo

    • Cuando el usuario especifique claramente impresión en color, blanco y negro o escala de grises

  • Comportamiento

    • Actualiza el modo de color según el ID de la tarea

  • Parámetros

    • task_id

      • ID de la tarea de itinerancia, obligatorio

    • color

      • Valores opcionales: COLOR, MONOCHROME

  • Resultado devuelto

    • Devuelve el resultado de la actualización

  • Sugerencias de uso

    • Cuando el usuario diga "impresión en blanco y negro", debe convertirse a MONOCHROME

  • Ejemplo de frase

    • "Cambia la tarea 123 a impresión en blanco y negro"

update_printer_copies

  • Propósito

    • Modificar el número de copias de la tarea de impresión en itinerancia

  • Cuándo usarlo

    • Cuando el usuario diga "imprimir 2 copias", "imprimir 3 copias"

  • Comportamiento

    • Actualiza el número de copias según el ID de la tarea

  • Parámetros

    • task_id

      • ID de la tarea de itinerancia, obligatorio

    • copies

      • Número de copias, obligatorio, y debe ser mayor o igual a 1

  • Resultado devuelto

    • Devuelve el resultado de la actualización

  • Sugerencias de uso

    • Si el usuario no especifica el número de copias, no lo modifiques arbitrariamente

  • Ejemplo de frase

    • "Cambia la tarea 123 a imprimir 3 copias"

update_printer_paper

  • Propósito

    • Modificar el tamaño de papel de la tarea de impresión en itinerancia

  • Cuándo usarlo

    • Cuando el usuario mencione tamaños de papel como A3, A4, A5, Letter, etc.

    • Cuando el usuario proporcione directamente el ancho y el alto

  • Comportamiento

    • Admite la conversión automática de nombres de papel estándar a ancho y alto en milímetros

    • También admite pasar directamente width y height personalizados

  • Parámetros

    • task_id

      • ID de la tarea de itinerancia, obligatorio

    • paper

      • Puede pasar el nombre del tamaño de papel, como A4

      • También puede pasar un objeto, como {"width": 210, "height": 297}

  • Resultado devuelto

    • Devuelve el resultado de la actualización

  • Sugerencias de uso

    • La unidad de ancho y alto es milímetros

    • Los preajustes admitidos actualmente incluyen A0-A6, B4, B5, LETTER, LEGAL, TABLOID

  • Ejemplo de frase

    • "Cambia la tarea 123 a papel A4"

    • "Cambia la tarea 123 a papel de 210 de ancho y 297 de alto"

direct_print_document

  • Propósito

    • Enviar el archivo directamente a la impresora especificada

  • Cuándo usarlo

    • Cuando el usuario especifique claramente que quiere imprimir inmediatamente en una impresora determinada

  • Comportamiento

    • Inicia la impresión directamente según la información del archivo y la información del dispositivo de destino

    • Si la impresora de destino es una impresora oculta, se bloqueará la impresión directa y se sugerirá usar una tarea de itinerancia

  • Parámetros

    • file_name

      • Nombre de visualización del archivo, obligatorio

    • url

      • Dirección pública del archivo, obligatorio

    • media_format

      • Formato del archivo, obligatorio

    • device_name

      • Nombre de la impresora de destino, obligatorio

    • control_sn

      • Número de control de la impresora de destino, obligatorio

  • Resultado devuelto

    • Devuelve el resultado de la impresión directa

  • Sugerencias de uso

    • Se recomienda llamar primero a query_printers para confirmar el nombre de la impresora de destino y el número de control

    • Si es un archivo local, llama primero a upload_file

  • Ejemplo de frase

    • "Imprime este archivo directamente en la impresora de la recepción"

Sugerencias para la primera integración

Al usarlo por primera vez, se recomienda seguir estos pasos:

Primero comprueba si la cuenta actual cumple las condiciones de impresión en la nube

Puedes entenderlo así:

  • "Ayúdame a comprobar primero si el entorno actual puede usar la impresión en la nube normalmente"

Si el resultado indica que el cliente o el dispositivo no están listos, completa primero la instalación y la configuración de compartido en el lado de WebPrinter.

Luego haz que liste las impresoras disponibles actualmente

Puedes decir:

  • "Ayúdame a ver qué impresoras hay ahora"

Este paso suele devolver:

  • Nombre de la impresora

  • Alias de la impresora

  • Estado en línea

  • Número de control

Si tienes archivos locales, súbelos primero

Puedes entenderlo como:

  • "Sube este PDF local y dame una dirección imprimible"

Al depurar localmente, los parámetros comunes se ven así:

{
  "file_path": "C:\\\\docs\\\\report.pdf"
}

Luego decide si es "impresión en itinerancia" o "impresión directa"

Si solo quieres entrar en la cola de impresión, puedes entenderlo así:

  • "Envía este archivo a impresión en itinerancia" o

  • "Añade este archivo a la cola de impresión"

Si quieres imprimir inmediatamente en una impresora, puedes entenderlo así:

  • "Imprime este archivo directamente en la impresora HP de la oficina"

Ejemplos de uso más coloquiales

Las siguientes frases son adecuadas para que este MCP las procese:

  • "Ayúdame a comprobar si el entorno de impresión en la nube actual funciona"

  • "Ayúdame a ver qué impresoras hay disponibles"

  • "Sube el PDF que está en mi escritorio"

  • "Añade esta página web a la cola de impresión"

  • "Imprime directamente en la impresora de la recepción"

  • "Cambia la tarea anterior a doble cara"

Preguntas frecuentes

¿Por qué no hay respuesta después de ejecutar webprinter_mcp?

Esto es normal. Después de iniciarse, esperará continuamente a que el cliente MCP se conecte a través de stdio, no imprimirá mucha información inmediatamente como las herramientas de línea de comandos normales.

¿Qué hacer si aparece un error relacionado con el token al iniciar?

Por favor, ve aquí para obtener el token:

  • [https://get-ai-token.webprinter.cn](https://any.webprinter.cn/get-ai-server-token)

Luego confirma que has configurado:

  • WEBPRINTER_ACCESS_TOKEN

El comando ya está instalado, pero no se encuentra webprinter_mcp

Normalmente es porque el directorio Scripts de Python aún no se ha añadido al PATH. En este caso, puedes usar directamente:

python -m webprinter_mcp

Herramientas de configuración de tareas

Para las tareas de impresión en itinerancia ya creadas, ahora puedes seguir modificando las siguientes configuraciones:

  • update_printer_side(task_id, side)

  • update_printer_color(task_id, color)

  • update_printer_copies(task_id, copies)

  • update_printer_paper(task_id, paper)

Descripción de parámetros

  • task_id

    • ID de la tarea de impresión en itinerancia

  • side

    • Valores opcionales: ONESIDE, DUPLEX, TUMBLE

    • Significan respectivamente: una cara, doble cara con volteo por borde largo, doble cara con volteo por borde corto

  • color

    • Valores opcionales: COLOR, MONOCHROME

    • Significan respectivamente: color, blanco y negro

  • copies

    • Entero

    • Debe ser mayor o igual a 1

  • paper

    • Puedes pasar directamente el nombre del tipo de papel, como A3, A4, A5, LETTER

    • También puedes pasar un objeto personalizado: {"width": 210, "height": 297}

    • La unidad de ancho y alto es milímetros

Ejemplos de uso

Si estás llamando a través de lenguaje natural en el cliente MCP, puedes decir:

  • "Cambia la tarea 123 a impresión a doble cara"

  • "Cambia la tarea 123 a impresión en blanco y negro"

  • "Cambia la tarea 123 a imprimir 3 copias"

  • "Cambia la tarea 123 a papel A4"

  • "Cambia la tarea 123 a papel de 210 de ancho y 297 de alto"

Si estás depurando en la CLI local, puedes usarlo así:

python scripts/mcp_client.py update-printer-side --task-id 123 --side DUPLEX
python scripts/mcp_client.py update-printer-color --task-id 123 --color MONOCHROME
python scripts/mcp_client.py update-printer-copies --task-id 123 --copies 3
python scripts/mcp_client.py update-printer-paper --task-id 123 --paper A4
python scripts/mcp_client.py update-printer-paper --task-id 123 --width 210 --height 297

Available Tools

10 tools
check_install_progressB

Check whether the user's cloud print environment is fully configured.

Inputs: no named parameters.

create_roaming_taskC

Create a roaming print task from a public document URL.

Inputs: file_name (required), url (required), media_format (required).

direct_print_documentC

Send a document directly to a specific printer.

Inputs: file_name (required), url (required), media_format (required), device_name (required), +1 more.

query_printer_detailC

Query printer capabilities for a specific printer or shared device.

Inputs: printer_name, share_sn, device_type.

query_printersA

List printers available to the current user.

Inputs: no named parameters.

update_printer_colorC

Update color mode for an existing roaming task.

Inputs: task_id (required), color.

update_printer_copiesC

Update copy count for an existing roaming task.

Inputs: task_id (required), copies (required).

update_printer_paperA

Update paper size for an existing roaming task using a preset name or custom dimensions in millimeters.

Inputs: task_id (required), paper (required).

update_printer_sideC

Update simplex or duplex settings for an existing roaming task.

Inputs: task_id (required), side.

upload_fileA

Upload a local file and return a public URL that the print service can read.

Inputs: file_path (required).

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    C2.9/5.0

    Scored across 10 tools

    Disambiguation3/5

    The four update_printer_* tools are named as if they configure printer hardware settings, but they actually modify roaming task parameters. This creates dangerous ambiguity with query_printer_detail (which queries actual printer capabilities), forcing agents to rely entirely on descriptions to distinguish printer properties from job configuration.

    Naming Consistency3/5

    While most tools follow verb_noun patterns (create_roaming_task, upload_file), direct_print_document breaks convention by using an adjective-noun structure. More critically, the update_printer_* prefix is domain-inaccurate since these modify tasks, not printers, creating inconsistency with the actual object model.

    Tool Count4/5

    Ten tools is a reasonable count for cloud printing functionality, covering environment checks, printer discovery, file handling, and dual print workflows. However, the granularity of four separate single-property update tools feels slightly excessive compared to a unified task update operation.

    Completeness3/5

    Basic printing and discovery are covered, but the roaming task workflow lacks lifecycle management: you can create and modify tasks, but cannot submit, check status, cancel, or list jobs. This leaves agents unable to track print completion or handle failures in the roaming workflow.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      A
      quality
      D
      maintenance
      Enables AI assistants to print documents, manage print queues, and control printers on macOS/Linux systems via the CUPS printing system. Supports printing PDFs, text files, and other formats with options like duplex printing, landscape orientation, and multiple copies.
      6
      21 npm
      13
      MIT
    • A
      license
      Not graded
      quality
      B
      maintenance
      Enables AI agents to submit PDFs or JSON-rendered templates to local printers, check printer status, and manage print jobs through MCP tools.
      9 npm
      MIT
    • A
      license
      Not graded
      quality
      B
      maintenance
      Enables AI assistants to print documents directly on your own printer over a private network, without cloud services or open ports. Supports printing text, URLs, and files with per-person access keys, usage limits, and detailed job control.
      MIT
    • A
      license
      A
      quality
      B
      maintenance
      Enables AI agents to print HTML, web pages, PDFs, and images to local printers by bridging to an existing client over WebSocket, including previews, printer discovery, batch jobs, and customizable PDF/print settings.
      16
      82 npm
      MIT