{
  "format_version": "0.2.0",
  "report_id": "6ede4343-a3da-4fef-9002-222f4b0e5f67",
  "generated_at": "2026-08-12T18:17:27.592Z",
  "subject": {
    "server_name": "@transcend-io/mcp-server-docs",
    "publisher_claim": "@transcend-io",
    "artifact": {
      "ecosystem": "npm",
      "package": "@transcend-io/mcp-server-docs",
      "version": "0.3.14",
      "sha256": "358aff938cc03d25e91e22d45f8826696fbc3fabde6df5ed9ea7099bc80ad613",
      "download_url": "https://registry.npmjs.org/@transcend-io/mcp-server-docs/-/mcp-server-docs-0.3.14.tgz",
      "registry_metadata_url": "https://registry.npmjs.org/%40transcend-io%2Fmcp-server-docs/0.3.14",
      "acquired_at": "2026-08-12T18:17:27.592Z",
      "registry_metadata_sha256": "c0ab70c8702d849f58bb7d14ab94a3e8e51a3d8fe61740b5bda29f63405d4aab",
      "integrity_claim": "sha512-QmuVBtWb8r1dSETcoxsYOxkdRDZiUQXB+N6pzOhi5Ul3kzULIkEmjXxu2BGDgIcMQjL29IUUC8Z7exMR88nRiQ==",
      "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": "44ba3d14170de40bf7e40788780bcbe956182b60d0af1036658c78a7ff923e97",
          "artifact_path": "package/package.json",
          "capture_kind": "artifact_file"
        }
      ],
      "data": {
        "name": "@transcend-io/mcp-server-docs",
        "version": "0.3.14",
        "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": "358aff938cc03d25e91e22d45f8826696fbc3fabde6df5ed9ea7099bc80ad613",
          "capture_kind": "artifact_file"
        }
      ],
      "data": {
        "entry_count": 11,
        "regular_file_bytes": 27710,
        "entries": [
          {
            "path": "package/dist/cli.d.mts",
            "type": "file",
            "size": 11,
            "sha256": "4f1bad288ada6326583a3e6a0a54d7627a03eac3b668adeea9dded12ac5656b8"
          },
          {
            "path": "package/dist/cli.mjs",
            "type": "file",
            "size": 375,
            "sha256": "4d5d7b794b6b736629bdfe9f1536b42fb833a21544b48825b1fe82e300bbeb8c"
          },
          {
            "path": "package/dist/cli.mjs.map",
            "type": "file",
            "size": 202,
            "sha256": "97541f0c24d0770e40fbac52e57b402e8c3f65a350dd30e1ee1abc5939d6e2e7"
          },
          {
            "path": "package/dist/index.d.mts",
            "type": "file",
            "size": 2069,
            "sha256": "ca2a98a741cd8e612a9db178cccfa14af3fa76f5017450f9abde6611a67e4129"
          },
          {
            "path": "package/dist/index.d.mts.map",
            "type": "file",
            "size": 624,
            "sha256": "a1844762169c808cef2032b463c58ba40e91f2c915dc1beecab49b4d7c167758"
          },
          {
            "path": "package/dist/index.mjs",
            "type": "file",
            "size": 392,
            "sha256": "fcfd07798ee1984232ceb79cafbf92725916692bfb480bb6ce06b034a9d316e2"
          },
          {
            "path": "package/dist/tools-Cc8ZQVE0.mjs",
            "type": "file",
            "size": 5678,
            "sha256": "ec3862cd84205ba4d57de6800e69443a8f40a9440f1b5ac3d9fc5e7c85e91e92"
          },
          {
            "path": "package/dist/tools-Cc8ZQVE0.mjs.map",
            "type": "file",
            "size": 2949,
            "sha256": "dcde8c0e70a274137d9ddd01f0f6ddf7511a0803f06dd233997892acf30572ae"
          },
          {
            "path": "package/LICENSE",
            "type": "file",
            "size": 11357,
            "sha256": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4"
          },
          {
            "path": "package/package.json",
            "type": "file",
            "size": 1519,
            "sha256": "44ba3d14170de40bf7e40788780bcbe956182b60d0af1036658c78a7ff923e97"
          },
          {
            "path": "package/README.md",
            "type": "file",
            "size": 2534,
            "sha256": "f680150e15d144a04bdaed5dfd0ab7781cad409af9ff77585c1f2b141686941b"
          }
        ]
      }
    },
    {
      "id": "observation:registry-metadata",
      "kind": "artifact_metadata",
      "coverage": "declared",
      "evidence": [
        {
          "sha256": "c0ab70c8702d849f58bb7d14ab94a3e8e51a3d8fe61740b5bda29f63405d4aab",
          "capture_kind": "registry_metadata"
        }
      ],
      "data": {
        "metadata_url": "https://registry.npmjs.org/%40transcend-io%2Fmcp-server-docs/0.3.14",
        "requested_package": "@transcend-io/mcp-server-docs",
        "requested_version": "0.3.14",
        "tarball_url": "https://registry.npmjs.org/@transcend-io/mcp-server-docs/-/mcp-server-docs-0.3.14.tgz",
        "integrity_claim": "sha512-QmuVBtWb8r1dSETcoxsYOxkdRDZiUQXB+N6pzOhi5Ul3kzULIkEmjXxu2BGDgIcMQjL29IUUC8Z7exMR88nRiQ==",
        "integrity_verified": true
      }
    },
    {
      "id": "observation:runtime-dependencies",
      "kind": "dependency",
      "coverage": "declared",
      "evidence": [
        {
          "sha256": "44ba3d14170de40bf7e40788780bcbe956182b60d0af1036658c78a7ff923e97",
          "artifact_path": "package/package.json",
          "capture_kind": "artifact_file"
        }
      ],
      "data": {
        "dependencies": {
          "@modelcontextprotocol/sdk": "^1.29.0",
          "@transcend-io/mcp-server-base": "1.1.1",
          "lru-cache": "^11.5.1",
          "zod": "^4.3.6"
        }
      }
    },
    {
      "id": "observation:network-api-7fd485809fa6474e",
      "kind": "code_indicator",
      "coverage": "inferred",
      "evidence": [
        {
          "sha256": "ec3862cd84205ba4d57de6800e69443a8f40a9440f1b5ac3d9fc5e7c85e91e92",
          "artifact_path": "package/dist/tools-Cc8ZQVE0.mjs",
          "capture_kind": "artifact_file",
          "byte_range": [
            1233,
            1239
          ]
        }
      ],
      "data": {
        "indicator": "network-api",
        "description": "Source references a network API."
      }
    },
    {
      "id": "observation:process-spawn-api-773196f11b04c0d2",
      "kind": "code_indicator",
      "coverage": "inferred",
      "evidence": [
        {
          "sha256": "ec3862cd84205ba4d57de6800e69443a8f40a9440f1b5ac3d9fc5e7c85e91e92",
          "artifact_path": "package/dist/tools-Cc8ZQVE0.mjs",
          "capture_kind": "artifact_file",
          "byte_range": [
            825,
            830
          ]
        }
      ],
      "data": {
        "indicator": "process-spawn-api",
        "description": "Source references a process-spawning API."
      }
    },
    {
      "id": "observation:static-tool-inventory",
      "kind": "protocol_inventory",
      "coverage": "inferred",
      "evidence": [
        {
          "sha256": "358aff938cc03d25e91e22d45f8826696fbc3fabde6df5ed9ea7099bc80ad613",
          "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-Cc8ZQVE0.mjs"
        ],
        "tools": [
          {
            "name": "docs_fetch",
            "discovery": "definition",
            "artifact_path": "package/dist/tools-Cc8ZQVE0.mjs",
            "byte_range": [
              3439,
              3945
            ],
            "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-Cc8ZQVE0.mjs",
            "byte_range": [
              4706,
              5276
            ],
            "description_sha256": "987e32343ee4392a6dc407e5ae4023e32d9048a5c9de2ddd15e758cbe21f1fb0",
            "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."
    }
  ]
}