{
  "specVersion": "1.0",
  "host": {
    "displayName": "Latchshot",
    "documentationUrl": "https://latchshot.fly.dev/integrations.md",
    "logoUrl": "https://latchshot.fly.dev/latchshot-social.png"
  },
  "entries": [
    {
      "identifier": "urn:air:latchshot.fly.dev:mcp:latchshot",
      "displayName": "Latchshot screenshot and PDF MCP server",
      "type": "application/mcp-server-card+json",
      "data": {
        "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
        "name": "io.github.BaiqingL/latchshot",
        "title": "Latchshot",
        "description": "Hosted public-page screenshots and PDFs with guarded Chromium and inline MCP artifacts.",
        "websiteUrl": "https://latchshot.fly.dev/docs.md#hosted-mcp-server",
        "version": "1.0.2",
        "repository": {
          "url": "https://github.com/BaiqingL/latchshot-mcp",
          "source": "github",
          "id": "1305296171"
        },
        "remotes": [
          {
            "type": "streamable-http",
            "url": "https://latchshot.fly.dev/mcp",
            "headers": [
              {
                "name": "Authorization",
                "description": "API key as Bearer ls_live_... Get 100 recurring free renders at https://latchshot.fly.dev/?intent=mcpmetadata#trial",
                "isRequired": true,
                "isSecret": true
              }
            ]
          }
        ]
      },
      "description": "Capture guarded screenshots or PDFs of public web pages through an authenticated remote MCP server, with artifacts returned inline.",
      "tags": [
        "screenshot",
        "pdf",
        "public-web-page",
        "browser-automation",
        "remote-mcp"
      ],
      "capabilities": [
        "capture_page",
        "get_usage"
      ],
      "representativeQueries": [
        "capture a screenshot of this public webpage",
        "render this public webpage as a PDF",
        "take a full-page screenshot for a report",
        "check my remaining Latchshot render quota"
      ],
      "version": "1.0.2",
      "updatedAt": "2026-07-19T09:16:15.454291Z",
      "metadata": {
        "authentication": "Required Bearer API key",
        "freePlan": "100 successful renders per UTC month",
        "trialUrl": "https://latchshot.fly.dev/?intent=ard#trial",
        "integrationGuideUrl": "https://latchshot.fly.dev/integrations.md"
      }
    },
    {
      "identifier": "urn:air:latchshot.fly.dev:skill:page-capture",
      "displayName": "Latchshot public-page screenshot and PDF skill",
      "type": "text/markdown; profile=\"urn:air:agent-skills\"",
      "url": "https://raw.githubusercontent.com/BaiqingL/latchshot-page-capture/v1.1.0/SKILL.md",
      "description": "Try one public webpage as a no-key JPEG, or save validated PNG, JPEG, or PDF artifacts through Latchshot from a skills-compatible coding agent.",
      "tags": [
        "agent-skill",
        "screenshot",
        "pdf",
        "website-thumbnail",
        "public-web-page"
      ],
      "capabilities": [
        "demo_public_page_without_key",
        "capture_public_page",
        "render_public_page_pdf",
        "get_usage"
      ],
      "representativeQueries": [
        "capture this public webpage as a PNG file",
        "try one public webpage as a JPEG without an API key",
        "take a full-page screenshot for a QA report",
        "save this public webpage as a PDF",
        "check my remaining Latchshot renders"
      ],
      "version": "1.1.0",
      "updatedAt": "2026-07-21T07:50:49Z",
      "metadata": {
        "repositoryUrl": "https://github.com/BaiqingL/latchshot-page-capture",
        "authentication": "No key for one constrained JPEG demo; LATCHSHOT_API_KEY required for full capture and usage",
        "demoLimit": "3 attempts per IP address per hour",
        "freePlan": "100 successful renders per UTC month",
        "trialUrl": "https://latchshot.fly.dev/?intent=agentskill#trial",
        "runtime": "Node.js 20 or newer"
      }
    }
  ]
}
