{
  "format_version": "0.2.0",
  "report_id": "0312146b-417e-405d-a51f-40537ddd862d",
  "generated_at": "2026-10-09T06:17:52.919Z",
  "subject": {
    "server_name": "io.github.firecrawl/firecrawl-mcp-server",
    "artifact": {
      "ecosystem": "npm",
      "package": "firecrawl-mcp",
      "version": "3.29.0",
      "sha256": "9bb4cac1bc3d2a61a81b17829888a92e673746f656f9584c40cb09827d70f4e1",
      "download_url": "https://registry.npmjs.org/firecrawl-mcp/-/firecrawl-mcp-3.29.0.tgz",
      "registry_metadata_url": "https://registry.npmjs.org/firecrawl-mcp/3.29.0",
      "acquired_at": "2026-10-09T06:17:52.919Z",
      "registry_metadata_sha256": "0b0ae5380a9ff326b02bf186299d6eafcbdb80c0ae97170b1023103ba7dc45fe",
      "integrity_claim": "sha512-/tEHTq/vIkCLuiCqVwBYnZvi3Q6PWpUvm8gTDFI0r11eIMA6NezpZVIyKiL0ABHIqo7cri1eWQ1JV5O5ek6x+A==",
      "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": "1aed387aa0223a7606adc2a98bf1c1f360b2238bbcda6512e91c283409c85de5",
          "artifact_path": "package/package.json",
          "capture_kind": "artifact_file"
        }
      ],
      "data": {
        "name": "firecrawl-mcp",
        "version": "3.29.0",
        "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 --test-concurrency=1 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 .",
          "prepare": "npm run build",
          "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": "9bb4cac1bc3d2a61a81b17829888a92e673746f656f9584c40cb09827d70f4e1",
          "capture_kind": "artifact_file"
        }
      ],
      "data": {
        "entry_count": 11,
        "regular_file_bytes": 628834,
        "entries": [
          {
            "path": "package/dist/agent-hints.js",
            "type": "file",
            "size": 1704,
            "sha256": "38901a790035ae3804654aa7d0d24cadda60ed11ea2b06c1a65eeaca07e6585f"
          },
          {
            "path": "package/dist/index.js",
            "type": "file",
            "size": 293164,
            "sha256": "1e3db63428384c5aacdd021d6fa4fc04f3ca8478639a1053ab3a83f0c6874f04"
          },
          {
            "path": "package/dist/introspection-cache.js",
            "type": "file",
            "size": 1993,
            "sha256": "9c3dad3d3e5a1a43d8d9b96c2e47048e792aad0793881a4a803ae872a45b8bdb"
          },
          {
            "path": "package/dist/keyless-signup-link.js",
            "type": "file",
            "size": 1412,
            "sha256": "14a479cd652373ae8f4ead63336082fb77851d35e4a5e8de1e02c338814bd01c"
          },
          {
            "path": "package/dist/origin.js",
            "type": "file",
            "size": 1203,
            "sha256": "c03f07faddf4e1c383faeb959354a143837cc81cf421867ed2abd7d3e4bb570e"
          },
          {
            "path": "package/dist/server.d.ts",
            "type": "file",
            "size": 16944,
            "sha256": "a67551fcb62f111ae6911a543e17b81ee5dca30008ae3cc18f5f905d3c890f3b"
          },
          {
            "path": "package/dist/server.js",
            "type": "file",
            "size": 244722,
            "sha256": "9cc08a0e49e1d210f128a32b855e202e84fb44b5eb84eb5e107bd503e92044aa"
          },
          {
            "path": "package/dist/www-authenticate.js",
            "type": "file",
            "size": 183,
            "sha256": "6016b63ecfa7c4c9171b0960b40208fdc935d28b7ad8b53ad46398739c3a8380"
          },
          {
            "path": "package/LICENSE",
            "type": "file",
            "size": 1065,
            "sha256": "9c12811442b47e27f690be7cf0252f6bf93ddee18476f13e0fc6b4badb09c22c"
          },
          {
            "path": "package/package.json",
            "type": "file",
            "size": 2585,
            "sha256": "1aed387aa0223a7606adc2a98bf1c1f360b2238bbcda6512e91c283409c85de5"
          },
          {
            "path": "package/README.md",
            "type": "file",
            "size": 63859,
            "sha256": "890b3911e22aefdedec029314fdefec7da3f2257ca46194ab1200c8d7e3a1950"
          }
        ]
      }
    },
    {
      "id": "observation:registry-metadata",
      "kind": "artifact_metadata",
      "coverage": "declared",
      "evidence": [
        {
          "sha256": "0b0ae5380a9ff326b02bf186299d6eafcbdb80c0ae97170b1023103ba7dc45fe",
          "capture_kind": "registry_metadata"
        }
      ],
      "data": {
        "metadata_url": "https://registry.npmjs.org/firecrawl-mcp/3.29.0",
        "requested_package": "firecrawl-mcp",
        "requested_version": "3.29.0",
        "tarball_url": "https://registry.npmjs.org/firecrawl-mcp/-/firecrawl-mcp-3.29.0.tgz",
        "integrity_claim": "sha512-/tEHTq/vIkCLuiCqVwBYnZvi3Q6PWpUvm8gTDFI0r11eIMA6NezpZVIyKiL0ABHIqo7cri1eWQ1JV5O5ek6x+A==",
        "integrity_verified": true
      }
    },
    {
      "id": "observation:runtime-dependencies",
      "kind": "dependency",
      "coverage": "declared",
      "evidence": [
        {
          "sha256": "1aed387aa0223a7606adc2a98bf1c1f360b2238bbcda6512e91c283409c85de5",
          "artifact_path": "package/package.json",
          "capture_kind": "artifact_file"
        }
      ],
      "data": {
        "dependencies": {
          "@modelcontextprotocol/sdk": "^1.29.0",
          "dotenv": "^17.2.2",
          "fastmcp": "4.3.2",
          "firecrawl": "4.42.0",
          "fuse.js": "^7.1.0",
          "hono": "^4.12.27",
          "mcp-proxy": "^6.5.1",
          "undici": "^7.28.0",
          "uri-templates": "^0.2.0",
          "xsschema": "^0.4.4",
          "zod": "^4.2.1"
        }
      }
    },
    {
      "id": "observation:network-api-03fa8ef345e888d6",
      "kind": "code_indicator",
      "coverage": "inferred",
      "evidence": [
        {
          "sha256": "1e3db63428384c5aacdd021d6fa4fc04f3ca8478639a1053ab3a83f0c6874f04",
          "artifact_path": "package/dist/index.js",
          "capture_kind": "artifact_file",
          "byte_range": [
            53091,
            53097
          ]
        }
      ],
      "data": {
        "indicator": "network-api",
        "description": "Source references a network API."
      }
    },
    {
      "id": "observation:filesystem-api-b72fa430c066098c",
      "kind": "code_indicator",
      "coverage": "inferred",
      "evidence": [
        {
          "sha256": "1e3db63428384c5aacdd021d6fa4fc04f3ca8478639a1053ab3a83f0c6874f04",
          "artifact_path": "package/dist/index.js",
          "capture_kind": "artifact_file",
          "byte_range": [
            242026,
            242035
          ]
        }
      ],
      "data": {
        "indicator": "filesystem-api",
        "description": "Source references a filesystem API."
      }
    },
    {
      "id": "observation:network-api-2370e4b5d4b4832e",
      "kind": "code_indicator",
      "coverage": "inferred",
      "evidence": [
        {
          "sha256": "9cc08a0e49e1d210f128a32b855e202e84fb44b5eb84eb5e107bd503e92044aa",
          "artifact_path": "package/dist/server.js",
          "capture_kind": "artifact_file",
          "byte_range": [
            52680,
            52686
          ]
        }
      ],
      "data": {
        "indicator": "network-api",
        "description": "Source references a network API."
      }
    },
    {
      "id": "observation:filesystem-api-b48e2ac7c9c734f9",
      "kind": "code_indicator",
      "coverage": "inferred",
      "evidence": [
        {
          "sha256": "9cc08a0e49e1d210f128a32b855e202e84fb44b5eb84eb5e107bd503e92044aa",
          "artifact_path": "package/dist/server.js",
          "capture_kind": "artifact_file",
          "byte_range": [
            241716,
            241725
          ]
        }
      ],
      "data": {
        "indicator": "filesystem-api",
        "description": "Source references a filesystem API."
      }
    },
    {
      "id": "observation:static-tool-inventory",
      "kind": "protocol_inventory",
      "coverage": "inferred",
      "evidence": [
        {
          "sha256": "9bb4cac1bc3d2a61a81b17829888a92e673746f656f9584c40cb09827d70f4e1",
          "capture_kind": "artifact_file"
        }
      ],
      "data": {
        "extraction": "static_source_analysis",
        "complete": false,
        "incompleteness": [
          "list_tools_array_not_static",
          "tools_inferred_from_definitions_only"
        ],
        "scanned_files": [
          "package/dist/agent-hints.js",
          "package/dist/index.js",
          "package/dist/introspection-cache.js",
          "package/dist/keyless-signup-link.js",
          "package/dist/origin.js",
          "package/dist/server.js",
          "package/dist/www-authenticate.js"
        ],
        "tools": [
          {
            "name": "firecrawl_agent",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              226426,
              231929
            ],
            "description_sha256": "5dc42ba73e13d44540322d1531d97cccac5c655e5e998ef24fa0e3989ee2c06f",
            "description_repr": "source_text",
            "input_schema_sha256": "accba5c8a181eb9e7dc704b70eecdd6de04ca482b28ada5a7d31a91b2c3d713e",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_agent_status",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              231949,
              233391
            ],
            "description_sha256": "437f1fd93f1cd6b46a5a80ef6511e9fecaafdfb646c404b4e173cbe37b5f4a57",
            "description_repr": "string_literal",
            "input_schema_sha256": "218e9d63b5d1439fd0a3c11327d46b377c3909b0dbe9a26823425d319037e508",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_check_crawl_status",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              221964,
              222961
            ],
            "description_sha256": "bcb065d57566228584057de87e19dd50f7ad01534d75f3097cf4c3c2a5b64c62",
            "description_repr": "string_literal",
            "input_schema_sha256": "218e9d63b5d1439fd0a3c11327d46b377c3909b0dbe9a26823425d319037e508",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_crawl",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              218754,
              221944
            ],
            "description_sha256": "25649d7791ff0002501bb04e94cd9d6d3d48f47b378b80dd6740fe9e07046bb3",
            "description_repr": "string_literal",
            "input_schema_sha256": "5b5d51a1dd57de8977e7d4843cf07dcaa4afc5f08ba99ce4f5fc34cbf192b0b3",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_credit_usage",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              131778,
              134712
            ],
            "description_sha256": "d610bd74f9b58fe649aa9365065f2c0cb1576093417349edd71000538f62a136",
            "description_repr": "string_literal",
            "input_schema_sha256": "eca13ba467af03d1441073d93524b8c709af9462ba5f27d40612b7c5f90d6343",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_developer_search",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              99085,
              100956
            ],
            "description_sha256": "bacef0504f744fc6f9d7310079e93dd62488fd86e147408b5e67333dcaf621b5",
            "description_repr": "string_literal",
            "input_schema_sha256": "e67d20669fdccde9a197986c360864a800af326574c08bc4b74249ee46f1f8b9",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_extract",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              222981,
              224231
            ],
            "description_sha256": "80875cf67bef19b5aa19f572878d5695b3acfe1767076de6429a01e1498b378f",
            "description_repr": "string_literal",
            "input_schema_sha256": "a76317b843e072aeb0922bf7899582c790b9c537a2a647d1583a1e83b67a3a97",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_feedback",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              212648,
              218730
            ],
            "description_sha256": "da27d8a43820fb5e90fbbe1564660e5de2a87ba8c91d4ead77d9de0f3353bf16",
            "description_repr": "string_literal",
            "input_schema_sha256": "f2609e1a30dd384986bbee09254c235e8699b19bc0dfd98179fcdcb0c9c23648",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_find_tools",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              199450,
              202596
            ],
            "description_sha256": "b7385c1fcc277f196a0a9360e116a00c40c94207bcd124c1e1b2ec0d386bf8b1",
            "description_repr": "source_text",
            "input_schema_sha256": "5e35d72ceddbeddc53d02e97274125517c9819df6d44596f5d084abb478d941d",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_gov_search",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              101435,
              103368
            ],
            "description_sha256": "decee2010bb484e38ead4285a6a09df6f3dddd4a15e26add2034addb08af92cf",
            "description_repr": "string_literal",
            "input_schema_sha256": "cb4c5c7a7f579019f44714964e1f8ea05e785f639cd454df920f5bb5bce50a8f",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_interact",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              234949,
              238715
            ],
            "description_sha256": "9bcc166bd0fe9e6e8732ec076d8d461a31f8d66e149d1e4c5e3aa7a8cd02fd99",
            "description_repr": "string_literal",
            "input_schema_sha256": "af93fb7e6a1e94ad81841e4640aacd4b493023d58f655d0183237cb04ea9a44a",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_interact_stop",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              238735,
              239840
            ],
            "description_sha256": "c08c8b5758ad123824329fd12481618240d68d30f98721a53d1504d62462c801",
            "description_repr": "string_literal",
            "input_schema_sha256": "38b5f199be075fb88dc02d52c6b89261639615b80def37a24845dea7ca8e2ceb",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_map",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              191528,
              193390
            ],
            "description_sha256": "8e2e08055a8e408db81833671e3fd11388c0c4f2357eea328d9c651db5cba135",
            "description_repr": "string_literal",
            "input_schema_sha256": "bb7171f211abc66a0cd294670d0d3077e0317b1808f88169a0267fb896f78fb8",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_monitor_check",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              117020,
              118646
            ],
            "description_sha256": "442231c9d932d9790d63f223578cfe05960b0bba3809448b2303bb6f9cf0c98a",
            "description_repr": "string_literal",
            "input_schema_sha256": "e982255d4e990a6b87cd9cf763810fd18ea8826cc9fa3aa21f08981cde75738c",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_monitor_checks",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              115812,
              117000
            ],
            "description_sha256": "12eff404d7439cb4eadd5cf4d12e5cf56f6df70981397ad1cd0ba396cfb5d9b7",
            "description_repr": "string_literal",
            "input_schema_sha256": "c82dab2042fda09268bab8f83d391445e0f6be0d98e577c0e77ac1f7fced7b06",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_monitor_create",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              108183,
              110536
            ],
            "description_sha256": "367c5c7144bcccb0dd7a0a61d55913e087fa83fae106469628439ccf516d3911",
            "description_repr": "string_literal",
            "input_schema_sha256": "35fb408132234e7d6e36a2ef6386abb569a3515f8445d0219fab1ed95d0f8ec4",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_monitor_delete",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              113744,
              114737
            ],
            "description_sha256": "4b6629ddb5d9c559004d818bbfbc7b2b1846a3f891df7daf72b923d9ead9c439",
            "description_repr": "string_literal",
            "input_schema_sha256": "73da49f1d785fdaae782c268483052e06832bd1c88b515a29d50b00821fcd76c",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_monitor_get",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              111641,
              112512
            ],
            "description_sha256": "5048f239c31b18d5ea5cb403e3495cced96bfd7d25fd9d945f00f885eb260edb",
            "description_repr": "string_literal",
            "input_schema_sha256": "73da49f1d785fdaae782c268483052e06832bd1c88b515a29d50b00821fcd76c",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_monitor_list",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              110556,
              111621
            ],
            "description_sha256": "f82eddfee287bed28ed9ac62cea3d6a7bd92bcec9b5842eb7cbdba27f3eb74db",
            "description_repr": "string_literal",
            "input_schema_sha256": "1860faa11b665edeeecaf4ca860dc7effc54c6ec1b548f674822ed0f1d8c0365",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_monitor_run",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              114757,
              115792
            ],
            "description_sha256": "6768e440b9d6064f919bb626549928596cd234dcca9b06ca775d60b69b7e4cc4",
            "description_repr": "string_literal",
            "input_schema_sha256": "73da49f1d785fdaae782c268483052e06832bd1c88b515a29d50b00821fcd76c",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_monitor_update",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              112532,
              113724
            ],
            "description_sha256": "a4abca1d7a337f027801045cd73dfba88eabbd0f7850b766a12be9b3a4046b8d",
            "description_repr": "string_literal",
            "input_schema_sha256": "3107035e5b2d6b7a3cd5b4bb7cf0cc070ee925a37d3b4297c63a13bd5429df4c",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_parse",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              239860,
              243735
            ],
            "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": [
              124995,
              126367
            ],
            "description_sha256": "000022503306a3a1b4038bc15ef595fc32eec425710ead129f8a0b11402e1247",
            "description_repr": "string_literal",
            "input_schema_sha256": "01d114fb28ee99da730ef373d1157ea16510606ab5536d9c27288e22feacb996",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_research_read_paper",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              128697,
              130510
            ],
            "description_sha256": "56049b21ac095194f96a4f368dc85d449049429186b857361fb0034c07e9d239",
            "description_repr": "string_literal",
            "input_schema_sha256": "912e3ba9a7a70fd430e9b7bea5b251c881fe2ed2c356510e3a2c0d33c0205699",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_research_related_papers",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              126387,
              128677
            ],
            "description_sha256": "353ca09daf6256d9e017b90fc4200ec9bf82a7e060c3ed4298ba4e01ba0f6a21",
            "description_repr": "string_literal",
            "input_schema_sha256": "4554a9b566719f7bd6615226907e5fbd9017f91561bff101dad5faefba2742e7",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_research_search_github",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              130530,
              131486
            ],
            "description_sha256": "29ae7d85e06f44b58068a99d880ff6e476c37ab266a4968f774b060a2affda51",
            "description_repr": "string_literal",
            "input_schema_sha256": "42a768150e6d6d9057bcb186f2e33b46ecc48b391160483010e0605504e67cd6",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_research_search_papers",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              122360,
              124975
            ],
            "description_sha256": "0b90d0b4bac0a8ecc6f5008667237ec1310c4c4062dc93dd0c5e0af4971ab4fa",
            "description_repr": "string_literal",
            "input_schema_sha256": "7e3090b8125d9e63a05cdfab136de197b882e43b2dcb8e0d53d74b60fb9e395d",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_scrape",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              187831,
              191421
            ],
            "description_sha256": "f9890027c34fe37332e8581113fb34f54b9c53df9c262972ecb1e46368437d82",
            "description_repr": "source_text",
            "input_schema_sha256": "d86f6d39d14f45c949fe325ec92aa6e8e2fb5785bdebb53de08b111191353615",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_search",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              193410,
              197671
            ],
            "description_sha256": "02752b713a65da780e2229608ea50c41792c80c273d75e085ad1ee20bd500cd1",
            "description_repr": "source_text",
            "input_schema_sha256": "153ff844fb4bc8c4c0287ead03fdd670bb35f13f762a0fe8034f65173113aaa8",
            "input_schema_repr": "source_text"
          },
          {
            "name": "firecrawl_search_feedback",
            "discovery": "definition",
            "artifact_path": "package/dist/index.js",
            "byte_range": [
              207375,
              212176
            ],
            "description_sha256": "59225dedb205bdbffec91e30da6cb09a0e136a1acb91f43d63bf9aff84d0f436",
            "description_repr": "string_literal",
            "input_schema_sha256": "ff26102c0f97999cab42680e401f79d6bb6b91088fe597da45271a0c1af40a06",
            "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 (list_tools_array_not_static, tools_inferred_from_definitions_only). Treat the inventory as a lower bound, not a complete list."
    }
  ]
}