{
  "format_version": "0.2.0",
  "report_id": "d854b946-5061-4366-a944-90c8d92b9cbd",
  "generated_at": "2026-09-10T18:17:43.189Z",
  "subject": {
    "server_name": "@transcend-io/mcp-server-docs",
    "publisher_claim": "@transcend-io",
    "artifact": {
      "ecosystem": "npm",
      "package": "@transcend-io/mcp-server-docs",
      "version": "0.4.5",
      "sha256": "debca57fd9e54059650810124b0c410f483a5da4419c43a0df29a9c80bc2d1d9",
      "download_url": "https://registry.npmjs.org/@transcend-io/mcp-server-docs/-/mcp-server-docs-0.4.5.tgz",
      "registry_metadata_url": "https://registry.npmjs.org/%40transcend-io%2Fmcp-server-docs/0.4.5",
      "acquired_at": "2026-09-10T18:17:43.189Z",
      "registry_metadata_sha256": "5609ab41cee9579a442cbaf379ddb8c05914535d0e5e9b754034770ba9c8289e",
      "integrity_claim": "sha512-N+/vTHVET+ofoOBfZCGg6QI5Bk+NkHj7M4Eo0o4YDKKQ/6TqjxPCy16SHehCVMy86m9viHUQx0oo3HAq0EnGNg==",
      "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": "f21716fafbb312c7866b2e86acaedb3409dc03a0f9c1fa06c269cb4119b10e4b",
          "artifact_path": "package/package.json",
          "capture_kind": "artifact_file"
        }
      ],
      "data": {
        "name": "@transcend-io/mcp-server-docs",
        "version": "0.4.5",
        "description": "Transcend MCP Server — Documentation lookup tools.",
        "bin": {
          "transcend-mcp-docs": "./dist/cli.mjs"
        },
        "scripts": {
          "build": "tsdown",
          "test": "vitest run --config ../../../vitest.config.mcp.ts",
          "typecheck": "tsc -p tsconfig.json --noEmit",
          "check:exports": "attw --pack . --ignore-rules cjs-resolves-to-esm",
          "check:publint": "publint --level warning --strict --pack pnpm"
        },
        "engines": {
          "node": ">=22.12.0"
        }
      }
    },
    {
      "id": "observation:file-inventory",
      "kind": "file",
      "coverage": "declared",
      "evidence": [
        {
          "sha256": "debca57fd9e54059650810124b0c410f483a5da4419c43a0df29a9c80bc2d1d9",
          "capture_kind": "artifact_file"
        }
      ],
      "data": {
        "entry_count": 11,
        "regular_file_bytes": 37930,
        "entries": [
          {
            "path": "package/dist/cli.d.mts",
            "type": "file",
            "size": 11,
            "sha256": "4f1bad288ada6326583a3e6a0a54d7627a03eac3b668adeea9dded12ac5656b8"
          },
          {
            "path": "package/dist/cli.mjs",
            "type": "file",
            "size": 374,
            "sha256": "fc79b957228b2ba750ab7894973fc76d766a39ba909271bd24db8d0d611cffdf"
          },
          {
            "path": "package/dist/cli.mjs.map",
            "type": "file",
            "size": 202,
            "sha256": "97541f0c24d0770e40fbac52e57b402e8c3f65a350dd30e1ee1abc5939d6e2e7"
          },
          {
            "path": "package/dist/index.d.mts",
            "type": "file",
            "size": 2878,
            "sha256": "975127565fdfb25d1726376abad33652c38acd843f4c208d702bad196d0f5f58"
          },
          {
            "path": "package/dist/index.d.mts.map",
            "type": "file",
            "size": 862,
            "sha256": "7b73332ef4168fb9d29dd9a15d723e6549f41e54abe2f55c991a913541970fd3"
          },
          {
            "path": "package/dist/index.mjs",
            "type": "file",
            "size": 421,
            "sha256": "361d8a097d6236387b2fc5280761087b1e5f216b5d8a8d117d534b11363f57b1"
          },
          {
            "path": "package/dist/tools-BMbaq7_0.mjs",
            "type": "file",
            "size": 11607,
            "sha256": "126245513be0a896d79c7b381cc7456b5ffbdefae88ebf59854345d8499e6fc9"
          },
          {
            "path": "package/dist/tools-BMbaq7_0.mjs.map",
            "type": "file",
            "size": 6040,
            "sha256": "2ca5b002afc7ec6982275ec0b8d541b336896abe1f60de5e013e1e972d0a6fce"
          },
          {
            "path": "package/LICENSE",
            "type": "file",
            "size": 11357,
            "sha256": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4"
          },
          {
            "path": "package/package.json",
            "type": "file",
            "size": 1547,
            "sha256": "f21716fafbb312c7866b2e86acaedb3409dc03a0f9c1fa06c269cb4119b10e4b"
          },
          {
            "path": "package/README.md",
            "type": "file",
            "size": 2631,
            "sha256": "4d2d3697699cd3955b226883745f9f5306488ebfa5ce8bc57e06d47158f5e035"
          }
        ]
      }
    },
    {
      "id": "observation:registry-metadata",
      "kind": "artifact_metadata",
      "coverage": "declared",
      "evidence": [
        {
          "sha256": "5609ab41cee9579a442cbaf379ddb8c05914535d0e5e9b754034770ba9c8289e",
          "capture_kind": "registry_metadata"
        }
      ],
      "data": {
        "metadata_url": "https://registry.npmjs.org/%40transcend-io%2Fmcp-server-docs/0.4.5",
        "requested_package": "@transcend-io/mcp-server-docs",
        "requested_version": "0.4.5",
        "tarball_url": "https://registry.npmjs.org/@transcend-io/mcp-server-docs/-/mcp-server-docs-0.4.5.tgz",
        "integrity_claim": "sha512-N+/vTHVET+ofoOBfZCGg6QI5Bk+NkHj7M4Eo0o4YDKKQ/6TqjxPCy16SHehCVMy86m9viHUQx0oo3HAq0EnGNg==",
        "integrity_verified": true
      }
    },
    {
      "id": "observation:runtime-dependencies",
      "kind": "dependency",
      "coverage": "declared",
      "evidence": [
        {
          "sha256": "f21716fafbb312c7866b2e86acaedb3409dc03a0f9c1fa06c269cb4119b10e4b",
          "artifact_path": "package/package.json",
          "capture_kind": "artifact_file"
        }
      ],
      "data": {
        "dependencies": {
          "@modelcontextprotocol/sdk": "^1.29.0",
          "@orama/orama": "^3.1.18",
          "@transcend-io/mcp-server-base": "2.2.0",
          "lru-cache": "^11.5.1",
          "zod": "^4.3.6"
        }
      }
    },
    {
      "id": "observation:network-api-e1f774afe2a1fe73",
      "kind": "code_indicator",
      "coverage": "inferred",
      "evidence": [
        {
          "sha256": "126245513be0a896d79c7b381cc7456b5ffbdefae88ebf59854345d8499e6fc9",
          "artifact_path": "package/dist/tools-BMbaq7_0.mjs",
          "capture_kind": "artifact_file",
          "byte_range": [
            3450,
            3456
          ]
        }
      ],
      "data": {
        "indicator": "network-api",
        "description": "Source references a network API."
      }
    },
    {
      "id": "observation:process-spawn-api-497e090b1f27d716",
      "kind": "code_indicator",
      "coverage": "inferred",
      "evidence": [
        {
          "sha256": "126245513be0a896d79c7b381cc7456b5ffbdefae88ebf59854345d8499e6fc9",
          "artifact_path": "package/dist/tools-BMbaq7_0.mjs",
          "capture_kind": "artifact_file",
          "byte_range": [
            4824,
            4829
          ]
        }
      ],
      "data": {
        "indicator": "process-spawn-api",
        "description": "Source references a process-spawning API."
      }
    },
    {
      "id": "observation:static-tool-inventory",
      "kind": "protocol_inventory",
      "coverage": "inferred",
      "evidence": [
        {
          "sha256": "debca57fd9e54059650810124b0c410f483a5da4419c43a0df29a9c80bc2d1d9",
          "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/cli.mjs",
          "package/dist/index.mjs",
          "package/dist/tools-BMbaq7_0.mjs"
        ],
        "tools": [
          {
            "name": "docs_fetch",
            "discovery": "definition",
            "artifact_path": "package/dist/tools-BMbaq7_0.mjs",
            "byte_range": [
              7525,
              8031
            ],
            "description_sha256": "ae1d05110cc7a7a82c102a5aeea5942d262b100ec5dba21a7b2bb0101c656b1b",
            "description_repr": "string_literal",
            "input_schema_sha256": "5cd3e32f37229d46fc018005a5ad1686507b6e1d2b212020244c2cadbddb875a",
            "input_schema_repr": "source_text"
          },
          {
            "name": "docs_list",
            "discovery": "definition",
            "artifact_path": "package/dist/tools-BMbaq7_0.mjs",
            "byte_range": [
              8952,
              11188
            ],
            "description_sha256": "d2157cbc4d0dd29d3d41b79da66a57e9733aa012d90aa80ef921f49877164ae0",
            "description_repr": "string_literal",
            "input_schema_sha256": "fab1a36b1801b00fdebcaf6838e2d73a815f295d24d2f624c5199da3b5bcd4f0",
            "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."
    }
  ]
}