{
  "format_version": "0.2.0",
  "report_id": "958a22f8-624b-4783-809e-da322d39ce04",
  "generated_at": "2026-09-23T00:17:15.775Z",
  "subject": {
    "server_name": "io.github.firecrawl/firecrawl-mcp-server",
    "artifact": {
      "ecosystem": "npm",
      "package": "firecrawl-mcp",
      "version": "3.25.3",
      "sha256": "ccd3074ca7be3394d4dbf653ae7d0e0ea1a1b4d27f831105a00921e048928627",
      "download_url": "https://registry.npmjs.org/firecrawl-mcp/-/firecrawl-mcp-3.25.3.tgz",
      "registry_metadata_url": "https://registry.npmjs.org/firecrawl-mcp/3.25.3",
      "acquired_at": "2026-09-23T00:17:15.775Z",
      "registry_metadata_sha256": "439cbc704eacaadafda7e76c3c81db81abb8efbb937a5111975036e70e857323",
      "integrity_claim": "sha512-XvhSvmOiz6X+Hh+3n9UaDHekkfBXDynLyxvBD1HtUnECqGKg1F0F+WPtgUHH8LNclppHCVf3ii5Z0VljYt7JAg==",
      "integrity_verified": true
    }
  },
  "analysis": {
    "engine": {
      "name": "sentinel",
      "version": "0.2.0",
      "build_sha256": "76ecfa3e5785d89b34d6618b32c84c01f0e40666b3541871cc874aba61200160"
    },
    "protocol_profile": {
      "id": "mcp-2026-07-28",
      "specification_revision": "2026-07-28",
      "local_retrieval_date": "2026-08-01",
      "discovery_status": "not_run"
    },
    "authorization_profiles": [
      {
        "id": "none",
        "credential_present": false,
        "description": "No credentials were supplied."
      }
    ],
    "rule_pack": {
      "version": "0.1.0",
      "sha256": "302d85219dda34199bd2402fcc94ba34233152fe996a128e0b332ac3efef24b3"
    },
    "semantic_analysis": []
  },
  "observations": [
    {
      "id": "observation:package-metadata",
      "kind": "artifact_metadata",
      "coverage": "declared",
      "evidence": [
        {
          "sha256": "63a45416921a1477778a83d67df6e4b57e0d12a965be10fac7f6ef44608b8ce3",
          "artifact_path": "package/package.json",
          "capture_kind": "artifact_file"
        }
      ],
      "data": {
        "name": "firecrawl-mcp",
        "version": "3.25.3",
        "mcpName": "io.github.firecrawl/firecrawl-mcp-server",
        "description": "MCP server for Firecrawl — search, scrape, and interact with the web, and search scientific papers. Supports both cloud and self-hosted instances. Features include web search, scraping, page interaction, batch processing, LLM-powered content analysis, and research paper search over biomedical and arXiv literature (PubMed, bioRxiv, medRxiv, arXiv) with citation-graph expansion and full-text reading.",
        "bin": {
          "firecrawl-mcp": "dist/index.js"
        },
        "scripts": {
          "build": "rm -rf dist && tsup && node -e \"require('fs').chmodSync('dist/index.js', '755')\"",
          "test": "npm run build && node --test tests/*.test.mjs",
          "start": "node dist/index.js",
          "start:cloud": "CLOUD_SERVICE=true node dist/index.js",
          "lint": "eslint src/**/*.ts",
          "lint:fix": "eslint src/**/*.ts --fix",
          "format": "prettier --write .",
          "publish-prod": "npm run build && npm publish",
          "publish-beta": "npm run build && npm publish --tag beta"
        },
        "engines": {
          "node": ">=22.0.0"
        }
      }
    },
    {
      "id": "observation:file-inventory",
      "kind": "file",
      "coverage": "declared",
      "evidence": [
        {
          "sha256": "ccd3074ca7be3394d4dbf653ae7d0e0ea1a1b4d27f831105a00921e048928627",
          "capture_kind": "artifact_file"
        }
      ],
      "data": {
        "entry_count": 6,
        "regular_file_bytes": 234199,
        "entries": [
          {
            "path": "package/dist/index.js",
            "type": "file",
            "size": 178114,
            "sha256": "1d8e40bb16401e81b1fd9ce2e307c97262ff83eaa373efa47e48175f164e2548"
          },
          {
            "path": "package/dist/origin.js",
            "type": "file",
            "size": 1203,
            "sha256": "c03f07faddf4e1c383faeb959354a143837cc81cf421867ed2abd7d3e4bb570e"
          },
          {
            "path": "package/dist/www-authenticate.js",
            "type": "file",
            "size": 175,
            "sha256": "e84a9ee0a8773281182ef9427daa9d4f9444419cf2b2efa3ba5fcf5306d3d2d2"
          },
          {
            "path": "package/LICENSE",
            "type": "file",
            "size": 1065,
            "sha256": "9c12811442b47e27f690be7cf0252f6bf93ddee18476f13e0fc6b4badb09c22c"
          },
          {
            "path": "package/package.json",
            "type": "file",
            "size": 2145,
            "sha256": "63a45416921a1477778a83d67df6e4b57e0d12a965be10fac7f6ef44608b8ce3"
          },
          {
            "path": "package/README.md",
            "type": "file",
            "size": 51497,
            "sha256": "a5bafc2c42bb3a006e07e2a56d1702cda153952dd503a3419561b41795d3acd8"
          }
        ]
      }
    },
    {
      "id": "observation:registry-metadata",
      "kind": "artifact_metadata",
      "coverage": "declared",
      "evidence": [
        {
          "sha256": "439cbc704eacaadafda7e76c3c81db81abb8efbb937a5111975036e70e857323",
          "capture_kind": "registry_metadata"
        }
      ],
      "data": {
        "metadata_url": "https://registry.npmjs.org/firecrawl-mcp/3.25.3",
        "requested_package": "firecrawl-mcp",
        "requested_version": "3.25.3",
        "tarball_url": "https://registry.npmjs.org/firecrawl-mcp/-/firecrawl-mcp-3.25.3.tgz",
        "integrity_claim": "sha512-XvhSvmOiz6X+Hh+3n9UaDHekkfBXDynLyxvBD1HtUnECqGKg1F0F+WPtgUHH8LNclppHCVf3ii5Z0VljYt7JAg==",
        "integrity_verified": true
      }
    },
    {
      "id": "observation:runtime-dependencies",
      "kind": "dependency",
      "coverage": "declared",
      "evidence": [
        {
          "sha256": "63a45416921a1477778a83d67df6e4b57e0d12a965be10fac7f6ef44608b8ce3",
          "artifact_path": "package/package.json",
          "capture_kind": "artifact_file"
        }
      ],
      "data": {
        "dependencies": {
          "dotenv": "^17.2.2",
          "fastmcp": "4.3.2",
          "firecrawl": "4.40.0",
          "zod": "^4.2.1"
        }
      }
    },
    {
      "id": "observation:network-api-7d49fd3f2501f51b",
      "kind": "code_indicator",
      "coverage": "inferred",
      "evidence": [
        {
          "sha256": "1d8e40bb16401e81b1fd9ce2e307c97262ff83eaa373efa47e48175f164e2548",
          "artifact_path": "package/dist/index.js",
          "capture_kind": "artifact_file",
          "byte_range": [
            22374,
            22380
          ]
        }
      ],
      "data": {
        "indicator": "network-api",
        "description": "Source references a network API."
      }
    },
    {
      "id": "observation:filesystem-api-e8c0f394975586a5",
      "kind": "code_indicator",
      "coverage": "inferred",
      "evidence": [
        {
          "sha256": "1d8e40bb16401e81b1fd9ce2e307c97262ff83eaa373efa47e48175f164e2548",
          "artifact_path": "package/dist/index.js",
          "capture_kind": "artifact_file",
          "byte_range": [
            171343,
            171352
          ]
        }
      ],
      "data": {
        "indicator": "filesystem-api",
        "description": "Source references a filesystem API."
      }
    },
    {
      "id": "observation:static-tool-inventory",
      "kind": "protocol_inventory",
      "coverage": "inferred",
      "evidence": [
        {
          "sha256": "ccd3074ca7be3394d4dbf653ae7d0e0ea1a1b4d27f831105a00921e048928627",
          "capture_kind": "artifact_file"
        }
      ],
      "data": {
        "extraction": "static_source_analysis",
        "complete": false,
        "incompleteness": [
          "no_recognized_registration_pattern",
          "tools_inferred_from_definitions_only"
        ],
        "scanned_files": [
          "package/dist/index.js",
          "package/dist/origin.js",
          "package/dist/www-authenticate.js"
        ],
        "tools": [
          {
            "name": "firecrawl_agent",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              161340,
              163364
            ],
            "description_sha256": "6e0fd21745600a73e70d09060dfe62e72e4525be53957183a1fb473e7231b08e",
            "description_repr": "string_literal",
            "input_schema_sha256": "8a8e6387b506d25f54ff2a7c05c11c328c86342f083c3a5dbfaf70dad584daa3",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_agent_status",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              163382,
              164723
            ],
            "description_sha256": "437f1fd93f1cd6b46a5a80ef6511e9fecaafdfb646c404b4e173cbe37b5f4a57",
            "description_repr": "string_literal",
            "input_schema_sha256": "b3d7077a38b2cb99e4f6d476b29374c3116a268c1900b4e753efd6028e623d6d",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_check_crawl_status",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              159271,
              160170
            ],
            "description_sha256": "bcb065d57566228584057de87e19dd50f7ad01534d75f3097cf4c3c2a5b64c62",
            "description_repr": "string_literal",
            "input_schema_sha256": "b3d7077a38b2cb99e4f6d476b29374c3116a268c1900b4e753efd6028e623d6d",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_crawl",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              156277,
              159253
            ],
            "description_sha256": "25649d7791ff0002501bb04e94cd9d6d3d48f47b378b80dd6740fe9e07046bb3",
            "description_repr": "string_literal",
            "input_schema_sha256": "51d5684f3f4aa4f4ae16d2ea42e0fdc2eac781cf8298725045e13033194c88f3",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_credit_usage",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              48196,
              51071
            ],
            "description_sha256": "d610bd74f9b58fe649aa9365065f2c0cb1576093417349edd71000538f62a136",
            "description_repr": "string_literal",
            "input_schema_sha256": "55db4982210e33ff59716f9d41e92f943ed0edb4a86a917e7aa60ae491d57fa2",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_developer_search",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              16364,
              18091
            ],
            "description_sha256": "bacef0504f744fc6f9d7310079e93dd62488fd86e147408b5e67333dcaf621b5",
            "description_repr": "string_literal",
            "input_schema_sha256": "8df0eb650249224284a9b67d8effd6b757b3caebccad1dd0baa53d239d1f755f",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_extract",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              160188,
              161322
            ],
            "description_sha256": "80875cf67bef19b5aa19f572878d5695b3acfe1767076de6429a01e1498b378f",
            "description_repr": "string_literal",
            "input_schema_sha256": "106495692839bb5affba9fe6692fabd3ea1266c06a6955a15f1f4b7596dac300",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_feedback",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              151205,
              156257
            ],
            "description_sha256": "25ada18239140ced34c7bd16bc30ed3b441debebf1491c754850ef65f28924e3",
            "description_repr": "string_literal",
            "input_schema_sha256": "021410b456a21b831698cdc8a00226ab994df07c1e4a43f67ea5bbbe14acaaf2",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_find_tools",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              132156,
              135377
            ],
            "description_sha256": "c51a04787bc659d53c139ea935c92c0919eb09535b1521d4cd35d0ad07560599",
            "description_repr": "source_text",
            "input_schema_sha256": "5e35d72ceddbeddc53d02e97274125517c9819df6d44596f5d084abb478d941d",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_interact",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              164741,
              168263
            ],
            "description_sha256": "9bcc166bd0fe9e6e8732ec076d8d461a31f8d66e149d1e4c5e3aa7a8cd02fd99",
            "description_repr": "string_literal",
            "input_schema_sha256": "66a0b65048cef3b2249368fb9a05bf61b7d8803ccff02b610352555a38824e89",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_interact_stop",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              168281,
              169283
            ],
            "description_sha256": "c08c8b5758ad123824329fd12481618240d68d30f98721a53d1504d62462c801",
            "description_repr": "string_literal",
            "input_schema_sha256": "238be6d52414be0f730d54da60586efd4db7071e42ff1824296be33b5244482f",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_map",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              124956,
              126636
            ],
            "description_sha256": "8e2e08055a8e408db81833671e3fd11388c0c4f2357eea328d9c651db5cba135",
            "description_repr": "string_literal",
            "input_schema_sha256": "49c481f74812b4085135318ed3e3253c397f6e006b154e2157fca4fbc5012405",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_monitor_check",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              34243,
              35805
            ],
            "description_sha256": "442231c9d932d9790d63f223578cfe05960b0bba3809448b2303bb6f9cf0c98a",
            "description_repr": "string_literal",
            "input_schema_sha256": "3269f80cf5a2fef1e3520c11ccfa4e273e6f35eaa3c424196c6b8211c5e5547d",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_monitor_checks",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              33099,
              34222
            ],
            "description_sha256": "12eff404d7439cb4eadd5cf4d12e5cf56f6df70981397ad1cd0ba396cfb5d9b7",
            "description_repr": "string_literal",
            "input_schema_sha256": "0068b311e11d4b0a8c4459dfed91471c1d0745f1b34beb89afcb67275987474d",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_monitor_create",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              25831,
              28125
            ],
            "description_sha256": "367c5c7144bcccb0dd7a0a61d55913e087fa83fae106469628439ccf516d3911",
            "description_repr": "string_literal",
            "input_schema_sha256": "b4b0d5a66f057ad78ef57cf1a389f772709a43bab0d7c18b01c16e846fbe1baa",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_monitor_delete",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              31156,
              32084
            ],
            "description_sha256": "4b6629ddb5d9c559004d818bbfbc7b2b1846a3f891df7daf72b923d9ead9c439",
            "description_repr": "string_literal",
            "input_schema_sha256": "5f96fcf4007a83139f0500c828e624500072df9413512893a8982bb2c8e89092",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_monitor_get",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              29169,
              29981
            ],
            "description_sha256": "5048f239c31b18d5ea5cb403e3495cced96bfd7d25fd9d945f00f885eb260edb",
            "description_repr": "string_literal",
            "input_schema_sha256": "5f96fcf4007a83139f0500c828e624500072df9413512893a8982bb2c8e89092",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_monitor_list",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              28146,
              29148
            ],
            "description_sha256": "f82eddfee287bed28ed9ac62cea3d6a7bd92bcec9b5842eb7cbdba27f3eb74db",
            "description_repr": "string_literal",
            "input_schema_sha256": "6e9cf4319a1bc043e160ac78d748d4db56ec3e2a415326665f78835259f4436b",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_monitor_run",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              32105,
              33078
            ],
            "description_sha256": "6768e440b9d6064f919bb626549928596cd234dcca9b06ca775d60b69b7e4cc4",
            "description_repr": "string_literal",
            "input_schema_sha256": "5f96fcf4007a83139f0500c828e624500072df9413512893a8982bb2c8e89092",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_monitor_update",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              30002,
              31135
            ],
            "description_sha256": "a4abca1d7a337f027801045cd73dfba88eabbd0f7850b766a12be9b3a4046b8d",
            "description_repr": "string_literal",
            "input_schema_sha256": "637ec02fdb2e5adf78668b9d558ebd74e9e52e140743fa9a15824db15ced7979",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_parse",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              169301,
              172621
            ],
            "description_sha256": "95bb6672c075b244e71ff8ade647eb847b80080bd1ce9b85c5630c4e4f211e7b",
            "description_repr": "string_literal",
            "input_schema_sha256": "aab409f015f99e35f511ef518531e74dafdd6e6b6d9f7877bf11eabecb7761f3",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_research_inspect_paper",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              41950,
              43153
            ],
            "description_sha256": "000022503306a3a1b4038bc15ef595fc32eec425710ead129f8a0b11402e1247",
            "description_repr": "string_literal",
            "input_schema_sha256": "823b412ff9014db2e6f199f86e0a66a2b3b28afe0cac9c1ff028c7cad8065177",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_research_read_paper",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              45222,
              46904
            ],
            "description_sha256": "56049b21ac095194f96a4f368dc85d449049429186b857361fb0034c07e9d239",
            "description_repr": "string_literal",
            "input_schema_sha256": "49be3474f88eeb7e8b0aa31ec5aad9eb31d2633f7d7148a4ae1bcd2693e5c41c",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_research_related_papers",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              43174,
              45201
            ],
            "description_sha256": "353ca09daf6256d9e017b90fc4200ec9bf82a7e060c3ed4298ba4e01ba0f6a21",
            "description_repr": "string_literal",
            "input_schema_sha256": "62af16aaf3d74638a0719043c8ac01cfd325644a568e4a916ab74159fc5435bb",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_research_search_github",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              46925,
              47835
            ],
            "description_sha256": "29ae7d85e06f44b58068a99d880ff6e476c37ab266a4968f774b060a2affda51",
            "description_repr": "string_literal",
            "input_schema_sha256": "af6297eb482e2f3e0165afb9ad7e24d0d45002c9c7647848871bc9176e6fe3ac",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_research_search_papers",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              39459,
              41929
            ],
            "description_sha256": "0b90d0b4bac0a8ecc6f5008667237ec1310c4c4062dc93dd0c5e0af4971ab4fa",
            "description_repr": "string_literal",
            "input_schema_sha256": "de701e16cbd5a74e798fd70b2ce1dd35610e1c067fc897182b5746c4c9c57578",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_scrape",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              118627,
              124911
            ],
            "description_sha256": "3977d81db7b27cd544e6a9defea2776547276dfef5e6aa1715d68ed3f55b5394",
            "description_repr": "string_literal",
            "input_schema_sha256": "d86f6d39d14f45c949fe325ec92aa6e8e2fb5785bdebb53de08b111191353615",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_search",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              126654,
              130471
            ],
            "description_sha256": "262fd5c591f8148e8b108b8dd2179e23169e174a4c1c31c8cb37874cf870a6b6",
            "description_repr": "source_text",
            "input_schema_sha256": "2a4b423a450be3e5bf3753bc9ea9c86200729f38e0f96ea67041ec1b63ef9ab8",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_search_feedback",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              146558,
              150807
            ],
            "description_sha256": "59225dedb205bdbffec91e30da6cb09a0e136a1acb91f43d63bf9aff84d0f436",
            "description_repr": "string_literal",
            "input_schema_sha256": "fbce93436c3466525a6e2e8bd3d6ad59aec428d986c8908a0ee3bcbebc1019c1",
            "input_schema_repr": "source_text"
          }
        ]
      }
    }
  ],
  "findings": [],
  "limitations": [
    {
      "code": "protocol_discovery_not_run",
      "summary": "M1 performs static artifact inspection only; no MCP protocol session was opened."
    },
    {
      "code": "tool_calls_not_performed",
      "summary": "No tools were invoked."
    },
    {
      "code": "semantic_analysis_not_run",
      "summary": "No semantic model analysis was run."
    },
    {
      "code": "static_tool_extraction_incomplete",
      "summary": "The declared tool surface could not be fully resolved from source (no_recognized_registration_pattern, tools_inferred_from_definitions_only). Treat the inventory as a lower bound, not a complete list."
    }
  ]
}