# Herramientas · Descargas

> Herramientas MCP para el módulo Descargas: configurar el espacio, crear elementos, subir, cambiar, quitar y reordenar archivos, publicar, obtener el enlace de 5 minutos, ver tus descargas y las cifras del equipo.

El módulo [Descargas](/espacos/downloads) con el asistente: configurar el espacio (repositorio o un solo archivo, categorías, aprobación), crear el elemento, subir los archivos por enlace o archivo, publicar, ver lo que puedes descargar y las cifras del equipo.

Cada herramienta lleva un sello: <span class="tool-kind tool-kind-read">Solo consulta</span> no cambia nada, <span class="tool-kind tool-kind-write">Modifica</span> crea o cambia algo al momento, y <span class="tool-kind tool-kind-confirm">Pide confirmación</span> solo actúa después de tu sí a un resumen. Consulta [Dinero y confirmación](/mcp/dinheiro-e-confirmacao).

## En resumen

| Herramienta | Qué hace | Rol mínimo | Tipo |
|---|---|---|---|
| [`get_downloads_space_settings`](#get-downloads-space-settings) | El modo, la aprobación y las categorías de un espacio de Descargas | Cualquiera que vea el espacio | <span class="tool-kind tool-kind-read">Solo consulta</span> |
| [`update_downloads_space_settings`](#update-downloads-space-settings) | Cambia el modo, la aprobación y la lista de categorías | Administrador | <span class="tool-kind tool-kind-write">Modifica</span> |
| [`list_download_items`](#list-download-items) | Los elementos del espacio, con filtros | Cualquiera que vea el espacio | <span class="tool-kind tool-kind-read">Solo consulta</span> |
| [`get_download_item`](#get-download-item) | Un elemento, con archivos y producto | Cualquiera que vea el espacio | <span class="tool-kind tool-kind-read">Solo consulta</span> |
| [`create_download_item`](#create-download-item) | Crea un elemento (borrador) con su producto | Quien el espacio deja crear | <span class="tool-kind tool-kind-write">Modifica</span> |
| [`update_download_item`](#update-download-item) | Edita el elemento, el sello, la portada y publica | Autor o equipo | <span class="tool-kind tool-kind-write">Modifica</span> |
| [`delete_download_item`](#delete-download-item) | Borra el elemento y los archivos | Autor o equipo | <span class="tool-kind tool-kind-confirm">Pide confirmación</span> |
| [`upload_download_file`](#upload-download-file) | Sube (o cambia) un archivo, por enlace o base64 | Autor o equipo | <span class="tool-kind tool-kind-write">Modifica</span> |
| [`remove_download_file`](#remove-download-file) | Quita un archivo | Autor o equipo | <span class="tool-kind tool-kind-confirm">Pide confirmación</span> |
| [`reorder_download_files`](#reorder-download-files) | Cambia el orden de los archivos | Autor o equipo | <span class="tool-kind tool-kind-write">Modifica</span> |
| [`get_download_url`](#get-download-url) | El enlace de 5 minutos de un archivo | Cualquiera con acceso | <span class="tool-kind tool-kind-read">Solo consulta</span> |
| [`list_my_downloads`](#list-my-downloads) | Lo que puedes descargar | Cualquiera | <span class="tool-kind tool-kind-read">Solo consulta</span> |
| [`get_download_stats`](#get-download-stats) | Cuántas descargas tuvo cada archivo | Moderador o financiero | <span class="tool-kind tool-kind-read">Solo consulta</span> |

El espacio se crea con [`create_space`](/mcp/ferramentas-comunidade#create-space) y `module: "downloads"`. Quién puede subir es **Quién puede publicar** del espacio ([`update_space_access`](/mcp/ferramentas-comunidade#update-space-access)): por defecto, solo el equipo. El precio del elemento se define en el producto que nace con él (`update_product`, `update_price`, `publish_product`; ver [Ventas y planes](/mcp/ferramentas-vendas)).

## `get_downloads_space_settings`

<span class="tool-kind tool-kind-read">Solo consulta</span>

**Configuración del espacio.** El modo (`multi`, repositorio; `single`, un solo archivo), si los elementos de los miembros esperan aprobación y las categorías (id, nombre y cuántos elementos). *Rol mínimo: cualquiera que vea el espacio.*

| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| `space` | id o enlace | Sí | El espacio de Descargas |

**Pídelo así:** *"¿Cómo está configurado el espacio Materiales?"*

## `update_downloads_space_settings`

<span class="tool-kind tool-kind-write">Modifica</span>

**Configurar el espacio.** Cambia el modo, la aprobación y las categorías. Solo cambia lo que envíes. *Rol mínimo: administrador.*

| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| `space` | id o enlace | Sí | |
| `mode` | `multi` o `single` | No | `single` se rechaza mientras haya 2 o más elementos o archivos |
| `require_approval` | verdadero o falso | No | Los elementos de los miembros esperan al equipo |
| `categories` | lista | No | La lista **completa**, en orden: un elemento con `id` renombra y reordena, sin `id` crea, lo que falta en la lista se quita (se rechaza mientras la categoría tenga elementos; el mensaje dice cuántos) |

Lee [`get_downloads_space_settings`](#get-downloads-space-settings) antes, para obtener los ids.

**Pídelo así:** *"En el espacio Materiales, crea las categorías Hojas de cálculo y E-books y pide aprobación para lo que suban los miembros."*

## `list_download_items`

<span class="tool-kind tool-kind-read">Solo consulta</span>

**Elementos del espacio.** Del más nuevo al más antiguo: título, categoría, archivos y situación. El equipo y el autor ven también los borradores y los elementos en revisión. Un elemento de pago que la persona no compró llega **bloqueado**: muestra el precio y el producto, sin archivos. *Rol mínimo: cualquiera que vea el espacio.*

| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| `space` | id o enlace | Sí | |
| `category_id` | id | No | Filtra por categoría |
| `status` | texto | No | La situación del elemento |
| `mine` | verdadero o falso | No | Solo los que creaste |
| `search` | texto | No | Busca en el título |
| `page`, `limit` | números | No | Paginación |

## `get_download_item`

<span class="tool-kind tool-kind-read">Solo consulta</span>

**Un elemento.** Descripción, categoría, archivos (id, nombre, tipo, tamaño y, para el equipo, cuántas descargas), situación y el producto (precio, si es gratuito, si se agotó y tu lugar en la lista de espera). Un elemento bloqueado no muestra archivos. *Rol mínimo: cualquiera que vea el espacio.*

| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| `item_id` | id | Sí | De `list_download_items` |

## `create_download_item`

<span class="tool-kind tool-kind-write">Modifica</span>

**Crear un elemento.** Crea el elemento en **borrador**, con su producto (tipo Descarga, gratuito, en borrador), devuelto en `product`. Después: sube los archivos con [`upload_download_file`](#upload-download-file), define el precio con `update_product` y publica con [`update_download_item`](#update-download-item). *Rol: quien permita Quién puede publicar del espacio; por defecto, el equipo (el miembro recibe 403).*

| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| `space` | id o enlace | Sí | |
| `title` | texto | Sí | |
| `description` | Markdown | No | |
| `category_id` | id | No | De `get_downloads_space_settings` |
| `stamp_pdf` | verdadero o falso | No | Sella los PDF de quien descarga (predeterminado: falso). Ver [Sellar PDF](/espacos/downloads#sellar-pdf) |
| `image_url` o `image_base64` (+ `image_type`) | enlace o archivo | No | La portada: enlace hasta 10 MB, archivo hasta 5 MB. Consulta [Imágenes](/mcp/ferramentas#imagenes) |

En un espacio en el modo `single`, un segundo elemento se rechaza (409). Los elementos de miembros esperan aprobación cuando el espacio lo pide.

**Pídelo así:** *"Crea en el espacio Materiales el elemento Hoja de flujo de caja, en la categoría Hojas de cálculo."*

## `update_download_item`

<span class="tool-kind tool-kind-write">Modifica</span>

**Editar y publicar.** Cambia el título, la descripción, la categoría, `stamp_pdf`, la portada (`remove_cover` la quita) y la situación (`status`: `draft` o `published`; publicar exige al menos un archivo). Solo cambia lo que envíes. *Rol: el autor y el equipo.*

| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| `item_id` | id | Sí | |
| `title`, `description`, `category_id`, `status`, `stamp_pdf` | | No | Como en `create_download_item` |
| `remove_cover` | verdadero | No | Quita la portada |
| `image_url` o `image_base64` (+ `image_type`) | enlace o archivo | No | La portada nueva |

**Pídelo así:** *"Publica el elemento Hoja de flujo de caja y activa el sello en los PDF."*

## `delete_download_item`

<span class="tool-kind tool-kind-confirm">Pide confirmación</span>

**Borrar el elemento.** Borra el elemento y los archivos; su producto se archiva. Se rechaza (409) mientras una compra pagada todavía dé acceso: reembolsa antes. *Rol: el autor y el equipo.*

| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| `item_id` | id | Sí | |

**Devuelve:** en la primera llamada, el resumen de lo que se borrará y el código de confirmación.

## `upload_download_file`

<span class="tool-kind tool-kind-write">Modifica</span>

**Subir un archivo.** Añade un archivo al elemento, por **enlace** público o por **base64**. Acepta imágenes (PNG, JPG, WEBP, GIF), hojas de cálculo (XLS, XLSX, ODS, CSV), PDF, documentos (DOC, DOCX, ODT, TXT, MD, PPT, PPTX) y ZIP, nunca ejecutables; el nombre tiene que conservar la extensión y el contenido tiene que coincidir con el tipo (se comprueba por los primeros bytes), como en el navegador. *Rol: el autor y el equipo.*

| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| `item_id` | id | Sí | |
| `file_url` | dirección web | No | El enlace del archivo. Hasta **200 MB** |
| `file_base64` | texto | No | El archivo en base64, hasta unos **7 MB**; por encima, usa el enlace |
| `mime_type` | texto | No | Ej.: `application/pdf`; opcional cuando el enlace o el nombre lo indican |
| `name` | texto | No | El nombre con la extensión. Por defecto: el del enlace |
| `replace_file_id` | id | No | El archivo al que sustituye |

En el modo `single`, el elemento guarda un solo archivo: para subir otro, pasa `replace_file_id`. El aviso de uso del almacenamiento solo avisa.

**Pídelo así:** *"Sube https://exemplo.memberfy.net/fluxo.xlsx al elemento Hoja de flujo de caja."*

## `remove_download_file`

<span class="tool-kind tool-kind-confirm">Pide confirmación</span>

**Quitar un archivo.** El archivo se borra y el espacio se recupera. Si era el último de un elemento publicado, el elemento vuelve a borrador. *Rol: el autor y el equipo.*

| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| `item_id` | id | Sí | |
| `file_id` | id | Sí | De `get_download_item` |

## `reorder_download_files`

<span class="tool-kind tool-kind-write">Modifica</span>

**Reordenar los archivos.** `file_ids` es la lista completa, del primero al último. *Rol: el autor y el equipo.*

| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| `item_id` | id | Sí | |
| `file_ids` | lista de ids | Sí | El orden nuevo |

## `get_download_url`

<span class="tool-kind tool-kind-read">Solo consulta</span>

**El enlace de un archivo.** Un enlace que vale **5 minutos**. Pídelo solo cuando la persona quiera de verdad el archivo; no lo guardes ni lo compartas. El equipo y el autor siempre lo reciben; los demás necesitan acceso (elemento gratis, compra activa o plan que incluye el producto; haberlo descargado antes no basta). *Rol mínimo: cualquiera que vea el espacio.*

| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| `file_id` | id | Sí | De `get_download_item` |

**Devuelve:** el enlace y `stamped`: `true` cuando es la copia con el [sello](/espacos/downloads#sellar-pdf) (solo para quien no es del equipo), `false` cuando es el original. Cada descarga de un miembro cuenta en las cifras.

Un elemento de pago que la persona no tiene responde `403`, con el precio (la compra se hace en la app); un elemento agotado responde `409`, y el asistente sugiere [`join_waitlist`](/mcp/ferramentas-cursos#join-waitlist).

## `list_my_downloads`

<span class="tool-kind tool-kind-read">Solo consulta</span>

**Tus descargas.** Los elementos que puedes abrir, con el origen del acceso (`purchase`, `plan`, `open`, `team`), tu última descarga y, en una compra, la fecha y el fin del acceso. *Rol mínimo: cualquiera.*

| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| `page`, `limit` | números | No | Paginación |

## `get_download_stats`

<span class="tool-kind tool-kind-read">Solo consulta</span>

**Cifras del elemento.** Cuántas veces se descargó cada archivo, en total y por personas distintas. Solo números, nunca quién. *Rol mínimo: moderador (o financiero).*

| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| `item_id` | id | Sí | |

## Relacionados

- [Descargas](/espacos/downloads)
- [Herramientas](/mcp/ferramentas)
- [Dinero y confirmación](/mcp/dinheiro-e-confirmacao)
