{
  "packageTitle": "MCP Tools vs Resources vs Prompts Research Package",
  "researchFreeze": "2026-08-26",
  "protocolRevision": "2026-07-28",
  "canonicalPage": "/mcp-tools-vs-resources-vs-prompts/",
  "canonicalDecision": "Use the package-requested /mcp-tools-vs-resources-vs-prompts/ path. Reconcile the earlier planned /mcp-tools-resources-prompts/ variant to this canonical.",
  "status": "integrated-from-checksum-verified-69-file-archive",
  "archiveSha256": "3a080505f51260e9f3442e61740e6bf3c72fe0c34e657d217d51cb07785c0b1b",
  "archiveEntryCount": 69,
  "checksumEntryCount": 68,
  "payloadManifestEntryCount": 67,
  "inventoryNote": "The ZIP contains 69 files. SHA256SUMS.txt covers the other 68 files, and package_manifest.csv covers 67 payload files while excluding itself and SHA256SUMS.txt.",
  "artifacts": [
    {
      "file": "README.md",
      "bytes": 1081,
      "sha256": "9804234345d98ab218fe89ce734e6404825bddffe2d6b7424ad7e54132a644ee",
      "description": "README",
      "status": "checksum-verified"
    },
    {
      "file": "ambiguous_use_case_register.csv",
      "bytes": 4641,
      "sha256": "1931651632645830b35502bb5028f60805420ae7ca7570fc4a3ed9ecf34b72ba",
      "description": "ambiguous use case register",
      "status": "checksum-verified"
    },
    {
      "file": "ambiguous_use_case_register.json",
      "bytes": 10311,
      "sha256": "2ec5aedb34148570770d68a5e569bb5a7c78fb5cadfbfb1b2ada5258adee8d13",
      "description": "ambiguous use case register",
      "status": "checksum-verified"
    },
    {
      "file": "ambiguous_use_case_register.md",
      "bytes": 5249,
      "sha256": "bdb6028fbefba2aec1775ced188f3411c9b0f2c6b26cfbda2cbab66ff82caf5c",
      "description": "ambiguous use case register",
      "status": "checksum-verified"
    },
    {
      "file": "article.html",
      "bytes": 90485,
      "sha256": "aa6ba985b33dfeda5076bd603f917e38530b5ea78f2a34d8067db23ca5445b22",
      "description": "article",
      "status": "checksum-verified"
    },
    {
      "file": "article.md",
      "bytes": 73548,
      "sha256": "080394ea5d6e97690382ca43e0bff60bf2eb76417df358aabdc361bc7275d01e",
      "description": "article",
      "status": "checksum-verified"
    },
    {
      "file": "claim_register.csv",
      "bytes": 22946,
      "sha256": "80712b2370d7b3a7bde7a28f860febd6f68bded89fe7d3b7a0d3e8fb722caae3",
      "description": "claim register",
      "status": "checksum-verified"
    },
    {
      "file": "claim_register.json",
      "bytes": 42633,
      "sha256": "69c0bdd19b3651492c1a8346c409919640f6f6d62e286c417733a8a5e0302a9a",
      "description": "claim register",
      "status": "checksum-verified"
    },
    {
      "file": "claim_register.md",
      "bytes": 25034,
      "sha256": "7ff12c9887f473b23829c51ab38da9d23a3aa343c576b56374525280b18714a0",
      "description": "claim register",
      "status": "checksum-verified"
    },
    {
      "file": "comparison_matrix.csv",
      "bytes": 2435,
      "sha256": "3cfd688445416a623fd8bd0e79321e4ebf29f874eb177fcb95470bc067521705",
      "description": "comparison matrix",
      "status": "checksum-verified"
    },
    {
      "file": "comparison_matrix.json",
      "bytes": 4413,
      "sha256": "da9a4e9958948651c09f377a70d6a37d5c38a067f09129b68e2402142974d93a",
      "description": "comparison matrix",
      "status": "checksum-verified"
    },
    {
      "file": "comparison_matrix.md",
      "bytes": 2701,
      "sha256": "20d2d7b8dcbf78c51e0c32ef898649d698895e67f811f6c1a36c080f3b9a78ba",
      "description": "comparison matrix",
      "status": "checksum-verified"
    },
    {
      "file": "current_host_support_matrix.csv",
      "bytes": 1958,
      "sha256": "6305812ce29ab170d70b1b775476b835b744433011ce5c4f17a5be03e9fe4493",
      "description": "current host support matrix",
      "status": "checksum-verified"
    },
    {
      "file": "current_host_support_matrix.json",
      "bytes": 3942,
      "sha256": "1a12c1d7c73dcb95993e9042583e903c0ebb559bfcd235fd6af179f5f631a793",
      "description": "current host support matrix",
      "status": "checksum-verified"
    },
    {
      "file": "current_host_support_matrix.md",
      "bytes": 2268,
      "sha256": "1057ec5cf3f6c3fdd3cbab33e50d2a25f412c4bd0030457048d6c3570989d814",
      "description": "current host support matrix",
      "status": "checksum-verified"
    },
    {
      "file": "data_dictionary.md",
      "bytes": 792,
      "sha256": "d96c060f0c076eecf6d4605fb4140aa91952cc9622ac5dab9eebecc8ac690320",
      "description": "data dictionary",
      "status": "checksum-verified"
    },
    {
      "file": "direct_answer_introduction.md",
      "bytes": 2445,
      "sha256": "5989c4ec3f0f15e20546e044133d2200bd04124d2d587999150e291bcefb938a",
      "description": "direct answer introduction",
      "status": "checksum-verified"
    },
    {
      "file": "evidence_manifest.csv",
      "bytes": 18373,
      "sha256": "b9f327d823e71a95a3ca9dea93c4973fe6c9058724e0395fa96c3a1d14639ccb",
      "description": "evidence manifest",
      "status": "checksum-verified"
    },
    {
      "file": "evidence_manifest.json",
      "bytes": 31287,
      "sha256": "b98c450025f420bfc63b2fe5a396d4d471c531f8a86ed80aa2a2f972d020fec0",
      "description": "evidence manifest",
      "status": "checksum-verified"
    },
    {
      "file": "executive_summary.md",
      "bytes": 2752,
      "sha256": "f8964325707a6c479fd2b98db6bbacefe11e7c77c8a3f7cfb2228b0f7cad7732",
      "description": "executive summary",
      "status": "checksum-verified"
    },
    {
      "file": "faq.md",
      "bytes": 4575,
      "sha256": "3dc836050f812460d06a27d1c2562fa0f32609c25cab54d81d40b02b0f7bd2a5",
      "description": "faq",
      "status": "checksum-verified"
    },
    {
      "file": "faq_data.csv",
      "bytes": 5357,
      "sha256": "f8cb50050d4c7b2a137550c29d570b14621ad96ead290cb93f13d05428be7fce",
      "description": "faq data",
      "status": "checksum-verified"
    },
    {
      "file": "faq_data.json",
      "bytes": 8358,
      "sha256": "bd6e1978a4596ab6c8cd1534339d3c3b4337f57ff0150c1f5c72bb0247a245d3",
      "description": "faq data",
      "status": "checksum-verified"
    },
    {
      "file": "faq_data.md",
      "bytes": 5719,
      "sha256": "cdcfb411b1a70badc99b5cf65647a32a0d1c49752e77c374886f2e676bf94ac0",
      "description": "faq data",
      "status": "checksum-verified"
    },
    {
      "file": "legacy_vs_current_subscription_matrix.csv",
      "bytes": 637,
      "sha256": "36b06f6149840f03d93601cd715f646cab7f9bcf72ad34221b81dff1691135f6",
      "description": "legacy vs current subscription matrix",
      "status": "checksum-verified"
    },
    {
      "file": "legacy_vs_current_subscription_matrix.json",
      "bytes": 1018,
      "sha256": "5b38b79f2adaadc69b6b990409c69474ab564a41c90a0c68bb3b2efd25bf700a",
      "description": "legacy vs current subscription matrix",
      "status": "checksum-verified"
    },
    {
      "file": "legacy_vs_current_subscription_matrix.md",
      "bytes": 744,
      "sha256": "d3623f7c29f046c0f262198957c4fd070d323668afc61e197c479eeb3551d6f7",
      "description": "legacy vs current subscription matrix",
      "status": "checksum-verified"
    },
    {
      "file": "live_check_required.md",
      "bytes": 454,
      "sha256": "e4fc5948470002d164c1e563352eac2832de0911567a58a73a76e18022a8a1e4",
      "description": "live check required",
      "status": "checksum-verified"
    },
    {
      "file": "methodology_and_update_policy.md",
      "bytes": 1937,
      "sha256": "9cd8b20c423406f951b0ea92fd2d8e5647c18472b04e93dcac7e531a483ea42f",
      "description": "methodology and update policy",
      "status": "checksum-verified"
    },
    {
      "file": "myth_vs_evidence.csv",
      "bytes": 4699,
      "sha256": "181fc8bb884663b15f3348f856d02491ae1cb368631efb1b95e19647d96d68f3",
      "description": "myth vs evidence",
      "status": "checksum-verified"
    },
    {
      "file": "myth_vs_evidence.json",
      "bytes": 8027,
      "sha256": "8c874b155057f0a79b47b5d161a72e21121e5eabb7b6fd2ecea5186766648146",
      "description": "myth vs evidence",
      "status": "checksum-verified"
    },
    {
      "file": "myth_vs_evidence.md",
      "bytes": 5050,
      "sha256": "5d7f9d58008bc3a95561374753622fa7bd99e0494d3dbf2d6018fe558d5bb054",
      "description": "myth vs evidence",
      "status": "checksum-verified"
    },
    {
      "file": "primitive_evolution_matrix.csv",
      "bytes": 1816,
      "sha256": "6ae0fe7e0aa8f95a024616b88b9c329f42c1a10669bbee3ea0a240afb9954041",
      "description": "primitive evolution matrix",
      "status": "checksum-verified"
    },
    {
      "file": "primitive_evolution_matrix.json",
      "bytes": 4352,
      "sha256": "7a50d2a12cdbecad397fb2e9d21ca15a2998587f1c87bf13677f3c5b792c1bfc",
      "description": "primitive evolution matrix",
      "status": "checksum-verified"
    },
    {
      "file": "primitive_evolution_matrix.md",
      "bytes": 2154,
      "sha256": "23ef1f4ea962af8a8d37899306a209a0a381a92eaf7ac43229ff83d6a0325840",
      "description": "primitive evolution matrix",
      "status": "checksum-verified"
    },
    {
      "file": "primitive_selection_decision_framework.md",
      "bytes": 1073,
      "sha256": "2baf2cfc062ced1fed45036c889bac6d0b59357839416972bf6e3f275df8e467",
      "description": "primitive selection decision framework",
      "status": "checksum-verified"
    },
    {
      "file": "prompt_vs_system_user_prompt_matrix.csv",
      "bytes": 936,
      "sha256": "289ad48037aced77e35ac942a736dedd9134939680141e01ade10ea992434769",
      "description": "prompt vs system user prompt matrix",
      "status": "checksum-verified"
    },
    {
      "file": "prompt_vs_system_user_prompt_matrix.json",
      "bytes": 1512,
      "sha256": "376ac293572905b6fe664292c18ad0e44ce1cf9941665e25de48ad583aa57b67",
      "description": "prompt vs system user prompt matrix",
      "status": "checksum-verified"
    },
    {
      "file": "prompt_vs_system_user_prompt_matrix.md",
      "bytes": 1081,
      "sha256": "5d326a220ac029f089975cf2646c25609b99e7e91f1d1af5d26ed0cef4e7cfba",
      "description": "prompt vs system user prompt matrix",
      "status": "checksum-verified"
    },
    {
      "file": "quality_audit.md",
      "bytes": 671,
      "sha256": "e2821b1e8d59593bd1c5cf25607e782d2a4dcffc3a1a22612e86e2254b2f61a8",
      "description": "quality audit",
      "status": "checksum-verified"
    },
    {
      "file": "reference_server_primitive_inventory.csv",
      "bytes": 886,
      "sha256": "daa450dcacae51e5742454d9d52c25c260ab564a5d80886585af728de643f419",
      "description": "reference server primitive inventory",
      "status": "checksum-verified"
    },
    {
      "file": "reference_server_primitive_inventory.json",
      "bytes": 1880,
      "sha256": "efd484d26b0ecc7f1d711ad35471d186f0ae2d09fc278e3645396186f776f16e",
      "description": "reference server primitive inventory",
      "status": "checksum-verified"
    },
    {
      "file": "reference_server_primitive_inventory.md",
      "bytes": 1087,
      "sha256": "d86f29bbd17b0b211897f1b9406e9a29c16fe06e1c7af511b7254566e5f957bc",
      "description": "reference server primitive inventory",
      "status": "checksum-verified"
    },
    {
      "file": "research_findings.md",
      "bytes": 1958,
      "sha256": "2c2fc4f4f8ed9b79516814d359f3f435808387a9f8db810be063c5c82ba1bc03",
      "description": "research findings",
      "status": "checksum-verified"
    },
    {
      "file": "resource_uri_template_framework.csv",
      "bytes": 854,
      "sha256": "1445d51beb9fffc7eaa9fe827ecb14b6ca63259b80ac8c9dcb7d09c0035d8b93",
      "description": "resource uri template framework",
      "status": "checksum-verified"
    },
    {
      "file": "resource_uri_template_framework.json",
      "bytes": 1462,
      "sha256": "30d6d6a4bca848ad1b29e87a6e2725e2afcc435febf1992ce758ef0e5bb039d9",
      "description": "resource uri template framework",
      "status": "checksum-verified"
    },
    {
      "file": "resource_uri_template_framework.md",
      "bytes": 1006,
      "sha256": "1a7a8781a6dd23a2854702fb98ef1f7e9f9eaa3e8867f49d29418f0160f4a16f",
      "description": "resource uri template framework",
      "status": "checksum-verified"
    },
    {
      "file": "security_responsibility_matrix.csv",
      "bytes": 1807,
      "sha256": "11d2784d9f4f2a4f0d019b93b5b4148f5e402db5995cd351a77134c6082c1b7c",
      "description": "security responsibility matrix",
      "status": "checksum-verified"
    },
    {
      "file": "security_responsibility_matrix.json",
      "bytes": 3367,
      "sha256": "049e2c2815f93a2b91c926210d8b72e27dba4f7c5b14e215523f8a095cf105ee",
      "description": "security responsibility matrix",
      "status": "checksum-verified"
    },
    {
      "file": "security_responsibility_matrix.md",
      "bytes": 2038,
      "sha256": "b7b14b84f4e0174c412c506dfe8a405762001b6aa6f66e859aab92ec125308ac",
      "description": "security responsibility matrix",
      "status": "checksum-verified"
    },
    {
      "file": "seo_package.md",
      "bytes": 2232,
      "sha256": "ee9a62e0285a5c176fb37bbb9afa955724f4958d2855c3f64bf12d9db4a28c92",
      "description": "seo package",
      "status": "checksum-verified"
    },
    {
      "file": "serp_gap_analysis.md",
      "bytes": 1458,
      "sha256": "035b6a3e2a13d63395a40f55365b35bb98b9a9d033fea8bc5890dc983cc2c36e",
      "description": "serp gap analysis",
      "status": "checksum-verified"
    },
    {
      "file": "source_bibliography.md",
      "bytes": 10467,
      "sha256": "2dfd67ae5184d0d024ed4543f6b7a0610e3991ce0e0c4d99e9e59ace4a0ee017",
      "description": "source bibliography",
      "status": "checksum-verified"
    },
    {
      "file": "source_usage_audit.csv",
      "bytes": 9412,
      "sha256": "fe0f958a8f8d43eceb270a54b54f0b7f84240a7b2ad3bc80ca4c9d2a80b426ff",
      "description": "source usage audit",
      "status": "checksum-verified"
    },
    {
      "file": "source_usage_audit.json",
      "bytes": 18318,
      "sha256": "0bad4c43196353af6bbe52aeccf03a1ffc43744c9151fa5b91df32673676104e",
      "description": "source usage audit",
      "status": "checksum-verified"
    },
    {
      "file": "specification_vs_host_support_gap_analysis.md",
      "bytes": 1192,
      "sha256": "6c32897f346ac8e930a3613a91f2fb3b0b26418ed19e945f25b60b7d950924be",
      "description": "specification vs host support gap analysis",
      "status": "checksum-verified"
    },
    {
      "file": "structured_data_recommendations.md",
      "bytes": 445,
      "sha256": "43d92cfd5c59b7e1b814949668fbc82164aceb8b366d063f6abecec2a4333571",
      "description": "structured data recommendations",
      "status": "checksum-verified"
    },
    {
      "file": "structured_data_templates.json",
      "bytes": 12845,
      "sha256": "fd5e336b8513d0ce93bf77d36711b183370a51ee6940ac23a8077cd3aabc6415",
      "description": "structured data templates",
      "status": "checksum-verified"
    },
    {
      "file": "supporting_content_cluster.csv",
      "bytes": 12433,
      "sha256": "b04174ea6ea52f03bd1ce0b04952290f3bdda6dbf972a3aaf4cf6d2f80d9e4e2",
      "description": "supporting content cluster",
      "status": "checksum-verified"
    },
    {
      "file": "supporting_content_cluster.json",
      "bytes": 25055,
      "sha256": "549617bc18dc33823bfb72a6d503fc87515b4dcb0b4c34312e9f4b1e33685fdb",
      "description": "supporting content cluster",
      "status": "checksum-verified"
    },
    {
      "file": "supporting_content_cluster.md",
      "bytes": 13619,
      "sha256": "6b1ce1624550c8557c3ffc32c7b9bc993c839c28754797f8b74f8323895b1850",
      "description": "supporting content cluster",
      "status": "checksum-verified"
    },
    {
      "file": "tool_result_content_type_matrix.csv",
      "bytes": 792,
      "sha256": "e5c695e4e576a193e290e4f1935c38785cb49d98a13cd3829f0156a188257953",
      "description": "tool result content type matrix",
      "status": "checksum-verified"
    },
    {
      "file": "tool_result_content_type_matrix.json",
      "bytes": 1762,
      "sha256": "994040768a35140a26c6063656cabf1385ffcf410b1261f594052b2628b98c45",
      "description": "tool result content type matrix",
      "status": "checksum-verified"
    },
    {
      "file": "tool_result_content_type_matrix.md",
      "bytes": 949,
      "sha256": "c18253df8387138a23ec35b931225205528fbcce109f0436199126ff09ae5c89",
      "description": "tool result content type matrix",
      "status": "checksum-verified"
    },
    {
      "file": "visual_specifications.csv",
      "bytes": 6374,
      "sha256": "4a8807c4b12e39928b18605c1df804e01500d22bee08189eeac3147de67e75d6",
      "description": "visual specifications",
      "status": "checksum-verified"
    },
    {
      "file": "visual_specifications.json",
      "bytes": 9887,
      "sha256": "a8a7ae6511d617b30d7020dd3deaa782b33bf8cac276c641bcd5de2ab18a91a1",
      "description": "visual specifications",
      "status": "checksum-verified"
    },
    {
      "file": "visual_specifications.md",
      "bytes": 6745,
      "sha256": "e8b32b7c6502bd6d5e3912d4d9edde28aea3a3407b4eb98840bc841f78120695",
      "description": "visual specifications",
      "status": "checksum-verified"
    }
  ],
  "sourceMap": [
    {
      "packageSourceId": "S001",
      "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": "S002",
      "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": "S003",
      "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": "S004",
      "canonicalSourceId": "S055",
      "packageUrl": "https://modelcontextprotocol.io/specification/2026-07-28/changelog",
      "url": "https://modelcontextprotocol.io/specification/2026-07-28/changelog",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S005",
      "canonicalSourceId": "S121",
      "packageUrl": "https://modelcontextprotocol.io/specification/2026-07-28/architecture",
      "url": "https://modelcontextprotocol.io/specification/2026-07-28/architecture",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S006",
      "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": "S007",
      "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": "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": "S058",
      "packageUrl": "https://blog.modelcontextprotocol.io/posts/2026-07-28/",
      "url": "https://blog.modelcontextprotocol.io/posts/2026-07-28/",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S010",
      "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": "S011",
      "canonicalSourceId": "S249",
      "packageUrl": "https://modelcontextprotocol.io/specification/2024-11-05/index",
      "url": "https://modelcontextprotocol.io/specification/2024-11-05/index",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S012",
      "canonicalSourceId": "S028",
      "packageUrl": "https://modelcontextprotocol.io/specification/2024-11-05/server/tools",
      "url": "https://modelcontextprotocol.io/specification/2024-11-05/server/tools",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S013",
      "canonicalSourceId": "S029",
      "packageUrl": "https://modelcontextprotocol.io/specification/2024-11-05/server/resources",
      "url": "https://modelcontextprotocol.io/specification/2024-11-05/server/resources",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S014",
      "canonicalSourceId": "S030",
      "packageUrl": "https://modelcontextprotocol.io/specification/2024-11-05/server/prompts",
      "url": "https://modelcontextprotocol.io/specification/2024-11-05/server/prompts",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S015",
      "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": "S016",
      "canonicalSourceId": "S036",
      "packageUrl": "https://modelcontextprotocol.io/specification/2025-03-26/changelog",
      "url": "https://modelcontextprotocol.io/specification/2025-03-26/changelog",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S017",
      "canonicalSourceId": "S158",
      "packageUrl": "https://modelcontextprotocol.io/specification/2025-03-26/server/tools",
      "url": "https://modelcontextprotocol.io/specification/2025-03-26/server/tools",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S018",
      "canonicalSourceId": "S286",
      "packageUrl": "https://modelcontextprotocol.io/specification/2025-03-26/server/resources",
      "url": "https://modelcontextprotocol.io/specification/2025-03-26/server/resources",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S019",
      "canonicalSourceId": "S287",
      "packageUrl": "https://modelcontextprotocol.io/specification/2025-03-26/server/prompts",
      "url": "https://modelcontextprotocol.io/specification/2025-03-26/server/prompts",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S020",
      "canonicalSourceId": "S043",
      "packageUrl": "https://modelcontextprotocol.io/specification/2025-06-18/changelog",
      "url": "https://modelcontextprotocol.io/specification/2025-06-18/changelog",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S021",
      "canonicalSourceId": "S045",
      "packageUrl": "https://modelcontextprotocol.io/specification/2025-06-18/server/tools",
      "url": "https://modelcontextprotocol.io/specification/2025-06-18/server/tools",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S022",
      "canonicalSourceId": "S288",
      "packageUrl": "https://modelcontextprotocol.io/specification/2025-06-18/server/resources",
      "url": "https://modelcontextprotocol.io/specification/2025-06-18/server/resources",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S023",
      "canonicalSourceId": "S289",
      "packageUrl": "https://modelcontextprotocol.io/specification/2025-06-18/server/prompts",
      "url": "https://modelcontextprotocol.io/specification/2025-06-18/server/prompts",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S024",
      "canonicalSourceId": "S049",
      "packageUrl": "https://modelcontextprotocol.io/specification/2025-11-25/changelog",
      "url": "https://modelcontextprotocol.io/specification/2025-11-25/changelog",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S025",
      "canonicalSourceId": "S161",
      "packageUrl": "https://modelcontextprotocol.io/specification/2025-11-25/server/tools",
      "url": "https://modelcontextprotocol.io/specification/2025-11-25/server/tools",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S026",
      "canonicalSourceId": "S290",
      "packageUrl": "https://modelcontextprotocol.io/specification/2025-11-25/server/resources",
      "url": "https://modelcontextprotocol.io/specification/2025-11-25/server/resources",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S027",
      "canonicalSourceId": "S291",
      "packageUrl": "https://modelcontextprotocol.io/specification/2025-11-25/server/prompts",
      "url": "https://modelcontextprotocol.io/specification/2025-11-25/server/prompts",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S028",
      "canonicalSourceId": "S252",
      "packageUrl": "https://ts.sdk.modelcontextprotocol.io/v2/",
      "url": "https://ts.sdk.modelcontextprotocol.io/v2/",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S029",
      "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": "S030",
      "canonicalSourceId": "S292",
      "packageUrl": "https://py.sdk.modelcontextprotocol.io/",
      "url": "https://py.sdk.modelcontextprotocol.io/",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S031",
      "canonicalSourceId": "S293",
      "packageUrl": "https://py.sdk.modelcontextprotocol.io/servers/tools/",
      "url": "https://py.sdk.modelcontextprotocol.io/servers/tools/",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S032",
      "canonicalSourceId": "S294",
      "packageUrl": "https://py.sdk.modelcontextprotocol.io/servers/resources/",
      "url": "https://py.sdk.modelcontextprotocol.io/servers/resources/",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S033",
      "canonicalSourceId": "S295",
      "packageUrl": "https://py.sdk.modelcontextprotocol.io/servers/prompts/",
      "url": "https://py.sdk.modelcontextprotocol.io/servers/prompts/",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S034",
      "canonicalSourceId": "S296",
      "packageUrl": "https://ruby.sdk.modelcontextprotocol.io/client/pagination/",
      "url": "https://ruby.sdk.modelcontextprotocol.io/client/pagination/",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S035",
      "canonicalSourceId": "S297",
      "packageUrl": "https://modelcontextprotocol.io/docs/tools/inspector",
      "url": "https://modelcontextprotocol.io/docs/tools/inspector",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S036",
      "canonicalSourceId": "S298",
      "packageUrl": "https://github.com/modelcontextprotocol/inspector",
      "url": "https://github.com/modelcontextprotocol/inspector",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S037",
      "canonicalSourceId": "S299",
      "packageUrl": "https://github.com/modelcontextprotocol/servers/blob/599dafc1054550a6eeb87a6545c1e1b03b3ca827/README.md",
      "url": "https://github.com/modelcontextprotocol/servers/blob/599dafc1054550a6eeb87a6545c1e1b03b3ca827/README.md",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S038",
      "canonicalSourceId": "S300",
      "packageUrl": "https://github.com/modelcontextprotocol/servers/tree/599dafc1054550a6eeb87a6545c1e1b03b3ca827",
      "url": "https://github.com/modelcontextprotocol/servers/tree/599dafc1054550a6eeb87a6545c1e1b03b3ca827",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S039",
      "canonicalSourceId": "S301",
      "packageUrl": "https://github.com/modelcontextprotocol/servers/blob/599dafc1054550a6eeb87a6545c1e1b03b3ca827/src/everything/README.md",
      "url": "https://github.com/modelcontextprotocol/servers/blob/599dafc1054550a6eeb87a6545c1e1b03b3ca827/src/everything/README.md",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S040",
      "canonicalSourceId": "S302",
      "packageUrl": "https://github.com/modelcontextprotocol/servers/blob/599dafc1054550a6eeb87a6545c1e1b03b3ca827/src/fetch/README.md",
      "url": "https://github.com/modelcontextprotocol/servers/blob/599dafc1054550a6eeb87a6545c1e1b03b3ca827/src/fetch/README.md",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S041",
      "canonicalSourceId": "S303",
      "packageUrl": "https://github.com/modelcontextprotocol/servers/blob/599dafc1054550a6eeb87a6545c1e1b03b3ca827/src/memory/README.md",
      "url": "https://github.com/modelcontextprotocol/servers/blob/599dafc1054550a6eeb87a6545c1e1b03b3ca827/src/memory/README.md",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S042",
      "canonicalSourceId": "S304",
      "packageUrl": "https://github.com/modelcontextprotocol/servers/blob/599dafc1054550a6eeb87a6545c1e1b03b3ca827/src/filesystem/README.md",
      "url": "https://github.com/modelcontextprotocol/servers/blob/599dafc1054550a6eeb87a6545c1e1b03b3ca827/src/filesystem/README.md",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S043",
      "canonicalSourceId": "S305",
      "packageUrl": "https://github.com/modelcontextprotocol/servers/blob/599dafc1054550a6eeb87a6545c1e1b03b3ca827/src/git/README.md",
      "url": "https://github.com/modelcontextprotocol/servers/blob/599dafc1054550a6eeb87a6545c1e1b03b3ca827/src/git/README.md",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S044",
      "canonicalSourceId": "S306",
      "packageUrl": "https://github.com/modelcontextprotocol/servers/blob/599dafc1054550a6eeb87a6545c1e1b03b3ca827/src/sequentialthinking/README.md",
      "url": "https://github.com/modelcontextprotocol/servers/blob/599dafc1054550a6eeb87a6545c1e1b03b3ca827/src/sequentialthinking/README.md",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S045",
      "canonicalSourceId": "S142",
      "packageUrl": "https://code.visualstudio.com/blogs/2025/06/12/full-mcp-spec-support",
      "url": "https://code.visualstudio.com/blogs/2025/06/12/full-mcp-spec-support",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S046",
      "canonicalSourceId": "S141",
      "packageUrl": "https://code.visualstudio.com/docs/agent-customization/mcp-servers",
      "url": "https://code.visualstudio.com/docs/agent-customization/mcp-servers",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S047",
      "canonicalSourceId": "S145",
      "packageUrl": "https://support.claude.com/en/articles/11503834-build-custom-connectors-via-remote-mcp-servers",
      "url": "https://support.claude.com/en/articles/11175166-get-started-with-custom-connectors-using-remote-mcp",
      "editorialCorrectionApplied": true
    },
    {
      "packageSourceId": "S048",
      "canonicalSourceId": "S259",
      "packageUrl": "https://docs.anthropic.com/en/docs/claude-code/mcp",
      "url": "https://code.claude.com/docs/en/mcp",
      "editorialCorrectionApplied": true
    },
    {
      "packageSourceId": "S049",
      "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": "S050",
      "canonicalSourceId": "S144",
      "packageUrl": "https://geminicli.com/docs/tools/mcp-server/",
      "url": "https://geminicli.com/docs/tools/mcp-server/",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S051",
      "canonicalSourceId": "S307",
      "packageUrl": "https://cursor.com/docs/context/model-context-protocol",
      "url": "https://cursor.com/docs/context/model-context-protocol",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S052",
      "canonicalSourceId": "S274",
      "packageUrl": "https://www.jetbrains.com/help/ai-assistant/mcp.html",
      "url": "https://www.jetbrains.com/help/ai-assistant/mcp.html",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S053",
      "canonicalSourceId": "S284",
      "packageUrl": "https://zed.dev/docs/ai/agent-profiles",
      "url": "https://zed.dev/docs/ai/mcp",
      "editorialCorrectionApplied": true
    },
    {
      "packageSourceId": "S054",
      "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-mcp-apps-in-chatgpt",
      "editorialCorrectionApplied": true
    },
    {
      "packageSourceId": "S055",
      "canonicalSourceId": "S090",
      "packageUrl": "https://openai.github.io/openai-agents-python/mcp/",
      "url": "https://openai.github.io/openai-agents-python/mcp/",
      "editorialCorrectionApplied": true
    },
    {
      "packageSourceId": "S056",
      "canonicalSourceId": "S308",
      "packageUrl": "https://www.mcp.academy/concepts/tools-vs-resources-vs-prompts",
      "url": "https://www.mcp.academy/concepts/tools-vs-resources-vs-prompts",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S057",
      "canonicalSourceId": "S309",
      "packageUrl": "https://www.rapidevelopers.com/mcp-tutorial/mcp-tools-vs-resources-vs-prompts",
      "url": "https://www.rapidevelopers.com/mcp-tutorial/mcp-tools-vs-resources-vs-prompts",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S058",
      "canonicalSourceId": "S310",
      "packageUrl": "https://mcporbit.com/blog/mcp-tools-vs-resources-vs-prompts",
      "url": "https://mcporbit.com/blog/mcp-tools-vs-resources-vs-prompts",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S059",
      "canonicalSourceId": "S134",
      "packageUrl": "https://modelcontextprotocol.io/docs/2026-07-28/tutorials/security/security_best_practices",
      "url": "https://modelcontextprotocol.io/docs/2026-07-28/tutorials/security/security_best_practices",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S060",
      "canonicalSourceId": "S108",
      "packageUrl": "https://invariantlabs.ai/blog/mcp-security-notification-tool-poisoning-attacks",
      "url": "https://invariantlabs.ai/blog/mcp-security-notification-tool-poisoning-attacks",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S061",
      "canonicalSourceId": "S181",
      "packageUrl": "https://json-schema.org/draft/2020-12",
      "url": "https://json-schema.org/draft/2020-12",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S062",
      "canonicalSourceId": "S311",
      "packageUrl": "https://www.rfc-editor.org/rfc/rfc3986",
      "url": "https://www.rfc-editor.org/rfc/rfc3986",
      "editorialCorrectionApplied": false
    },
    {
      "packageSourceId": "S063",
      "canonicalSourceId": "S312",
      "packageUrl": "https://www.rfc-editor.org/rfc/rfc6570",
      "url": "https://www.rfc-editor.org/rfc/rfc6570",
      "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": "S021",
      "packageUrl": "https://www.anthropic.com/news/model-context-protocol",
      "url": "https://www.anthropic.com/news/model-context-protocol",
      "editorialCorrectionApplied": false
    }
  ],
  "articleCitations": {
    "packageSourceIds": [
      "S001",
      "S002",
      "S003",
      "S004",
      "S005",
      "S009",
      "S059",
      "S061",
      "S020",
      "S016",
      "S062",
      "S060",
      "S063",
      "S030",
      "S033",
      "S045",
      "S047",
      "S050",
      "S051",
      "S052",
      "S053",
      "S054",
      "S039",
      "S040",
      "S041",
      "S037",
      "S035",
      "S036",
      "S046",
      "S048",
      "S049",
      "S055",
      "S011",
      "S012",
      "S013",
      "S014",
      "S015",
      "S024",
      "S007",
      "S056",
      "S057"
    ],
    "canonicalSourceIds": [
      "S123",
      "S124",
      "S125",
      "S055",
      "S121",
      "S058",
      "S134",
      "S181",
      "S043",
      "S036",
      "S311",
      "S108",
      "S312",
      "S292",
      "S295",
      "S142",
      "S145",
      "S144",
      "S307",
      "S274",
      "S284",
      "S140",
      "S301",
      "S302",
      "S303",
      "S299",
      "S297",
      "S298",
      "S141",
      "S259",
      "S175",
      "S090",
      "S249",
      "S028",
      "S029",
      "S030",
      "S026",
      "S049",
      "S127",
      "S308",
      "S309"
    ],
    "count": 41
  },
  "currentSourceReview": {
    "checkedAt": "2026-08-26",
    "correctedPackageSourceIds": [
      "S047",
      "S048",
      "S049",
      "S053",
      "S054",
      "S055"
    ],
    "hostRowsCorrected": [
      "Claude web/desktop remote connectors",
      "Anthropic Messages API MCP connector",
      "Zed Agent",
      "ChatGPT custom MCP apps",
      "OpenAI Agents SDK MCP integration"
    ]
  },
  "counts": {
    "packageEvidence": 67,
    "newCanonicalEvidence": 27,
    "claims": 120,
    "comparisonRows": 25,
    "hostRows": 11,
    "faqs": 50,
    "evolutionRows": 20,
    "ambiguousUseCases": 49,
    "visualBriefs": 18,
    "supportingBriefs": 74,
    "unifiedRoadmapUrls": 293,
    "sourceUsageRows": 67,
    "subscriptionRows": 6,
    "promptComparisonRows": 6,
    "referenceServerRows": 7,
    "resourceUriRows": 7,
    "securityResponsibilityRows": 15,
    "toolResultRows": 8
  },
  "validationSignals": {
    "archiveBookkeepingCountsMatch": true,
    "everyArticleCitationMaps": true,
    "readmeDeclaresCurrentSpecification": true,
    "qualityAuditCountsPresent": true
  },
  "publicEndpointCount": 36,
  "editorialCorrections": [
    "Package-local source IDs are mapped to the unified evidence library without changing the checksum-verified archive.",
    "Six moved or expanded current-product sources are normalized against first-party documentation checked on August 26, 2026.",
    "Claims C037 and C040 are published as live-check required; C038 is durable only when scoped to audited commit 599dafc1054550a6eeb87a6545c1e1b03b3ca827.",
    "Claude custom-connector support is described conservatively as tools and connected data rather than native exposure of every MCP primitive.",
    "The Anthropic Messages API connector remains tools-only; Zed is updated to tools and prompts; the OpenAI Agents SDK is updated to programmatic tools, resources, and prompts.",
    "The final tool-result matrix row follows the blank CSV/Markdown prompt cell; the conflicting JSON-only “Prompt get” value remains disclosed in its package snapshot.",
    "Three of eighteen visual briefs are implemented in the reader edition; the other fifteen remain clearly labeled research briefs rather than claimed assets.",
    "The earlier no-vs slug is reconciled to the package-requested canonical, and 74 briefs merge into a 293-URL roadmap rather than creating duplicate plans."
  ],
  "publicEndpoints": [
    "/mcp-tools-vs-resources-vs-prompts/",
    "/sources/",
    "/editorial-policy/",
    "/data/mcp-primitives-claims.json",
    "/data/mcp-primitives-claims.csv",
    "/data/mcp-primitives-comparison.json",
    "/data/mcp-primitives-comparison.csv",
    "/data/mcp-primitives-host-support.json",
    "/data/mcp-primitives-host-support.csv",
    "/data/mcp-primitives-faq.json",
    "/data/mcp-primitives-faq.csv",
    "/data/mcp-primitives-evolution.json",
    "/data/mcp-primitives-evolution.csv",
    "/data/mcp-primitives-ambiguous-use-cases.json",
    "/data/mcp-primitives-ambiguous-use-cases.csv",
    "/data/mcp-primitives-visuals.json",
    "/data/mcp-primitives-visuals.csv",
    "/data/mcp-primitives-content-plan.json",
    "/data/mcp-primitives-content-plan.csv",
    "/data/mcp-content-roadmap.json",
    "/data/mcp-content-roadmap.csv",
    "/data/mcp-primitives-source-usage.json",
    "/data/mcp-primitives-source-usage.csv",
    "/data/mcp-primitives-legacy-subscriptions.json",
    "/data/mcp-primitives-legacy-subscriptions.csv",
    "/data/mcp-primitives-prompt-comparison.json",
    "/data/mcp-primitives-prompt-comparison.csv",
    "/data/mcp-primitives-reference-server-inventory.json",
    "/data/mcp-primitives-reference-server-inventory.csv",
    "/data/mcp-primitives-resource-uri-templates.json",
    "/data/mcp-primitives-resource-uri-templates.csv",
    "/data/mcp-primitives-security-responsibilities.json",
    "/data/mcp-primitives-security-responsibilities.csv",
    "/data/mcp-primitives-tool-result-content-types.json",
    "/data/mcp-primitives-tool-result-content-types.csv",
    "/data/mcp-tools-resources-prompts-package.json"
  ]
}