Teckel IPFS MCP Toolkit
Sube, recupera, ancla y gestiona archivos cifrados en IPFS a través de una API simple accesible como herramientas MCP.
Documentación
ipfs-toolkit
Kit de herramientas MCP del Sistema de Archivos Interplanetario (IPFS)
Cómo usar los kits de herramientas de teckel
Primero, descarga e instala la aplicación teckel.
A continuación, genera una clave API usando la aplicación teckel.
Haz lo siguiente:
-
Navega a la página de Cuentas tocando el ícono de billetera en la esquina superior derecha de la pantalla de inicio de la aplicación. Accede al Administrador de claves API para la Cuenta de Ethereum creada o importada tocando "Administrar clave API" en la página de Cuentas.
-
Usa la clave API al realizar llamadas a los endpoints. Todos los endpoints disponibles están disponibles a través de la aplicación teckel, incorporando la clave API real para la Cuenta de Ethereum dada.
-
Con fines ilustrativos, usaremos la siguiente clave falsa d1e12345-c234-45a6-9b76-1234567891ff en los ejemplos presentados a continuación. Debes sustituir tu clave API real en lugar de esta clave falsa.
A continuación, decide si vas a usar los servidores MCP o la API RESTful para acceder a las herramientas.
Uso de los servidores MCP
Configura tu cliente MCP preferido
Sea cual sea el cliente, la configuración es esencialmente la misma. Es decir, proporciona al cliente el endpoint del servidor MCP y las credenciales de acceso. Estas suelen tener la forma de un fragmento de configuración JSON, usando tu clave API como token "Bearer" en la etiqueta "Authorization". Por ejemplo, aquí está la configuración precisa para usar con la aplicación de escritorio Cursor (navega dentro de la aplicación Cursor a Configuración de Cursor -> Herramientas y MCP -> + Nuevo servidor MCP e ingresa estos detalles usando tu clave API real de teckel para reemplazar esta falsa).
Configuración JSON de MCP (ejemplo para usar con Cursor)
{
"mcpServers": {
"teckel-ipfs-toolkit": {
"url": "https://mcp-servers.bh.tkllabs.io:9780/ipfs-mcp",
"headers": {
"Authorization": "Bearer d1e12345-c234-45a6-9b76-1234567891ff"
}
}
}
}
NOTA: Esta configuración asume el protocolo HTTP (transmisible). Si tu cliente requiere el protocolo SSE más antiguo (ahora heredado), reemplaza "ipfs-mcp" con "ipfs-sse".
Uso de los servidores de API RESTful
El beneficio de usar los servidores MCP es que los LLM conectados pueden analizar el lenguaje natural en las indicaciones del usuario, completar los parámetros requeridos para llamar a las funciones de la API del kit de herramientas y luego desentrañar la estructura JSON devuelta en lenguaje natural para presentarla al usuario. Sin embargo, si deseas utilizar los kits de herramientas de teckel a un nivel más bajo (por ejemplo, en tu propia aplicación), puedes llamar a las funciones directamente usando los protocolos de API RESTful (POST). Entonces eres responsable de completar los parámetros de entrada y manejar la salida JSON devuelta. Todos los métodos llamados a través de servicios web RESTful deben ser "await": no hay disparar y olvidar (con sondeo futuro para la finalización de tareas, etc.).
Precios
Los precios (mediante créditos teckel comprados dentro de la aplicación teckel) por el uso de los servicios IPFS de teckel se pueden encontrar en https://teckel.io/pricing/
Limitación de tasa
Todas las llamadas MCP/API están sujetas a limitación de tasa por clave API. Los umbrales no se publican, pero si una clave API determinada ha superado el límite de tasa, se devolverá un código de error 429 en la llamada correspondiente.
Errores
Si la llamada MCP/API falla debido a un error del usuario que resulta en un código de error 4xx, se le cobra al usuario una tarifa base por llamada (ver https://teckel.io/ai-mcp-services/). Si la llamada API falla debido a un error del servidor que resulta en un código de error 5xx, no se le cobra al usuario. Si la llamada dada es parte de una cascada de llamadas anidadas, las reglas anteriores se aplican a la llamada "externa": en otras palabras, si la llamada externa falla con un código de error 4xx, se le cobra al usuario una tarifa base por llamada (por la llamada externa fallida), y no habrá cargo por ninguna de las llamadas en cascada (ya sea que hayan tenido éxito o no). Del mismo modo, si la llamada externa falla con un código de error 5xx, no se le cobra al usuario en absoluto (incluso si las llamadas en cascada tienen éxito).
Cifrado
IPFS es un servicio público y todo el contenido está, en principio, disponible para cualquiera. Por lo tanto, si consideras que tu contenido es privado, debes asegurarte de que esté cifrado antes de subirlo a IPFS. Teckel facilita dicho cifrado usando tu clave API de teckel para construir la clave de cifrado. Sin embargo, esto no proporciona cifrado de extremo a extremo de tu contenido porque tu clave API es conocida por los servidores de teckel. En cambio, si requieres cifrado de extremo a extremo, mediante el cual solo tú (y no los servidores de teckel, etc.) puedas recuperar tu contenido, debes primero cifrar tus archivos fuera de línea usando tu propio método elegido, antes de subirlos a IPFS a través de teckel.
Moderación de contenido
Para contribuir a mantener limpio el internet, teckel preescanea todo el contenido subido en busca de malware y contenido inapropiado (según los términos de teckel). Cualquier contenido que falle el preescaneo es rechazado. La dirección de billetera de Ethereum asociada con la clave API utilizada para el intento de carga puede ser incluida en la lista negra a discreción exclusiva de teckel.
Seguridad de la clave API
Si tienes preocupaciones de que tu clave API haya sido comprometida (y alguien más pueda estar consumiendo tus créditos teckel usando tu clave), simplemente reemplaza la clave a través del Administrador de claves API → Reemplazar clave API en la aplicación teckel. La clave anterior se deshabilitará inmediatamente. IMPORTANTE: si cambias tu clave API, cualquier contenido IPFS previamente cifrado a través de teckel ya no será recuperable, ya que la clave API se usa para el cifrado. Antes de cambiar tu clave API, asegúrate de haber recuperado (y descifrado) tus datos IPFS anteriores y de haber almacenado las versiones sin cifrar fuera de línea.
Aplicación teckel
La funcionalidad del kit de herramientas IPFS es totalmente compatible con la funcionalidad IPFS de la aplicación teckel. Esto significa que el contenido IPFS subido a través de la aplicación teckel se puede acceder a través del kit de herramientas IPFS, y viceversa.
Servidor MCP de teckel — Referencia de la API IPFS
URL base: https://mcp-servers.bh.tkllabs.io:9780
Autenticación
Todos los endpoints requieren un token Bearer en el encabezado Authorization:
Authorization: Bearer YOUR_API_KEY
Índice de endpoints
| Método | Ruta | Nombre de la herramienta MCP | Descripción |
|---|---|---|---|
| POST | /get_ipfs_content_for_apikey | list_ipfs_files | Listar archivos IPFS de la cuenta |
| POST | /remove_ipfs_files_from_account | remove_ipfs_files | Eliminar múltiples archivos IPFS por búsqueda de apodo |
| POST | /pin_ipfs_files_for_apikey | pin_ipfs_files | Fijar múltiples archivos IPFS por búsqueda de apodo |
| POST | /unpin_ipfs_files_for_apikey | unpin_ipfs_files | Desfijar múltiples archivos IPFS por búsqueda de apodo |
| POST | /pin_ipfs_cid_for_apikey | pin_ipfs_cid | Fijar un solo archivo IPFS por CID |
| POST | /remove_ipfs_cid_from_account | remove_ipfs_cid_from_account | Eliminar un solo archivo IPFS por CID |
| POST | /publish_ipfs_file_to_webserver | publish_ipfs_file_to_webserver | Publicar un archivo IPFS en el servidor web de teckel |
| POST | /upload_sender_file_to_ipfs_for_apikey | upload_file_to_ipfs | Subir un archivo a IPFS |
| POST | /upload_sender_base64_to_ipfs_for_apikey | upload_base64_file_to_ipfs | Subir un archivo codificado en base64 a IPFS |
| POST | /retrieve_ipfs_file_for_apikey | retrieve_ipfs_file | Recuperar un archivo IPFS por CID |
Endpoints
POST /get_ipfs_content_for_apikey
Lista los archivos IPFS de la cuenta asociada a la clave API, con filtrado opcional por apodo, estado de fijado, estado de cifrado y tipo de contenido.
Herramienta MCP: list_ipfs_files — Lista los archivos IPFS (seleccionados por apodo mediante search_string difuso) de la cuenta correspondiente a la clave API de teckel utilizada en la llamada.
Parámetros
| Nombre | Tipo | Obligatorio | Predeterminado | Descripción |
|---|---|---|---|---|
search_string | string | No | "" | Busca esta cadena en el apodo del archivo. Déjalo en blanco para devolver todos. |
pinned_state | integer | No | 0 | 0 = todas las entradas; 1 = solo fijados; 2 = solo no fijados |
encrypted_state | integer | No | 0 | 0 = todas las entradas; 1 = solo cifrados; 2 = solo no cifrados |
content_type | string | No | "" | Filtra por tipo de contenido, p. ej. image, audio, video. Déjalo en blanco para ignorar. |
curl -X POST "https://mcp-servers.bh.tkllabs.io:9780/get_ipfs_content_for_apikey?search_string=my_video&pinned_state=0&encrypted_state=0&content_type=video" \
-H "Authorization: Bearer YOUR_API_KEY"
POST /remove_ipfs_files_from_account
Desfija y elimina archivos IPFS (seleccionados por búsqueda difusa de apodo) del nodo IPFS de teckel y del inventario de la cuenta.
Nota: Esto solo elimina el contenido del nodo y del inventario de teckel. El contenido puede seguir existiendo en la red IPFS descentralizada.
Herramienta MCP: remove_ipfs_files — Desfija y elimina los archivos IPFS (seleccionados por apodo mediante search_string difuso) del nodo IPFS de teckel y de la cuenta de la billetera, para la cuenta correspondiente a la clave API de teckel utilizada en la llamada. Nota: esto solo elimina el contenido del nodo y del inventario de teckel. Puede seguir existiendo en la red IPFS descentralizada.
Parámetros
| Nombre | Tipo | Obligatorio | Predeterminado | Descripción |
|---|---|---|---|---|
search_string | string | No | "" | Busca esta cadena en el apodo del archivo. Déjalo en blanco para coincidir con todos. |
pinned_state | integer | No | 0 | 0 = todas las entradas; 1 = solo fijados; 2 = solo no fijados |
encrypted_state | integer | No | 0 | 0 = todas las entradas; 1 = solo cifrados; 2 = solo no cifrados |
content_type | string | No | "" | Filtra por tipo de contenido, p. ej. image, audio, video. Déjalo en blanco para ignorar. |
curl -X POST "https://mcp-servers.bh.tkllabs.io:9780/remove_ipfs_files_from_account?search_string=old_test_files&pinned_state=0&encrypted_state=0" \
-H "Authorization: Bearer YOUR_API_KEY"
POST /pin_ipfs_files_for_apikey
Fija archivos IPFS (seleccionados por búsqueda difusa de apodo) en el nodo IPFS de teckel. El fijado evita la recolección automática de basura del contenido.
Herramienta MCP: pin_ipfs_files — Fija los archivos IPFS (seleccionados por apodo mediante search_string difuso) en el nodo IPFS de teckel para la cuenta correspondiente a la clave API de teckel utilizada en la llamada. El fijado evita la eliminación automática del contenido del nodo IPFS.
Parámetros
| Nombre | Tipo | Obligatorio | Predeterminado | Descripción |
|---|---|---|---|---|
search_string | string | No | "" | Busca esta cadena en el apodo del archivo. Déjalo en blanco para coincidir con todos. |
pinned_state | integer | No | 0 | 0 = todas las entradas; 1 = solo fijados; 2 = solo no fijados |
encrypted_state | integer | No | 0 | 0 = todas las entradas; 1 = solo cifrados; 2 = solo no cifrados |
content_type | string | No | "" | Filtra por tipo de contenido, p. ej. image, audio, video. Déjalo en blanco para ignorar. |
curl -X POST "https://mcp-servers.bh.tkllabs.io:9780/pin_ipfs_files_for_apikey?search_string=important_files&pinned_state=2" \
-H "Authorization: Bearer YOUR_API_KEY"
POST /unpin_ipfs_files_for_apikey
Desfija archivos IPFS (seleccionados por búsqueda difusa de apodo) del nodo IPFS de teckel. Los archivos desfijados son elegibles para la recolección automática de basura.
Herramienta MCP: unpin_ipfs_files — Desfija los archivos IPFS (seleccionados por apodo mediante search_string difuso) del nodo IPFS de teckel para la cuenta correspondiente a la clave API de teckel utilizada en la llamada. El desfijado permite la eliminación automática del contenido del nodo IPFS.
Parámetros
| Nombre | Tipo | Obligatorio | Predeterminado | Descripción |
|---|---|---|---|---|
search_string | string | No | "" | Busca esta cadena en el apodo del archivo. Déjalo en blanco para coincidir con todos. |
pinned_state | integer | No | 0 | 0 = todas las entradas; 1 = solo fijados; 2 = solo no fijados |
encrypted_state | integer | No | 0 | 0 = todas las entradas; 1 = solo cifrados; 2 = solo no cifrados |
content_type | string | No | "" | Filtra por tipo de contenido, p. ej. image, audio, video. Déjalo en blanco para ignorar. |
curl -X POST "https://mcp-servers.bh.tkllabs.io:9780/unpin_ipfs_files_for_apikey?search_string=old_drafts&pinned_state=1" \
-H "Authorization: Bearer YOUR_API_KEY"
POST /pin_ipfs_cid_for_apikey
Fija la entidad IPFS individual identificada por su CID en el nodo IPFS de teckel. El fijado evita la eliminación automática.
Herramienta MCP: pin_ipfs_cid — Fija la entidad individual identificada por su CID de IPFS en el nodo IPFS de teckel para la cuenta correspondiente a la clave API de teckel utilizada en la llamada. El fijado evita la eliminación automática del contenido del nodo IPFS.
Parámetros
| Nombre | Tipo | Requerido | Por defecto | Descripción |
|---|---|---|---|---|
cid | string | No | "" | Identificador de contenido IPFS del archivo a fijar |
curl -X POST "https://mcp-servers.bh.tkllabs.io:9780/pin_ipfs_cid_for_apikey?cid=QmExampleCID123" \
-H "Authorization: Bearer YOUR_API_KEY"
POST /remove_ipfs_cid_from_account
Desfijar y eliminar la entidad IPFS individual identificada por su CID del nodo IPFS de teckel y del inventario de la cuenta.
Nota: Esto solo elimina el contenido del nodo y del inventario de teckel. El contenido puede seguir existiendo en la red IPFS descentralizada.
Herramienta MCP: remove_ipfs_cid_from_account — Desfijar y eliminar la entidad individual identificada por su CID de IPFS del nodo IPFS de teckel y de la cuenta de la billetera, para la cuenta correspondiente a la clave API de teckel utilizada en la llamada. Nota: esto solo elimina el contenido del nodo y del inventario de teckel. Puede seguir existiendo en la red descentralizada de IPFS.
Parámetros
| Nombre | Tipo | Requerido | Por defecto | Descripción |
|---|---|---|---|---|
cid | string | No | "" | Identificador de contenido IPFS del archivo a eliminar |
curl -X POST "https://mcp-servers.bh.tkllabs.io:9780/remove_ipfs_cid_from_account?cid=QmExampleCID123" \
-H "Authorization: Bearer YOUR_API_KEY"
POST /publish_ipfs_file_to_webserver
Recuperar un archivo IPFS por CID del nodo de teckel y publicarlo en el servidor web de teckel, aplicando descifrado si es necesario. Devuelve una URL pública navegable.
Herramienta MCP: publish_ipfs_file_to_webserver — Recuperar el archivo IPFS, identificado por su CID de IPFS, del nodo IPFS de teckel, y publicarlo en el servidor web de teckel, aplicando descifrado si es necesario, para la cuenta correspondiente a la clave API de teckel utilizada en la llamada, devolviendo la URL navegable.
Parámetros
| Nombre | Tipo | Requerido | Por defecto | Descripción |
|---|---|---|---|---|
cid | string | No | "" | Identificador de contenido IPFS del archivo a publicar |
curl -X POST "https://mcp-servers.bh.tkllabs.io:9780/publish_ipfs_file_to_webserver?cid=QmExampleCID123" \
-H "Authorization: Bearer YOUR_API_KEY"
POST /upload_sender_file_to_ipfs_for_apikey
Subir un archivo al nodo IPFS de teckel para la cuenta asociada a la clave API. El contenido se pre-examina para cumplir con los términos de teckel antes de ser aceptado.
Herramienta MCP: upload_file_to_ipfs — Subir el contenido del archivo al nodo IPFS de teckel para la cuenta correspondiente a la clave API de teckel utilizada en la llamada. El contenido se pre-examinará para comprobar su compatibilidad con los términos de teckel y se rechazará si no cumple.
Parámetros
| Nombre | En | Tipo | Requerido | Por defecto | Descripción |
|---|---|---|---|---|---|
file | cuerpo de formulario multipart | archivo | Sí | — | Archivo a subir |
nicknameOnIPFS | consulta | string | No | "" | Apodo para el listado de IPFS. Se genera automáticamente si está en blanco. |
doEncryptOnIPFS | consulta | string | No | "false" | Aplicar cifrado antes de subir. true o false. |
curl -X POST "https://mcp-servers.bh.tkllabs.io:9780/upload_sender_file_to_ipfs_for_apikey?nicknameOnIPFS=my_document&doEncryptOnIPFS=false" \
-H "Authorization: Bearer YOUR_API_KEY" \
-F "file=@/path/to/your/file.pdf"
POST /upload_sender_base64_to_ipfs_for_apikey
Subir datos de archivo codificados en base64 al nodo IPFS de teckel para la cuenta asociada a la clave API. El contenido se pre-examina para cumplir con los términos de teckel antes de ser aceptado.
Herramienta MCP: upload_base64_file_to_ipfs — Subir el contenido del archivo codificado en base64 al nodo IPFS de teckel para la cuenta correspondiente a la clave API de teckel utilizada en la llamada. El contenido se pre-examinará para comprobar su compatibilidad con los términos de teckel y se rechazará si no cumple.
Parámetros
| Nombre | Tipo | Requerido | Por defecto | Descripción |
|---|---|---|---|---|
base64_data | string | No | "" | Datos de archivo codificados en base64 |
nicknameOnIPFS | string | No | "" | Apodo para el listado de IPFS. Se genera automáticamente si está en blanco. |
doEncryptOnIPFS | string | No | "false" | Aplicar cifrado antes de subir. true o false. |
curl -X POST "https://mcp-servers.bh.tkllabs.io:9780/upload_sender_base64_to_ipfs_for_apikey?base64_data=SGVsbG8gV29ybGQ%3D&nicknameOnIPFS=my_file&doEncryptOnIPFS=false" \
-H "Authorization: Bearer YOUR_API_KEY"
POST /retrieve_ipfs_file_for_apikey
Recuperar el contenido de un archivo IPFS por CID del inventario de la cuenta. Descifra automáticamente si el archivo está cifrado. Solo se admiten archivos publicados originalmente en IPFS a través de teckel.
Herramienta MCP: retrieve_ipfs_file — Recuperar el contenido del archivo IPFS identificado por el CID proporcionado, del inventario de la cuenta correspondiente a la clave API de teckel utilizada en la llamada. Se descifrará automáticamente si está cifrado. Solo se admiten archivos publicados originalmente en IPFS a través de teckel, es decir, no contenido IPFS genérico (de origen no teckel).
Parámetros
| Nombre | Tipo | Requerido | Por defecto | Descripción |
|---|---|---|---|---|
cid | string | No | "" | Identificador de contenido IPFS del archivo a recuperar |
curl -X POST "https://mcp-servers.bh.tkllabs.io:9780/retrieve_ipfs_file_for_apikey?cid=QmExampleCID123" \
-H "Authorization: Bearer YOUR_API_KEY"