{
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-05",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.3",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "tool": {
    "category": "pdf-tools",
    "endpoint": "https://snapforge.org/mcp",
    "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/snapforge.json",
    "kind": "mcp",
    "listed": "indexed",
    "liveUrl": "https://www.anchorterminal.com/api/v1/live/snapforge.json",
    "markdownUrl": "https://www.anchorterminal.com/tools/snapforge.md",
    "mcpTools": {
      "check": {
        "checker": "anchor-check/1.0",
        "totalTokens": 1623,
        "counts": {
          "error": 0,
          "note": 0,
          "warn": 0
        },
        "findings": []
      },
      "checkedAt": "2026-10-04T22:25:45Z",
      "count": 4,
      "schemaTokens": 1623,
      "status": "ok",
      "tools": [
        {
          "name": "snapforge_screenshot",
          "title": "SnapForge screenshot",
          "description": "Capture a screenshot of a public URL or raw HTML as a PNG/JPEG image. Full-page by default. Requires a SnapForge API key (no key? call snapforge_signup first).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "delay": {
                "description": "Extra wait in milliseconds before capture (0–10000)",
                "maximum": 10000,
                "minimum": 0,
                "type": "integer"
              },
              "format": {
                "description": "Image format: \"png\" (default) or \"jpeg\"",
                "enum": [
                  "png",
                  "jpeg"
                ],
                "type": "string"
              },
              "fullPage": {
                "description": "Capture the full scrollable page (default true)",
                "type": "boolean"
              },
              "height": {
                "description": "Viewport height in pixels (100–2160)",
                "maximum": 2160,
                "minimum": 100,
                "type": "integer"
              },
              "html": {
                "description": "Raw HTML to render instead of a URL (max 2MB). Provide either url or html.",
                "type": "string"
              },
              "quality": {
                "description": "JPEG quality 1–100 (ignored for PNG)",
                "maximum": 100,
                "minimum": 1,
                "type": "integer"
              },
              "scale": {
                "description": "Device pixel ratio for high-DPI/retina output (1–3)",
                "maximum": 3,
                "minimum": 1,
                "type": "integer"
              },
              "url": {
                "description": "Public http/https URL to render. Provide either url or html.",
                "format": "uri",
                "type": "string"
              },
              "waitUntil": {
                "description": "When to consider the page ready: \"load\" (default) or \"networkidle\"",
                "enum": [
                  "load",
                  "networkidle"
                ],
                "type": "string"
              },
              "width": {
                "description": "Viewport width in pixels (100–3840)",
                "maximum": 3840,
                "minimum": 100,
                "type": "integer"
              }
            },
            "type": "object"
          },
          "outputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "bytes": {
                "description": "Size of the returned image in bytes",
                "type": "integer"
              },
              "mimeType": {
                "description": "Image MIME type, e.g. image/png",
                "type": "string"
              }
            },
            "required": [
              "bytes",
              "mimeType"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": false,
            "openWorldHint": true,
            "readOnlyHint": true,
            "title": "SnapForge screenshot"
          }
        },
        {
          "name": "snapforge_pdf",
          "title": "SnapForge PDF",
          "description": "Render a public URL or raw HTML to a PDF (returned as an embedded resource). Requires a SnapForge API key (no key? call snapforge_signup first).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "delay": {
                "description": "Extra wait in milliseconds before capture (0–10000)",
                "maximum": 10000,
                "minimum": 0,
                "type": "integer"
              },
              "html": {
                "description": "Raw HTML to render instead of a URL (max 2MB). Provide either url or html.",
                "type": "string"
              },
              "landscape": {
                "description": "Landscape orientation (default false)",
                "type": "boolean"
              },
              "margin": {
                "description": "CSS size applied to all margins, e.g. \"1cm\"",
                "type": "string"
              },
              "pageFormat": {
                "description": "Paper size when paginating (default A4)",
                "enum": [
                  "Letter",
                  "Legal",
                  "Tabloid",
                  "A0",
                  "A1",
                  "A2",
                  "A3",
                  "A4",
                  "A5",
                  "A6"
                ],
                "type": "string"
              },
              "printBackground": {
                "description": "Include CSS background colors and images (default true)",
                "type": "boolean"
              },
              "singlePage": {
                "description": "Output one continuous page sized to the content height (no A4 pagination)",
                "type": "boolean"
              },
              "url": {
                "description": "Public http/https URL to render. Provide either url or html.",
                "format": "uri",
                "type": "string"
              },
              "waitUntil": {
                "description": "When to consider the page ready: \"load\" (default) or \"networkidle\"",
                "enum": [
                  "load",
                  "networkidle"
                ],
                "type": "string"
              }
            },
            "type": "object"
          },
          "outputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "bytes": {
                "description": "Size of the generated PDF in bytes",
                "type": "integer"
              },
              "mimeType": {
                "description": "Always application/pdf",
                "type": "string"
              }
            },
            "required": [
              "bytes",
              "mimeType"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": false,
            "openWorldHint": true,
            "readOnlyHint": true,
            "title": "SnapForge PDF"
          }
        },
        {
          "name": "snapforge_markdown",
          "title": "SnapForge URL to Markdown",
          "description": "Extract a clean Markdown version of a public URL or raw HTML (article extraction + HTML→Markdown). Great for feeding live web content to an LLM. Requires a SnapForge API key (no key? call snapforge_signup first).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "delay": {
                "description": "Extra wait in milliseconds before capture (0–10000)",
                "maximum": 10000,
                "minimum": 0,
                "type": "integer"
              },
              "html": {
                "description": "Raw HTML to render instead of a URL (max 2MB). Provide either url or html.",
                "type": "string"
              },
              "url": {
                "description": "Public http/https URL to render. Provide either url or html.",
                "format": "uri",
                "type": "string"
              },
              "waitUntil": {
                "description": "When to consider the page ready: \"load\" (default) or \"networkidle\"",
                "enum": [
                  "load",
                  "networkidle"
                ],
                "type": "string"
              }
            },
            "type": "object"
          },
          "outputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "markdown": {
                "description": "The extracted Markdown content",
                "type": "string"
              }
            },
            "required": [
              "markdown"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": false,
            "openWorldHint": true,
            "readOnlyHint": true,
            "title": "SnapForge URL to Markdown"
          }
        },
        {
          "name": "snapforge_signup",
          "title": "SnapForge signup (free API key)",
          "description": "Create a free SnapForge account (100 renders, one-time free trial, not a monthly allowance) with just an email address and get the API key instantly. The key is bound to the current MCP session, so the screenshot/pdf/markdown tools work immediately after signup, no browser needed.",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "email": {
                "description": "Email address to attach the API key to (the key is also emailed there)",
                "type": "string"
              }
            },
            "required": [
              "email"
            ],
            "type": "object"
          },
          "outputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "apiKey": {
                "description": "Your SnapForge API key",
                "type": "string"
              },
              "monthlyQuota": {
                "description": "Renders included: 100 in total on the free trial (no monthly reset), per month on paid plans",
                "type": "integer"
              },
              "plan": {
                "description": "Plan name (free)",
                "type": "string"
              }
            },
            "required": [
              "apiKey",
              "plan",
              "monthlyQuota"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": false,
            "openWorldHint": true,
            "readOnlyHint": false,
            "title": "SnapForge signup (free API key)"
          }
        }
      ]
    },
    "name": "snapforge",
    "note": "Indexed from the official MCP registry: facts and our own checks, not reviewed, so no score, grade or rank.",
    "packages": [
      {
        "registryType": "npm",
        "identifier": "snapforge-mcp",
        "version": "1.3.0",
        "transport": "stdio"
      }
    ],
    "pageJsonUrl": "https://www.anchorterminal.com/tools/snapforge.json",
    "popularity": {
      "githubStars": 0,
      "npmWeekly": 33
    },
    "registryName": "org.snapforge/snapforge",
    "remotes": [
      {
        "type": "streamable-http",
        "url": "https://snapforge.org/mcp"
      }
    ],
    "repository": "https://github.com/sporty303/snapforge-mcp",
    "reviewed": false,
    "slug": "snapforge",
    "source": "the official MCP registry",
    "sourceUrl": "https://registry.modelcontextprotocol.io/v0.1/servers?search=org.snapforge/snapforge",
    "summary": "Screenshots, PDFs and Markdown from any URL or HTML for AI agents, via the SnapForge API",
    "updatedAt": "2026-07-20T22:48:47Z",
    "url": "https://www.anchorterminal.com/tools/snapforge",
    "vendor": "snapforge.org",
    "vendorUrl": "https://snapforge.org",
    "version": "1.3.0",
    "websiteUrl": "https://snapforge.org",
    "where": "both",
    "why": [
      "vendor"
    ]
  }
}
