{
  "packageTitle": "MCP Client vs Server vs Host Research Package",
  "researchFreeze": "2026-08-25",
  "protocolRevision": "2026-07-28",
  "canonicalPage": "/mcp-client-vs-server-vs-host/",
  "canonicalDecision": "The detailed role-comparison cornerstone uses the package-requested canonical. /how-mcp-works/ remains a shorter request-lifecycle guide with reciprocal contextual links, distinct metadata, and distinct query ownership.",
  "status": "integrated-from-checksum-verified-57-file-archive",
  "archiveSha256": "e942801c452c337fb522fd541609e1d88895ea4e7a9de634a4522e6eef1437b4",
  "archiveEntryCount": 57,
  "checksumEntryCount": 56,
  "payloadManifestEntryCount": 55,
  "transferredZipIncludedSeparately": true,
  "inventoryNote": "The ZIP contains 57 files. SHA256SUMS.txt covers the other 56 files, and package_manifest.csv covers 55 payload files while excluding itself and SHA256SUMS.txt. All listed sizes and hashes validate.",
  "artifacts": [
    {
      "file": "README.md",
      "category": "Other",
      "bytes": 3210,
      "sha256": "bbbed0ebac3a1ea34e143bae5048656211783d20a34d328c4bd6afbc0f92d014",
      "status": "checksum-verified"
    },
    {
      "file": "architecture_evolution_matrix.csv",
      "category": "Dataset",
      "bytes": 2451,
      "sha256": "48c60f0c223a35f951232c60f6a5c57ed02acb522279b1ccfdc4b85b72937173",
      "status": "checksum-verified"
    },
    {
      "file": "architecture_evolution_matrix.json",
      "category": "Dataset",
      "bytes": 3536,
      "sha256": "434299dafa976e13ee66527e852e5104c72e3c2091f9391e73509fad32752099",
      "status": "checksum-verified"
    },
    {
      "file": "architecture_evolution_matrix.md",
      "category": "Dataset",
      "bytes": 2676,
      "sha256": "9ee33a583289c4ddb6f9bb8e5c51cbb5fcf25faad4ddf3258d4d481df71d1dde",
      "status": "checksum-verified"
    },
    {
      "file": "article.html",
      "category": "Editorial",
      "bytes": 84074,
      "sha256": "262986c269dfb5ca7d9108f0b7de98e41a5d7f557fd28e11a520588a4fe31f2f",
      "status": "checksum-verified"
    },
    {
      "file": "article.md",
      "category": "Editorial",
      "bytes": 65962,
      "sha256": "ae33d10e3cc7cb936b623151b9d53dfff236a54c7e179bcd944d4cb72e67013b",
      "status": "checksum-verified"
    },
    {
      "file": "claim_register.csv",
      "category": "Evidence",
      "bytes": 19741,
      "sha256": "fee33e88f5e27de3bb4b7a6607f9358f88ef0af0eb9fb938928426cff0a5cf63",
      "status": "checksum-verified"
    },
    {
      "file": "claim_register.json",
      "category": "Evidence",
      "bytes": 39733,
      "sha256": "5389b8b2fa4d41edaafcb34c2452269bf4f6a34e5c5d11a85c75b3b20c93c617",
      "status": "checksum-verified"
    },
    {
      "file": "claim_register.md",
      "category": "Evidence",
      "bytes": 21926,
      "sha256": "6735f5f62ea0a3a0f11456bee72a3bdb24984237c0220c0b9433638cd460c8e1",
      "status": "checksum-verified"
    },
    {
      "file": "current_product_role_audit.md",
      "category": "Other",
      "bytes": 8892,
      "sha256": "d05b98a623e83fbfe68493a2a7d27de24f3bdab6d33677459334fe1f7cc0416b",
      "status": "checksum-verified"
    },
    {
      "file": "current_request_anatomy.md",
      "category": "Editorial",
      "bytes": 1804,
      "sha256": "669c7a3baaf3cabd1cdcfb752bd3a10ec911cfd992078800e0bea2b7c5d5c05c",
      "status": "checksum-verified"
    },
    {
      "file": "data_dictionary.md",
      "category": "Evidence",
      "bytes": 2696,
      "sha256": "5e4fa380726a498ac5221fb0d53e03fbe73b2e15bc81e9b5f05c7c8267a06c60",
      "status": "checksum-verified"
    },
    {
      "file": "direct_answer_introduction.md",
      "category": "Editorial",
      "bytes": 2308,
      "sha256": "4bc77ddb4fcb8db8b930375a13f57a04647afb84c1a75832e8a0c31975cb9260",
      "status": "checksum-verified"
    },
    {
      "file": "evidence_manifest.csv",
      "category": "Evidence",
      "bytes": 16785,
      "sha256": "7f53404b624ecdf22ae5999f76f3b20c3d359369805a7ec20e416c103b6eb691",
      "status": "checksum-verified"
    },
    {
      "file": "evidence_manifest.json",
      "category": "Evidence",
      "bytes": 25989,
      "sha256": "55a78b35c5fd47ff48d9d8ecacd39a031b850e308c7818b1d1dda5dd4f97118d",
      "status": "checksum-verified"
    },
    {
      "file": "executive_summary.md",
      "category": "Editorial",
      "bytes": 3375,
      "sha256": "9494e49a2a2954663040e7aec4a0d0fbf260225e5e058cde1a1f58b0014e59cd",
      "status": "checksum-verified"
    },
    {
      "file": "faq.md",
      "category": "Editorial",
      "bytes": 16289,
      "sha256": "546c810797ca8cc0440624db552fe260f6c0ae4cf98269eb71120399d1d86361",
      "status": "checksum-verified"
    },
    {
      "file": "host_client_server_responsibility_matrix.csv",
      "category": "Dataset",
      "bytes": 4684,
      "sha256": "34f76c2f910ac72ceeb0aa0b40e549d77c7a60d21eb63cc903dec9f1208c3e85",
      "status": "checksum-verified"
    },
    {
      "file": "host_client_server_responsibility_matrix.json",
      "category": "Dataset",
      "bytes": 7058,
      "sha256": "59ec7c794de48c921842acfc488687027e7703db3109b6d04313262612ca0c17",
      "status": "checksum-verified"
    },
    {
      "file": "host_client_server_responsibility_matrix.md",
      "category": "Dataset",
      "bytes": 5013,
      "sha256": "5ebc68fafc08b022c1aba1d9997396d86b97d41bebacaaf1313d1cbfda1aecc1",
      "status": "checksum-verified"
    },
    {
      "file": "local_vs_remote_architecture_matrix.csv",
      "category": "Dataset",
      "bytes": 2502,
      "sha256": "df7f70ba65ffe29616be4433a78ab3c502f7551d6e5c7a8a5c81b59a6a8d87de",
      "status": "checksum-verified"
    },
    {
      "file": "local_vs_remote_architecture_matrix.json",
      "category": "Dataset",
      "bytes": 3563,
      "sha256": "9eb37c84e0bc20128f0e5ee5af2b9fe09677ac129f161159e9b043bc5b579217",
      "status": "checksum-verified"
    },
    {
      "file": "local_vs_remote_architecture_matrix.md",
      "category": "Dataset",
      "bytes": 2665,
      "sha256": "bff78e3f70b9ac8a5e5c6c9a5b9f16e49ed43b4b8bacf3dd20dd7e873ec56f82",
      "status": "checksum-verified"
    },
    {
      "file": "methodology_and_update_policy.md",
      "category": "Evidence",
      "bytes": 7495,
      "sha256": "aea970a6a48730c1af2dd434b46f2fa73fcc924e6d02e389e5deec180e09940d",
      "status": "checksum-verified"
    },
    {
      "file": "myth_vs_evidence.csv",
      "category": "Evidence",
      "bytes": 5482,
      "sha256": "ed4a9d449075869389d0065e06ba0f54460fb3034bcca62868550a01b383d7a5",
      "status": "checksum-verified"
    },
    {
      "file": "myth_vs_evidence.json",
      "category": "Evidence",
      "bytes": 8771,
      "sha256": "45bbac1cbc7515cdec1ae29a19488c8e52396f6728093bdf2457639f21cbc6ff",
      "status": "checksum-verified"
    },
    {
      "file": "myth_vs_evidence.md",
      "category": "Editorial",
      "bytes": 5787,
      "sha256": "bb5823779e652cb43045df07715c4ef185657c0043f798471583b0e7872fbe19",
      "status": "checksum-verified"
    },
    {
      "file": "product_role_classification.csv",
      "category": "Dataset",
      "bytes": 5324,
      "sha256": "ddb74a4eefb92efff18b984d6194b9c65a9a7314fe31446e14a634e7498c9b2d",
      "status": "checksum-verified"
    },
    {
      "file": "product_role_classification.json",
      "category": "Dataset",
      "bytes": 9446,
      "sha256": "4f6eafe4d0f41948728a77e33f4848632968aec4a4d0164c2b1e316d441480c9",
      "status": "checksum-verified"
    },
    {
      "file": "product_role_classification.md",
      "category": "Dataset",
      "bytes": 5900,
      "sha256": "37b6658227ba1e337d373489031eb618c5d10f1dd49119a71596e0d9b2c37a3d",
      "status": "checksum-verified"
    },
    {
      "file": "protocol_relationship_vs_network_connection_matrix.csv",
      "category": "Dataset",
      "bytes": 2138,
      "sha256": "fa53fbeec915f36fdc90d681f8849c1084014bbf10d3b3ba22ccfd77e61d9e22",
      "status": "checksum-verified"
    },
    {
      "file": "protocol_relationship_vs_network_connection_matrix.json",
      "category": "Dataset",
      "bytes": 3459,
      "sha256": "b4da63d6dd7ec870dfd2e11550e9386726f33ad23bcebe223b3bb26ca277b64a",
      "status": "checksum-verified"
    },
    {
      "file": "protocol_relationship_vs_network_connection_matrix.md",
      "category": "Dataset",
      "bytes": 2340,
      "sha256": "8ea06ce31a5a0ab65ee4a80c3c7a8a349d8a0afbc4476803f6decfb9cb19d285",
      "status": "checksum-verified"
    },
    {
      "file": "quality_audit.md",
      "category": "Evidence",
      "bytes": 3872,
      "sha256": "982131ba0af12dbbed4f689c42c59c7f6e4e36ff8434c50cb4499e6b3df44d8c",
      "status": "checksum-verified"
    },
    {
      "file": "research_findings.md",
      "category": "Editorial",
      "bytes": 2392,
      "sha256": "e83b34724444bce50780b598163dc255a93dd7572b51b5956554f6844bbf5644",
      "status": "checksum-verified"
    },
    {
      "file": "security_responsibility_map.csv",
      "category": "Dataset",
      "bytes": 2534,
      "sha256": "c6c6b1b0970ca2ec13dab3276a7ad36763a132c81d3515b83390ba83e7300b50",
      "status": "checksum-verified"
    },
    {
      "file": "security_responsibility_map.json",
      "category": "Dataset",
      "bytes": 4141,
      "sha256": "7e857ff50abfe072c21354af3777136b2f7255144ac7d195ee3750fac6aef341",
      "status": "checksum-verified"
    },
    {
      "file": "security_responsibility_map.md",
      "category": "Dataset",
      "bytes": 2768,
      "sha256": "e78a3aa388b96dd54e403ccf46cda9423214aa041935de9464c0c7e8428994f4",
      "status": "checksum-verified"
    },
    {
      "file": "seo_package.md",
      "category": "Publishing",
      "bytes": 9703,
      "sha256": "d90d4d48e787b5be23a792b1cd5b4b88daa03834dd99dad669446c89e59f12f6",
      "status": "checksum-verified"
    },
    {
      "file": "sequence_diagrams.md",
      "category": "Editorial",
      "bytes": 4108,
      "sha256": "7b4b5b8480abe5c0d42810b2ee16e906ff4575e297180b2f41bae7023a24f134",
      "status": "checksum-verified"
    },
    {
      "file": "serp_gap_analysis.md",
      "category": "Publishing",
      "bytes": 4373,
      "sha256": "3213b57f01cd58f0962348b33d29fc52889bb9ea2514aea029a3609de94823f5",
      "status": "checksum-verified"
    },
    {
      "file": "source_bibliography.md",
      "category": "Evidence",
      "bytes": 17109,
      "sha256": "19765ac82fc805c27cb09ed59316a921d247fb6e4f45eb6174b4ce95c3699f75",
      "status": "checksum-verified"
    },
    {
      "file": "source_usage_audit.csv",
      "category": "Evidence",
      "bytes": 8808,
      "sha256": "038c2b68935ca92326179bd0d38f4e4eaa5acbca1815c388fc1c02d856447fd9",
      "status": "checksum-verified"
    },
    {
      "file": "source_usage_audit.json",
      "category": "Evidence",
      "bytes": 20671,
      "sha256": "cf02823ceabb8aa03f38330b1cb0ff25f822257ddaffde5a589bc2ae786e71e7",
      "status": "checksum-verified"
    },
    {
      "file": "structured_data_recommendations.md",
      "category": "Publishing",
      "bytes": 846,
      "sha256": "cf450149a70f74b71f830035c1597f636281e6afef13a87ee4801904803f1eef",
      "status": "checksum-verified"
    },
    {
      "file": "structured_data_templates.json",
      "category": "Publishing",
      "bytes": 2620,
      "sha256": "cfd0132d574b657dd85f4991c631af42fc8854b30d25d2fddaf76b4dc11cca00",
      "status": "checksum-verified"
    },
    {
      "file": "supporting_content_cluster.csv",
      "category": "Publishing",
      "bytes": 18156,
      "sha256": "a24fa6f174243504a6d20143432446c1543052cc1c8348f4567eac4c01b327bd",
      "status": "checksum-verified"
    },
    {
      "file": "supporting_content_cluster.json",
      "category": "Publishing",
      "bytes": 31170,
      "sha256": "5f020279150e55553aca416bdc0f78e34d0a55d2b4ac78e62736d66b99ee4996",
      "status": "checksum-verified"
    },
    {
      "file": "supporting_content_cluster.md",
      "category": "Publishing",
      "bytes": 19245,
      "sha256": "07f322c84fc457352678e3f48e8ef31a1f4f70e6d18e4d4d51bf394819069b99",
      "status": "checksum-verified"
    },
    {
      "file": "terminology_misclassification_register.csv",
      "category": "Dataset",
      "bytes": 6065,
      "sha256": "9d77261e746cefe4d6405142e97c27cf065949be8f88287792704700b609b42c",
      "status": "checksum-verified"
    },
    {
      "file": "terminology_misclassification_register.json",
      "category": "Dataset",
      "bytes": 8959,
      "sha256": "ccbaadf399bd6ec0fb32093a4229adf6dacfeb316458b3c933373ae7fddff3b3",
      "status": "checksum-verified"
    },
    {
      "file": "terminology_misclassification_register.md",
      "category": "Dataset",
      "bytes": 6390,
      "sha256": "5a575c985ef99150c321acb6390209cd7deaa6141077211d4f6cb870d2171d93",
      "status": "checksum-verified"
    },
    {
      "file": "visual_specifications.csv",
      "category": "Publishing",
      "bytes": 9699,
      "sha256": "d41907e4ce3c73fef2bf9b088beacdef0806a3c2cad9090139d571c838a6d42b",
      "status": "checksum-verified"
    },
    {
      "file": "visual_specifications.json",
      "category": "Publishing",
      "bytes": 13360,
      "sha256": "5a34e9b3662d018c30c4589a364cac93b6b37f0d986d2243f01aa3ce25321287",
      "status": "checksum-verified"
    },
    {
      "file": "visual_specifications.md",
      "category": "Publishing",
      "bytes": 12670,
      "sha256": "52cb0dcdf0402f7ee4321c7ed181767e8588308a619efeace8288c2f40639fde",
      "status": "checksum-verified"
    }
  ],
  "sourceMap": [
    {
      "packageSourceId": "S001",
      "canonicalSourceId": "S121",
      "packageUrl": "https://modelcontextprotocol.io/specification/2026-07-28/architecture",
      "url": "https://modelcontextprotocol.io/specification/2026-07-28/architecture",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S002",
      "canonicalSourceId": "S055",
      "packageUrl": "https://modelcontextprotocol.io/specification/2026-07-28/changelog",
      "url": "https://modelcontextprotocol.io/specification/2026-07-28/changelog",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S003",
      "canonicalSourceId": "S056",
      "packageUrl": "https://modelcontextprotocol.io/specification/2026-07-28/basic/versioning",
      "url": "https://modelcontextprotocol.io/specification/2026-07-28/basic/versioning",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S004",
      "canonicalSourceId": "S127",
      "packageUrl": "https://modelcontextprotocol.io/specification/2026-07-28/server/discover",
      "url": "https://modelcontextprotocol.io/specification/2026-07-28/server/discover",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S005",
      "canonicalSourceId": "S057",
      "packageUrl": "https://modelcontextprotocol.io/specification/2026-07-28/basic/transports",
      "url": "https://modelcontextprotocol.io/specification/2026-07-28/basic/transports",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S006",
      "canonicalSourceId": "S132",
      "packageUrl": "https://modelcontextprotocol.io/specification/2026-07-28/basic/transports/stdio",
      "url": "https://modelcontextprotocol.io/specification/2026-07-28/basic/transports/stdio",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S007",
      "canonicalSourceId": "S131",
      "packageUrl": "https://modelcontextprotocol.io/specification/2026-07-28/basic/transports/streamable-http",
      "url": "https://modelcontextprotocol.io/specification/2026-07-28/basic/transports/streamable-http",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S008",
      "canonicalSourceId": "S130",
      "packageUrl": "https://modelcontextprotocol.io/specification/2026-07-28/basic/index",
      "url": "https://modelcontextprotocol.io/specification/2026-07-28/basic",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S009",
      "canonicalSourceId": "S123",
      "packageUrl": "https://modelcontextprotocol.io/specification/2026-07-28/server/tools",
      "url": "https://modelcontextprotocol.io/specification/2026-07-28/server/tools",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S010",
      "canonicalSourceId": "S124",
      "packageUrl": "https://modelcontextprotocol.io/specification/2026-07-28/server/resources",
      "url": "https://modelcontextprotocol.io/specification/2026-07-28/server/resources",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S011",
      "canonicalSourceId": "S125",
      "packageUrl": "https://modelcontextprotocol.io/specification/2026-07-28/server/prompts",
      "url": "https://modelcontextprotocol.io/specification/2026-07-28/server/prompts",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S012",
      "canonicalSourceId": "S126",
      "packageUrl": "https://modelcontextprotocol.io/specification/2026-07-28/client/elicitation",
      "url": "https://modelcontextprotocol.io/specification/2026-07-28/client/elicitation",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S013",
      "canonicalSourceId": "S058",
      "packageUrl": "https://blog.modelcontextprotocol.io/posts/2026-07-28/",
      "url": "https://blog.modelcontextprotocol.io/posts/2026-07-28/",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S014",
      "canonicalSourceId": "S053",
      "packageUrl": "https://blog.modelcontextprotocol.io/posts/2026-07-28-release-candidate/",
      "url": "https://blog.modelcontextprotocol.io/posts/2026-07-28-release-candidate/",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S015",
      "canonicalSourceId": "S061",
      "packageUrl": "https://modelcontextprotocol.io/seps/2575-stateless-mcp",
      "url": "https://modelcontextprotocol.io/seps/2575-stateless-mcp",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S016",
      "canonicalSourceId": "S064",
      "packageUrl": "https://blog.modelcontextprotocol.io/posts/mcp-roadmap/",
      "url": "https://blog.modelcontextprotocol.io/posts/mcp-roadmap/",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S017",
      "canonicalSourceId": "S249",
      "packageUrl": "https://modelcontextprotocol.io/specification/2024-11-05/index",
      "url": "https://modelcontextprotocol.io/specification/2024-11-05/index",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S018",
      "canonicalSourceId": "S026",
      "packageUrl": "https://modelcontextprotocol.io/specification/2024-11-05/basic/lifecycle",
      "url": "https://modelcontextprotocol.io/specification/2024-11-05/basic/lifecycle",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S019",
      "canonicalSourceId": "S250",
      "packageUrl": "https://modelcontextprotocol.io/specification/2024-11-05/basic",
      "url": "https://modelcontextprotocol.io/specification/2024-11-05/basic",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S020",
      "canonicalSourceId": "S156",
      "packageUrl": "https://modelcontextprotocol.io/specification/2025-03-26/basic/lifecycle",
      "url": "https://modelcontextprotocol.io/specification/2025-03-26/basic/lifecycle",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S021",
      "canonicalSourceId": "S251",
      "packageUrl": "https://modelcontextprotocol.io/specification/2025-06-18/architecture",
      "url": "https://modelcontextprotocol.io/specification/2025-06-18/architecture",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S022",
      "canonicalSourceId": "S160",
      "packageUrl": "https://modelcontextprotocol.io/specification/2025-11-25/basic/lifecycle",
      "url": "https://modelcontextprotocol.io/specification/2025-11-25/basic/lifecycle",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S023",
      "canonicalSourceId": "S036",
      "packageUrl": "https://modelcontextprotocol.io/specification/2025-03-26/changelog",
      "url": "https://modelcontextprotocol.io/specification/2025-03-26/changelog",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S024",
      "canonicalSourceId": "S043",
      "packageUrl": "https://modelcontextprotocol.io/specification/2025-06-18/changelog",
      "url": "https://modelcontextprotocol.io/specification/2025-06-18/changelog",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S025",
      "canonicalSourceId": "S049",
      "packageUrl": "https://modelcontextprotocol.io/specification/2025-11-25/changelog",
      "url": "https://modelcontextprotocol.io/specification/2025-11-25/changelog",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S026",
      "canonicalSourceId": "S252",
      "packageUrl": "https://ts.sdk.modelcontextprotocol.io/v2/",
      "url": "https://ts.sdk.modelcontextprotocol.io/v2/",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S027",
      "canonicalSourceId": "S253",
      "packageUrl": "https://ts.sdk.modelcontextprotocol.io/v2/protocol-versions",
      "url": "https://ts.sdk.modelcontextprotocol.io/v2/protocol-versions",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S028",
      "canonicalSourceId": "S168",
      "packageUrl": "https://ts.sdk.modelcontextprotocol.io/v2/migration/support-2026-07-28",
      "url": "https://ts.sdk.modelcontextprotocol.io/v2/migration/support-2026-07-28",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S029",
      "canonicalSourceId": "S167",
      "packageUrl": "https://py.sdk.modelcontextprotocol.io/client/",
      "url": "https://py.sdk.modelcontextprotocol.io/client/",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S030",
      "canonicalSourceId": "S254",
      "packageUrl": "https://ruby.sdk.modelcontextprotocol.io/client/lifecycle/",
      "url": "https://ruby.sdk.modelcontextprotocol.io/client/lifecycle/",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S031",
      "canonicalSourceId": "S255",
      "packageUrl": "https://php.sdk.modelcontextprotocol.io/client/connecting/",
      "url": "https://php.sdk.modelcontextprotocol.io/client/connecting/",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S032",
      "canonicalSourceId": "S256",
      "packageUrl": "https://java.sdk.modelcontextprotocol.io/latest/client/",
      "url": "https://java.sdk.modelcontextprotocol.io/latest/client/",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S033",
      "canonicalSourceId": "S257",
      "packageUrl": "https://java.sdk.modelcontextprotocol.io/latest/server/",
      "url": "https://java.sdk.modelcontextprotocol.io/latest/server/",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S034",
      "canonicalSourceId": "S001",
      "packageUrl": "https://www.jsonrpc.org/specification",
      "url": "https://www.jsonrpc.org/specification",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S035",
      "canonicalSourceId": "S258",
      "packageUrl": "https://docs.anthropic.com/en/docs/mcp",
      "url": "https://support.claude.com/en/articles/11725091-when-to-use-desktop-and-web-connectors",
      "editorialCorrectionApplied": true
    },
    {
      "packageSourceId": "S036",
      "canonicalSourceId": "S259",
      "packageUrl": "https://docs.anthropic.com/en/docs/claude-code/mcp",
      "url": "https://code.claude.com/docs/en/mcp",
      "editorialCorrectionApplied": true
    },
    {
      "packageSourceId": "S037",
      "canonicalSourceId": "S260",
      "packageUrl": "https://support.claude.com/id/articles/10949351-memulai-dengan-server-mcp-lokal-di-claude-desktop",
      "url": "https://support.claude.com/en/articles/10949351-getting-started-with-local-mcp-servers-on-claude-desktop",
      "editorialCorrectionApplied": true
    },
    {
      "packageSourceId": "S038",
      "canonicalSourceId": "S145",
      "packageUrl": "https://support.claude.com/en/articles/11175166-get-started-with-custom-connectors-using-remote-mcp",
      "url": "https://support.claude.com/en/articles/11175166-get-started-with-custom-connectors-using-remote-mcp",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S039",
      "canonicalSourceId": "S175",
      "packageUrl": "https://docs.anthropic.com/en/docs/agents-and-tools/mcp-connector",
      "url": "https://platform.claude.com/docs/en/agents-and-tools/mcp-connector",
      "editorialCorrectionApplied": true
    },
    {
      "packageSourceId": "S040",
      "canonicalSourceId": "S140",
      "packageUrl": "https://help.openai.com/en/articles/12584461-developer-mode-and-full-mcp-connectors-in-chatgpt",
      "url": "https://help.openai.com/en/articles/12584461-developer-mode-and-full-mcp-connectors-in-chatgpt",
      "editorialCorrectionApplied": true
    },
    {
      "packageSourceId": "S041",
      "canonicalSourceId": "S262",
      "packageUrl": "https://help.openai.com/en/articles/6825453-chatgpt-release-notes",
      "url": "https://help.openai.com/en/articles/6825453-chatgpt-release-notes",
      "editorialCorrectionApplied": true
    },
    {
      "packageSourceId": "S042",
      "canonicalSourceId": "S090",
      "packageUrl": "https://openai.github.io/openai-agents-python/mcp/",
      "url": "https://openai.github.io/openai-agents-python/mcp/",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S043",
      "canonicalSourceId": "S141",
      "packageUrl": "https://code.visualstudio.com/docs/agent-customization/mcp-servers",
      "url": "https://code.visualstudio.com/docs/agent-customization/mcp-servers",
      "editorialCorrectionApplied": true
    },
    {
      "packageSourceId": "S044",
      "canonicalSourceId": "S263",
      "packageUrl": "https://code.visualstudio.com/updates/v1_99",
      "url": "https://code.visualstudio.com/updates/v1_99",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S045",
      "canonicalSourceId": "S088",
      "packageUrl": "https://code.visualstudio.com/blogs/2025/05/12/agent-mode-meets-mcp",
      "url": "https://code.visualstudio.com/blogs/2025/05/12/agent-mode-meets-mcp",
      "editorialCorrectionApplied": true
    },
    {
      "packageSourceId": "S046",
      "canonicalSourceId": "S264",
      "packageUrl": "https://code.visualstudio.com/blogs/2026/05/15/agent-harnesses-github-copilot-vscode",
      "url": "https://code.visualstudio.com/blogs/2026/05/15/agent-harnesses-github-copilot-vscode",
      "editorialCorrectionApplied": true
    },
    {
      "packageSourceId": "S047",
      "canonicalSourceId": "S265",
      "packageUrl": "https://docs.github.com/en/copilot/concepts/agents/cloud-agent/mcp-and-cloud-agent",
      "url": "https://docs.github.com/en/copilot/concepts/agents/cloud-agent/mcp-and-cloud-agent",
      "editorialCorrectionApplied": true
    },
    {
      "packageSourceId": "S048",
      "canonicalSourceId": "S266",
      "packageUrl": "https://docs.github.com/en/copilot/how-tos/copilot-on-github/customize-copilot/configure-mcp-servers",
      "url": "https://docs.github.com/en/copilot/how-tos/copilot-on-github/customize-copilot/configure-mcp-servers",
      "editorialCorrectionApplied": true
    },
    {
      "packageSourceId": "S049",
      "canonicalSourceId": "S267",
      "packageUrl": "https://docs.github.com/en/copilot/how-tos/copilot-on-github/copilot-for-github-tasks/using-the-github-mcp-server-from-copilot-chat",
      "url": "https://docs.github.com/en/copilot/how-tos/copilot-on-github/copilot-for-github-tasks/using-the-github-mcp-server-from-copilot-chat",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S050",
      "canonicalSourceId": "S268",
      "packageUrl": "https://docs.github.com/en/enterprise-cloud@latest/copilot/how-tos/copilot-cli/customize-copilot/add-mcp-servers",
      "url": "https://docs.github.com/en/copilot/how-tos/copilot-cli/customize-copilot/add-mcp-servers",
      "editorialCorrectionApplied": true
    },
    {
      "packageSourceId": "S051",
      "canonicalSourceId": "S269",
      "packageUrl": "https://prod.cursor.com/docs/mcp",
      "url": "https://cursor.com/docs/mcp",
      "editorialCorrectionApplied": true
    },
    {
      "packageSourceId": "S052",
      "canonicalSourceId": "S144",
      "packageUrl": "https://codelabs.developers.google.com/gemini-cli-deep-dive",
      "url": "https://geminicli.com/docs/tools/mcp-server/",
      "editorialCorrectionApplied": true
    },
    {
      "packageSourceId": "S053",
      "canonicalSourceId": "S271",
      "packageUrl": "https://codelabs.developers.google.com/getting-started-google-mcp-servers",
      "url": "https://codelabs.developers.google.com/getting-started-google-mcp-servers",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S054",
      "canonicalSourceId": "S022",
      "packageUrl": "https://zed.dev/blog/mcp",
      "url": "https://zed.dev/blog/mcp",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S055",
      "canonicalSourceId": "S272",
      "packageUrl": "https://zed.dev/blog/secure-by-default",
      "url": "https://zed.dev/blog/secure-by-default",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S056",
      "canonicalSourceId": "S273",
      "packageUrl": "https://zed.dev/docs/ai/tool-permissions",
      "url": "https://zed.dev/docs/ai/tool-permissions",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S057",
      "canonicalSourceId": "S274",
      "packageUrl": "https://www.jetbrains.com/help/ai-assistant/mcp.html",
      "url": "https://www.jetbrains.com/help/ai-assistant/mcp.html",
      "editorialCorrectionApplied": true
    },
    {
      "packageSourceId": "S058",
      "canonicalSourceId": "S275",
      "packageUrl": "https://www.jetbrains.com/help/pycharm/mcp-server.html",
      "url": "https://www.jetbrains.com/help/pycharm/mcp-server.html",
      "editorialCorrectionApplied": true
    },
    {
      "packageSourceId": "S059",
      "canonicalSourceId": "S276",
      "packageUrl": "https://youtrack.jetbrains.com/articles/SUPPORT-A-2455/What-MCP-options-do-JetBrains-IDE-and-AI-Assistant-offer-and-how-do-they-differ",
      "url": "https://youtrack.jetbrains.com/articles/SUPPORT-A-2455/What-MCP-options-do-JetBrains-IDE-and-AI-Assistant-offer-and-how-do-they-differ",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S060",
      "canonicalSourceId": "S277",
      "packageUrl": "https://www.jetbrains.com/help/ai-assistant/agents.html",
      "url": "https://www.jetbrains.com/help/ai-assistant/agents.html",
      "editorialCorrectionApplied": true
    },
    {
      "packageSourceId": "S061",
      "canonicalSourceId": "S278",
      "packageUrl": "https://www.tricentis.com/learn/mcp-server-vs-client",
      "url": "https://www.tricentis.com/learn/mcp-server-vs-client",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S062",
      "canonicalSourceId": "S279",
      "packageUrl": "https://www.stanza.dev/concepts/mcp-architecture",
      "url": "https://www.stanza.dev/concepts/mcp-architecture",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S063",
      "canonicalSourceId": "S280",
      "packageUrl": "https://www.mcpserverspot.com/learn/fundamentals/mcp-glossary",
      "url": "https://www.mcpserverspot.com/learn/fundamentals/mcp-glossary",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S064",
      "canonicalSourceId": "S148",
      "packageUrl": "https://developers.google.com/search/docs/fundamentals/creating-helpful-content",
      "url": "https://developers.google.com/search/docs/fundamentals/creating-helpful-content",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S065",
      "canonicalSourceId": "S153",
      "packageUrl": "https://developers.google.com/search/docs/appearance/structured-data/breadcrumb",
      "url": "https://developers.google.com/search/docs/appearance/structured-data/breadcrumb",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S066",
      "canonicalSourceId": "S150",
      "packageUrl": "https://developers.google.com/search/docs/appearance/title-link",
      "url": "https://developers.google.com/search/docs/appearance/title-link",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S067",
      "canonicalSourceId": "S281",
      "packageUrl": "https://developers.google.com/search/docs/fundamentals/get-started-developers",
      "url": "https://developers.google.com/search/docs/fundamentals/get-started-developers",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S068",
      "canonicalSourceId": "S282",
      "packageUrl": "https://developers.google.com/search/docs/crawling-indexing/ask-google-to-recrawl",
      "url": "https://developers.google.com/search/docs/crawling-indexing/ask-google-to-recrawl",
      "editorialCorrectionApplied": false
    }
  ],
  "articleCitations": {
    "packageSourceIds": [
      "S001",
      "S036",
      "S040",
      "S043",
      "S052",
      "S057",
      "S058",
      "S009",
      "S002",
      "S003",
      "S004",
      "S008",
      "S034",
      "S026",
      "S029",
      "S032",
      "S033",
      "S012",
      "S046",
      "S010",
      "S011",
      "S013",
      "S015",
      "S042",
      "S017",
      "S021",
      "S018",
      "S019",
      "S020",
      "S023",
      "S006",
      "S055",
      "S007",
      "S035",
      "S037",
      "S038",
      "S039",
      "S041",
      "S045",
      "S047",
      "S048",
      "S049",
      "S050",
      "S053",
      "S051",
      "S054",
      "S056",
      "S059",
      "S060",
      "S022"
    ],
    "rawCanonicalSourceIds": [
      "S121",
      "S259",
      "S140",
      "S141",
      "S144",
      "S274",
      "S275",
      "S123",
      "S055",
      "S056",
      "S127",
      "S130",
      "S001",
      "S252",
      "S167",
      "S256",
      "S257",
      "S126",
      "S264",
      "S124",
      "S125",
      "S058",
      "S061",
      "S090",
      "S249",
      "S251",
      "S026",
      "S250",
      "S156",
      "S036",
      "S132",
      "S272",
      "S131",
      "S258",
      "S260",
      "S145",
      "S175",
      "S262",
      "S088",
      "S265",
      "S266",
      "S267",
      "S268",
      "S271",
      "S269",
      "S022",
      "S273",
      "S276",
      "S277",
      "S160"
    ],
    "canonicalSourceIds": [
      "S121",
      "S259",
      "S140",
      "S141",
      "S144",
      "S274",
      "S275",
      "S123",
      "S055",
      "S056",
      "S127",
      "S130",
      "S001",
      "S252",
      "S167",
      "S256",
      "S257",
      "S126",
      "S264",
      "S124",
      "S125",
      "S058",
      "S061",
      "S090",
      "S249",
      "S251",
      "S026",
      "S250",
      "S156",
      "S036",
      "S132",
      "S272",
      "S131",
      "S258",
      "S260",
      "S145",
      "S175",
      "S262",
      "S088",
      "S265",
      "S266",
      "S267",
      "S268",
      "S271",
      "S269",
      "S273",
      "S276",
      "S277",
      "S160",
      "S261",
      "S270",
      "S283",
      "S284",
      "S285"
    ],
    "count": 54,
    "note": "Published citations add five current-product supplementals and replace the superseded general Zed launch-blog citation with current Zed MCP documentation; the raw 50-source mapping remains in rawCanonicalSourceIds."
  },
  "productSourceReview": {
    "checkedAt": "2026-08-25",
    "method": "Official first-party product documentation only; archive files remain byte-exact and public derivatives carry the corrections.",
    "correctedPackageSourceIds": [
      "S035",
      "S036",
      "S037",
      "S039",
      "S040",
      "S041",
      "S043",
      "S045",
      "S046",
      "S047",
      "S048",
      "S050",
      "S051",
      "S052",
      "S057",
      "S058",
      "S060"
    ],
    "supplementalCurrentUrls": [
      "https://support.claude.com/en/articles/11725091-when-to-use-desktop-and-web-connectors",
      "https://code.claude.com/docs/en/mcp",
      "https://platform.claude.com/docs/en/agents-and-tools/mcp-connector",
      "https://help.openai.com/en/articles/12584461-developer-mode-and-full-mcp-connectors-in-chatgpt",
      "https://developers.openai.com/api/docs/guides/secure-mcp-tunnels",
      "https://openai.github.io/openai-agents-python/mcp/",
      "https://code.visualstudio.com/docs/agent-customization/mcp-servers",
      "https://code.visualstudio.com/docs/agents/concepts/agent-host",
      "https://docs.github.com/en/copilot/concepts/agents/cloud-agent/mcp-and-cloud-agent",
      "https://docs.github.com/en/copilot/how-tos/copilot-cli/customize-copilot/add-mcp-servers",
      "https://cursor.com/docs/mcp",
      "https://cursor.com/docs/cli/mcp",
      "https://geminicli.com/docs/tools/mcp-server/",
      "https://zed.dev/docs/ai/mcp",
      "https://zed.dev/docs/worktree-trust",
      "https://zed.dev/docs/ai/tool-permissions",
      "https://www.jetbrains.com/help/pycharm/mcp-server.html"
    ]
  },
  "counts": {
    "packageEvidence": 68,
    "claims": 122,
    "responsibilities": 30,
    "architectureRevisions": 5,
    "productComponents": 16,
    "localRemoteRows": 19,
    "relationshipRows": 15,
    "securityRows": 15,
    "myths": 40,
    "terminologyRows": 30,
    "faqs": 59,
    "visualBriefs": 18,
    "supportingBriefs": 78,
    "unifiedRoadmapUrls": 226
  },
  "validationSignals": {
    "archiveBookkeepingCountsMatch": true,
    "bibliographyMentionsEveryEvidenceId": true,
    "readmeDeclaresCurrentSpecification": true,
    "qualityAuditReportsArticleWords": true,
    "currentProductSourcesRechecked": true
  },
  "editorialCorrections": [
    "The former redirect from the package canonical to /how-mcp-works/ is removed because the complete comparison package supplies materially distinct role, history, product, responsibility, and FAQ depth.",
    "The package article’s multiple level-one section headings are normalized into one visible H1 and a coherent H2–H4 outline.",
    "The shorter embedded FAQ is replaced by the complete 59-question package FAQ; FAQPage schema is intentionally omitted while the questions remain visible.",
    "Package-local citation IDs are mapped to the unified evidence library without changing the raw package files.",
    "Product role statements retain their live-check flag and August 25, 2026 review date.",
    "Current first-party product documentation supersedes moved package URLs and corrects scope for Anthropic connectors, ChatGPT, the OpenAI Agents SDK, GitHub Copilot cloud agent, Cursor, VS Code, Zed, and JetBrains without altering the archive.",
    "The 57 archive entries, 56 checksum entries, and 55 payload-manifest entries are explained as intentional self-exclusion bookkeeping."
  ],
  "publicEndpoints": [
    "/mcp-client-vs-server-vs-host/",
    "/how-mcp-works/",
    "/sources/",
    "/editorial-policy/",
    "/data/evidence.json",
    "/data/evidence.csv",
    "/data/mcp-architecture-claims.json",
    "/data/mcp-architecture-claims.csv",
    "/data/mcp-role-responsibilities.json",
    "/data/mcp-role-responsibilities.csv",
    "/data/mcp-architecture-evolution.json",
    "/data/mcp-architecture-evolution.csv",
    "/data/mcp-product-roles.json",
    "/data/mcp-product-roles.csv",
    "/data/mcp-local-vs-remote.json",
    "/data/mcp-local-vs-remote.csv",
    "/data/mcp-relationship-vs-connection.json",
    "/data/mcp-relationship-vs-connection.csv",
    "/data/mcp-security-responsibilities.json",
    "/data/mcp-security-responsibilities.csv",
    "/data/mcp-architecture-myths.json",
    "/data/mcp-architecture-myths.csv",
    "/data/mcp-terminology-misclassifications.json",
    "/data/mcp-terminology-misclassifications.csv",
    "/data/mcp-architecture-faq.json",
    "/data/mcp-architecture-visuals.json",
    "/data/mcp-architecture-visuals.csv",
    "/data/mcp-architecture-source-usage.json",
    "/data/mcp-architecture-source-usage.csv",
    "/data/mcp-architecture-content-plan.json",
    "/data/mcp-architecture-content-plan.csv",
    "/data/mcp-content-roadmap.json",
    "/data/mcp-content-roadmap.csv",
    "/data/mcp-client-server-host-package.json"
  ]
}