Framejet Screenshot

Clean PNG/JPEG screenshots via REST or MCP, with goal-driven multi-step navigation.

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
100%
Integridad del esquema
100%
Calidad de los nombres
80%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~547Tokens (definiciones de herramientas)
~4.7 KBTamaño de respuesta típico
Impacto mínimo en la atención (0.43% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "screenshot": {
      "url": "https://framejet.dev/mcp"
    }
  }
}

Puntos de conexión remotos

https://framejet.dev/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (1)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟡screenshot(url, full_page, width, height, format, ...)

Render any public URL to a PNG or JPEG image. Cookie/consent banners and chat widgets are removed by default so the result is clean enough to reason about. Returns the image inline. For a page that is several clicks past the URL, pass `goal` in plain words and Framejet walks the flow before capturing — you do not need CSS selectors, and you could not write them anyway, because the controls for step 2 do not exist until step 1 has happened. Any text to be typed must be supplied in `values`; nothing is ever invented. If the goal cannot be reached the call fails and no quota is spent, so a returned image always means the goal was reached. When you do know the page, `actions` is cheaper, faster and deterministic.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "description": "The http(s) page to capture"
    },
    "full_page": {
      "description": "Capture the whole scroll height (default false)",
      "type": "boolean"
    },
    "width": {
      "description": "Viewport width, default 1280",
      "type": "integer",
      "minimum": 320,
      "maximum": 3840
    },
    "height": {
      "description": "Viewport height, default 800",
      "type": "integer",
      "minimum": 200,
      "maximum": 4320
    },
    "format": {
      "description": "Image format, default png",
      "type": "string",
      "enum": [
        "png",
        "jpeg"
      ]
    },
    "clean": {
      "description": "Strip cookie banners / chat widgets, default true",
      "type": "boolean"
    },
    "delay": {
      "description": "Extra wait in ms after load",
      "type": "integer",
      "minimum": 0,
      "maximum": 10000
    },
    "goal": {
      "description": "Plain-words description of the page state to reach before capturing, ending with when to stop. Example: 'Search for the Colosseum article, open it, then open its View history page. Stop when the revision list is visible.' Needs `values` for anything that must be typed.",
      "type": "string",
      "maxLength": 300
    },
    "values": {
      "description": "Exact strings a `goal` step may type into a field. Framejet picks among these and never invents text; if none fits, the capture fails.",
      "maxItems": 10,
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 200
      }
    },
    "actions": {
      "description": "Deterministic alternative to `goal` when you already know the page: ';'-separated steps, each verb:arg — click:<css>, type:<css>=<text>, waitfor:<css>, wait:<ms>, scroll:<px>. Prefer this over `goal` whenever you can write the selectors.",
      "type": "string"
    }
  },
  "required": [
    "url"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada1 herramientas
requiere autenticaciónversión no registrada—