MCP

MCP

Conecta Claude, Cursor, VS Code, ChatGPT o Grok para marcar y detectar archivos en un espacio que te pertenece.

Pega la URL del conector en un cliente que hable MCP por Streamable HTTP. No hay clave de API ni una CLI de archivos. Markedfile inicia sesión con la misma cuenta, incluido SSO y un autenticador, y pregunta qué espacio puede usar la aplicación.

Configura una conexión

  1. 1Añade un servidor MCP en el cliente y elige Streamable HTTP, a veces llamado HTTP.
  2. 2Pega https://markedfile.com/api/mcp. Los fragmentos de abajo son el sitio habitual donde cada cliente guarda esa URL.
  3. 3Termina el inicio de sesión en el navegador y elige el espacio.
  4. 4Permite marcar y detectar. Más adelante puedes revocar la conexión en los ajustes del espacio.

Cómo funciona el inicio de sesión

La conexión usa OAuth 2.1 con PKCE (S256). Apruebas un espacio. El cliente no ve tu contraseña.

  1. 1El cliente se registra solo y envía un reto de código.
  2. 2El navegador abre el inicio de sesión de Markedfile. El SSO y el autenticador son los que la cuenta ya usa.
  3. 3Eliges un espacio que te pertenece y permites marcar, detectar o ambos.
  4. 4Markedfile devuelve un código de un solo uso a la dirección de retorno registrada. El cliente lo cambia por un token de acceso.
  5. 5El token de acceso dura una hora y solo se guarda como hash. El token de actualización rota en cada uso.
  6. 6El token solo puede marcar y detectar en el espacio que elegiste. Un archivo marcado en otro espacio no se resuelve.
  7. 7Revocar la conexión invalida los tokens de inmediato.

Configuración del cliente

Usa Streamable HTTP. Prefiere file_url cuando el archivo ya es público. Si no, llama a create_upload_url, envía los bytes en bruto con PUT o POST y pasa file_id. Usa file_base64 solo para un archivo muy pequeño, de unos 100 KB.

Claude

  1. En claude.ai, abre Ajustes, luego Conectores, y añade un conector personalizado. En Claude Desktop, abre Ajustes, luego Conectores, y añade un conector personalizado.
  2. Pega la URL del conector. Deja que el cliente termine el inicio de sesión en el navegador.
  3. Inicia sesión en Markedfile, con SSO o un autenticador si la cuenta los usa, y elige el espacio.

Claude

https://markedfile.com/api/mcp

Cursor

  1. Abre los ajustes de Cursor, luego MCP, y añade un servidor. También puedes añadir el JSON de abajo a la configuración de MCP.
  2. Elige Streamable HTTP y pega la URL del conector.
  3. Termina el inicio de sesión en el navegador y elige el espacio. Cursor guarda el token de actualización en local.

Cursor

{
  "mcpServers": {
    "markedfile": {
      "url": "https://markedfile.com/api/mcp"
    }
  }
}

VS Code

  1. En VS Code, ejecuta MCP: Add Server desde la paleta de comandos, o añade el JSON de abajo en mcp.json.
  2. Pon el tipo en http y la URL del conector.
  3. Termina el inicio de sesión en el navegador y elige el espacio.

VS Code

{
  "servers": {
    "markedfile": {
      "type": "http",
      "url": "https://markedfile.com/api/mcp"
    }
  }
}

ChatGPT

  1. En ChatGPT, abre Ajustes y luego Conectores. El modo de desarrollador también puede añadir un conector o una app personalizada.
  2. Añade la URL del conector e inicia la sesión.
  3. Inicia sesión en Markedfile y elige el espacio.

ChatGPT

https://markedfile.com/api/mcp

Grok Bot

  1. En Grok Bot, pide a tu bot en el chat que añada un conector con la URL de abajo.
  2. Autoriza tu cuenta de Markedfile en la pantalla de OAuth que se abre.

Grok Bot

https://markedfile.com/api/mcp

Herramientas

create_upload_url
Crea una URL de subida de corta duración para el espacio conectado. Envía los bytes en bruto del archivo a upload_url con PUT o POST. curl puede usar --upload-file o --data-binary. Después pasa file_id a mark_file o detect_file. La URL dura unos 15 minutos. max_bytes es el tope del plan del espacio, vídeo incluido. Esto no marca el archivo y no usa un hueco de archivo activo.
mark_file
Marca un archivo para un destinatario en el espacio conectado. Prefiere file_id de create_upload_url, o file_url cuando el archivo ya es público. Envía file_base64 solo para un archivo muy pequeño, de unos 100 KB. Envía exactamente uno de file_id, file_url o file_base64. recipient o label es el identificador (1–32 caracteres, sin caracteres de control). El archivo marcado vuelve como download_url, un enlace de corta duración. Pon inline_base64 en true solo cuando el archivo marcado pesa unos 100 KB o menos y los bytes tienen que ir en el resultado. Un vídeo entra en cola: el resultado es un id de trabajo y statusUrl, no los bytes marcados.
detect_file
Comprueba un archivo contra el espacio conectado. Prefiere file_id de create_upload_url, o file_url cuando el archivo ya es público. Envía file_base64 solo para un archivo muy pequeño, de unos 100 KB. Envía exactamente uno de file_id, file_url o file_base64. Devuelve el identificador del destinatario cuando la marca pertenece a ese espacio. Un vídeo entra en cola: consulta statusUrl hasta que aparezca result. Una captura de un fotograma no se detecta como imagen.

Límites

Marcar permite 40 solicitudes por minuto, detectar 80 y create_upload_url 30, para la cuenta. El tamaño del archivo, las páginas del PDF y el vídeo siguen el plan del espacio. Una URL de subida caduca en unos 15 minutos y la URL de descarga del archivo marcado caduca en cerca de una hora. Ninguna de las dos es un archivo activo.