{
  "title": "Local vs Remote MCP Comparison Matrix",
  "schemaVersion": "1.0",
  "researchFreeze": "2026-08-26",
  "protocolRevision": "MCP 2026-07-28",
  "sourcePackage": "research/10",
  "integrityNote": "All 108 listed ordinary archive payloads verify. The package contains two incompatible numeric source namespaces; public records preserve an explicit archive namespace and never resolve IDs across families.",
  "evidencePolicy": "Only manually curated build_context source groups appear in sourceIds. Raw row tokens are preserved under archive and are not treated as publication citations.",
  "checkedAt": "2026-08-26",
  "count": 24,
  "records": [
    {
      "Dimension": "Definition",
      "Local MCP server": "Program or service running on or near the user machine",
      "Remote MCP server": "Network-accessible program or service reached through an MCP endpoint",
      "Interpretation": "Deployment pattern, not a separate protocol role",
      "id": "R10-COMP001",
      "sourceIds": [
        "S121",
        "S057",
        "S132",
        "S131",
        "S133"
      ],
      "evidenceStatus": "curated-dataset-level-evidence; not an archive row-level citation mapping",
      "archive": {
        "namespace": "research/10/local_vs_remote_master_matrix.json",
        "row": 1,
        "sourceIds": [],
        "raw": {
          "Dimension": "Definition",
          "Local MCP server": "Program or service running on or near the user machine",
          "Remote MCP server": "Network-accessible program or service reached through an MCP endpoint",
          "Interpretation": "Deployment pattern, not a separate protocol role"
        }
      }
    },
    {
      "Dimension": "Typical transport",
      "Local MCP server": "stdio",
      "Remote MCP server": "Streamable HTTP",
      "Interpretation": "Common pattern, not an absolute rule",
      "id": "R10-COMP002",
      "sourceIds": [
        "S121",
        "S057",
        "S132",
        "S131",
        "S133"
      ],
      "evidenceStatus": "curated-dataset-level-evidence; not an archive row-level citation mapping",
      "archive": {
        "namespace": "research/10/local_vs_remote_master_matrix.json",
        "row": 2,
        "sourceIds": [],
        "raw": {
          "Dimension": "Typical transport",
          "Local MCP server": "stdio",
          "Remote MCP server": "Streamable HTTP",
          "Interpretation": "Common pattern, not an absolute rule"
        }
      }
    },
    {
      "Dimension": "Process lifecycle",
      "Local MCP server": "Host usually launches and stops a subprocess",
      "Remote MCP server": "Service operator deploys and maintains independently",
      "Interpretation": "Local HTTP and remote custom transports are possible",
      "id": "R10-COMP003",
      "sourceIds": [
        "S121",
        "S057",
        "S132",
        "S131",
        "S133"
      ],
      "evidenceStatus": "curated-dataset-level-evidence; not an archive row-level citation mapping",
      "archive": {
        "namespace": "research/10/local_vs_remote_master_matrix.json",
        "row": 3,
        "sourceIds": [],
        "raw": {
          "Dimension": "Process lifecycle",
          "Local MCP server": "Host usually launches and stops a subprocess",
          "Remote MCP server": "Service operator deploys and maintains independently",
          "Interpretation": "Local HTTP and remote custom transports are possible"
        }
      }
    },
    {
      "Dimension": "Primary users",
      "Local MCP server": "Usually one user, device or host instance",
      "Remote MCP server": "Single tenant, team, enterprise or public multi-tenant service",
      "Interpretation": "Remote does not imply multi-tenant",
      "id": "R10-COMP004",
      "sourceIds": [
        "S121",
        "S057",
        "S132",
        "S131",
        "S133"
      ],
      "evidenceStatus": "curated-dataset-level-evidence; not an archive row-level citation mapping",
      "archive": {
        "namespace": "research/10/local_vs_remote_master_matrix.json",
        "row": 4,
        "sourceIds": [],
        "raw": {
          "Dimension": "Primary users",
          "Local MCP server": "Usually one user, device or host instance",
          "Remote MCP server": "Single tenant, team, enterprise or public multi-tenant service",
          "Interpretation": "Remote does not imply multi-tenant"
        }
      }
    },
    {
      "Dimension": "Installation",
      "Local MCP server": "Package, binary, container, MCPB or source checkout",
      "Remote MCP server": "URL/connector registration; no local server package required",
      "Interpretation": "Remote clients may still need connector configuration",
      "id": "R10-COMP005",
      "sourceIds": [
        "S121",
        "S057",
        "S132",
        "S131",
        "S133"
      ],
      "evidenceStatus": "curated-dataset-level-evidence; not an archive row-level citation mapping",
      "archive": {
        "namespace": "research/10/local_vs_remote_master_matrix.json",
        "row": 5,
        "sourceIds": [],
        "raw": {
          "Dimension": "Installation",
          "Local MCP server": "Package, binary, container, MCPB or source checkout",
          "Remote MCP server": "URL/connector registration; no local server package required",
          "Interpretation": "Remote clients may still need connector configuration"
        }
      }
    },
    {
      "Dimension": "Update model",
      "Local MCP server": "Per installation or device",
      "Remote MCP server": "Centralized deployment",
      "Interpretation": "Remote centralization reduces drift but increases blast radius",
      "id": "R10-COMP006",
      "sourceIds": [
        "S121",
        "S057",
        "S132",
        "S131",
        "S133"
      ],
      "evidenceStatus": "curated-dataset-level-evidence; not an archive row-level citation mapping",
      "archive": {
        "namespace": "research/10/local_vs_remote_master_matrix.json",
        "row": 6,
        "sourceIds": [],
        "raw": {
          "Dimension": "Update model",
          "Local MCP server": "Per installation or device",
          "Remote MCP server": "Centralized deployment",
          "Interpretation": "Remote centralization reduces drift but increases blast radius"
        }
      }
    },
    {
      "Dimension": "Identity boundary",
      "Local MCP server": "OS user/process trust plus host policy",
      "Remote MCP server": "HTTP client identity, OAuth/token validation and tenant context",
      "Interpretation": "Local servers may also call remote APIs with user tokens",
      "id": "R10-COMP007",
      "sourceIds": [
        "S121",
        "S057",
        "S132",
        "S131",
        "S133"
      ],
      "evidenceStatus": "curated-dataset-level-evidence; not an archive row-level citation mapping",
      "archive": {
        "namespace": "research/10/local_vs_remote_master_matrix.json",
        "row": 7,
        "sourceIds": [],
        "raw": {
          "Dimension": "Identity boundary",
          "Local MCP server": "OS user/process trust plus host policy",
          "Remote MCP server": "HTTP client identity, OAuth/token validation and tenant context",
          "Interpretation": "Local servers may also call remote APIs with user tokens"
        }
      }
    },
    {
      "Dimension": "Authorization",
      "Local MCP server": "Host confirmation plus local OS/file permissions and upstream API rules",
      "Remote MCP server": "Host confirmation plus server OAuth/scopes, tenant/object checks and upstream authorization",
      "Interpretation": "Confirmation is not authorization",
      "id": "R10-COMP008",
      "sourceIds": [
        "S121",
        "S057",
        "S132",
        "S131",
        "S133"
      ],
      "evidenceStatus": "curated-dataset-level-evidence; not an archive row-level citation mapping",
      "archive": {
        "namespace": "research/10/local_vs_remote_master_matrix.json",
        "row": 8,
        "sourceIds": [],
        "raw": {
          "Dimension": "Authorization",
          "Local MCP server": "Host confirmation plus local OS/file permissions and upstream API rules",
          "Remote MCP server": "Host confirmation plus server OAuth/scopes, tenant/object checks and upstream authorization",
          "Interpretation": "Confirmation is not authorization"
        }
      }
    },
    {
      "Dimension": "Secrets",
      "Local MCP server": "Environment variables, config, keychain, command arguments",
      "Remote MCP server": "Secret manager, delegated token, service account, managed identity",
      "Interpretation": "Both can leak secrets if poorly designed",
      "id": "R10-COMP009",
      "sourceIds": [
        "S121",
        "S057",
        "S132",
        "S131",
        "S133"
      ],
      "evidenceStatus": "curated-dataset-level-evidence; not an archive row-level citation mapping",
      "archive": {
        "namespace": "research/10/local_vs_remote_master_matrix.json",
        "row": 9,
        "sourceIds": [],
        "raw": {
          "Dimension": "Secrets",
          "Local MCP server": "Environment variables, config, keychain, command arguments",
          "Remote MCP server": "Secret manager, delegated token, service account, managed identity",
          "Interpretation": "Both can leak secrets if poorly designed"
        }
      }
    },
    {
      "Dimension": "Local filesystem access",
      "Local MCP server": "Natural when permitted by OS and server policy",
      "Remote MCP server": "Indirect through upload, local bridge or separate local server",
      "Interpretation": "Remote server cannot inherently read user files",
      "id": "R10-COMP010",
      "sourceIds": [
        "S121",
        "S057",
        "S132",
        "S131",
        "S133"
      ],
      "evidenceStatus": "curated-dataset-level-evidence; not an archive row-level citation mapping",
      "archive": {
        "namespace": "research/10/local_vs_remote_master_matrix.json",
        "row": 10,
        "sourceIds": [],
        "raw": {
          "Dimension": "Local filesystem access",
          "Local MCP server": "Natural when permitted by OS and server policy",
          "Remote MCP server": "Indirect through upload, local bridge or separate local server",
          "Interpretation": "Remote server cannot inherently read user files"
        }
      }
    },
    {
      "Dimension": "Cloud API access",
      "Local MCP server": "Possible using local credentials",
      "Remote MCP server": "Natural fit, often with server-side OAuth or managed identity",
      "Interpretation": "Choose based on ownership and credential model",
      "id": "R10-COMP011",
      "sourceIds": [
        "S121",
        "S057",
        "S132",
        "S131",
        "S133"
      ],
      "evidenceStatus": "curated-dataset-level-evidence; not an archive row-level citation mapping",
      "archive": {
        "namespace": "research/10/local_vs_remote_master_matrix.json",
        "row": 11,
        "sourceIds": [],
        "raw": {
          "Dimension": "Cloud API access",
          "Local MCP server": "Possible using local credentials",
          "Remote MCP server": "Natural fit, often with server-side OAuth or managed identity",
          "Interpretation": "Choose based on ownership and credential model"
        }
      }
    },
    {
      "Dimension": "Cross-device access",
      "Local MCP server": "Requires installation/configuration on each device",
      "Remote MCP server": "Natural if host supports remote endpoints",
      "Interpretation": "Local bundle may sync configuration but not process state",
      "id": "R10-COMP012",
      "sourceIds": [
        "S121",
        "S057",
        "S132",
        "S131",
        "S133"
      ],
      "evidenceStatus": "curated-dataset-level-evidence; not an archive row-level citation mapping",
      "archive": {
        "namespace": "research/10/local_vs_remote_master_matrix.json",
        "row": 12,
        "sourceIds": [],
        "raw": {
          "Dimension": "Cross-device access",
          "Local MCP server": "Requires installation/configuration on each device",
          "Remote MCP server": "Natural if host supports remote endpoints",
          "Interpretation": "Local bundle may sync configuration but not process state"
        }
      }
    },
    {
      "Dimension": "Multi-tenancy",
      "Local MCP server": "Uncommon and usually one OS identity",
      "Remote MCP server": "Common production concern",
      "Interpretation": "Remote single-tenant deployments remain valid",
      "id": "R10-COMP013",
      "sourceIds": [
        "S121",
        "S057",
        "S132",
        "S131",
        "S133"
      ],
      "evidenceStatus": "curated-dataset-level-evidence; not an archive row-level citation mapping",
      "archive": {
        "namespace": "research/10/local_vs_remote_master_matrix.json",
        "row": 13,
        "sourceIds": [],
        "raw": {
          "Dimension": "Multi-tenancy",
          "Local MCP server": "Uncommon and usually one OS identity",
          "Remote MCP server": "Common production concern",
          "Interpretation": "Remote single-tenant deployments remain valid"
        }
      }
    },
    {
      "Dimension": "Scaling",
      "Local MCP server": "Per-device processes or local pool",
      "Remote MCP server": "Horizontal/vertical scaling behind HTTP infrastructure",
      "Interpretation": "2026 core removes protocol-session affinity for modern requests",
      "id": "R10-COMP014",
      "sourceIds": [
        "S121",
        "S057",
        "S132",
        "S131",
        "S133"
      ],
      "evidenceStatus": "curated-dataset-level-evidence; not an archive row-level citation mapping",
      "archive": {
        "namespace": "research/10/local_vs_remote_master_matrix.json",
        "row": 14,
        "sourceIds": [],
        "raw": {
          "Dimension": "Scaling",
          "Local MCP server": "Per-device processes or local pool",
          "Remote MCP server": "Horizontal/vertical scaling behind HTTP infrastructure",
          "Interpretation": "2026 core removes protocol-session affinity for modern requests"
        }
      }
    },
    {
      "Dimension": "Latency",
      "Local MCP server": "IPC/process startup plus operation cost",
      "Remote MCP server": "Network, TLS, auth, cold start plus operation cost",
      "Interpretation": "No universal winner without topology-specific measurement",
      "id": "R10-COMP015",
      "sourceIds": [
        "S121",
        "S057",
        "S132",
        "S131",
        "S133"
      ],
      "evidenceStatus": "curated-dataset-level-evidence; not an archive row-level citation mapping",
      "archive": {
        "namespace": "research/10/local_vs_remote_master_matrix.json",
        "row": 15,
        "sourceIds": [],
        "raw": {
          "Dimension": "Latency",
          "Local MCP server": "IPC/process startup plus operation cost",
          "Remote MCP server": "Network, TLS, auth, cold start plus operation cost",
          "Interpretation": "No universal winner without topology-specific measurement"
        }
      }
    },
    {
      "Dimension": "Availability",
      "Local MCP server": "Depends on device, process and local runtime",
      "Remote MCP server": "Depends on hosted service, network and dependencies",
      "Interpretation": "Remote centralizes outage risk",
      "id": "R10-COMP016",
      "sourceIds": [
        "S121",
        "S057",
        "S132",
        "S131",
        "S133"
      ],
      "evidenceStatus": "curated-dataset-level-evidence; not an archive row-level citation mapping",
      "archive": {
        "namespace": "research/10/local_vs_remote_master_matrix.json",
        "row": 16,
        "sourceIds": [],
        "raw": {
          "Dimension": "Availability",
          "Local MCP server": "Depends on device, process and local runtime",
          "Remote MCP server": "Depends on hosted service, network and dependencies",
          "Interpretation": "Remote centralizes outage risk"
        }
      }
    },
    {
      "Dimension": "Audit",
      "Local MCP server": "Often fragmented across endpoints and devices",
      "Remote MCP server": "Can be centralized at gateway/server",
      "Interpretation": "Local hosts can forward structured audit centrally",
      "id": "R10-COMP017",
      "sourceIds": [
        "S121",
        "S057",
        "S132",
        "S131",
        "S133"
      ],
      "evidenceStatus": "curated-dataset-level-evidence; not an archive row-level citation mapping",
      "archive": {
        "namespace": "research/10/local_vs_remote_master_matrix.json",
        "row": 17,
        "sourceIds": [],
        "raw": {
          "Dimension": "Audit",
          "Local MCP server": "Often fragmented across endpoints and devices",
          "Remote MCP server": "Can be centralized at gateway/server",
          "Interpretation": "Local hosts can forward structured audit centrally"
        }
      }
    },
    {
      "Dimension": "Package supply-chain risk",
      "Local MCP server": "Directly affects user machine",
      "Remote MCP server": "Primarily affects operator deployment pipeline",
      "Interpretation": "Remote users still trust server operator and dependencies",
      "id": "R10-COMP018",
      "sourceIds": [
        "S121",
        "S057",
        "S132",
        "S131",
        "S133"
      ],
      "evidenceStatus": "curated-dataset-level-evidence; not an archive row-level citation mapping",
      "archive": {
        "namespace": "research/10/local_vs_remote_master_matrix.json",
        "row": 18,
        "sourceIds": [],
        "raw": {
          "Dimension": "Package supply-chain risk",
          "Local MCP server": "Directly affects user machine",
          "Remote MCP server": "Primarily affects operator deployment pipeline",
          "Interpretation": "Remote users still trust server operator and dependencies"
        }
      }
    },
    {
      "Dimension": "Network exposure",
      "Local MCP server": "Minimal with stdio; local HTTP can still be exposed",
      "Remote MCP server": "Core concern; TLS, Origin validation and auth required",
      "Interpretation": "Local HTTP is not equivalent to stdio",
      "id": "R10-COMP019",
      "sourceIds": [
        "S121",
        "S057",
        "S132",
        "S131",
        "S133"
      ],
      "evidenceStatus": "curated-dataset-level-evidence; not an archive row-level citation mapping",
      "archive": {
        "namespace": "research/10/local_vs_remote_master_matrix.json",
        "row": 19,
        "sourceIds": [],
        "raw": {
          "Dimension": "Network exposure",
          "Local MCP server": "Minimal with stdio; local HTTP can still be exposed",
          "Remote MCP server": "Core concern; TLS, Origin validation and auth required",
          "Interpretation": "Local HTTP is not equivalent to stdio"
        }
      }
    },
    {
      "Dimension": "Offline use",
      "Local MCP server": "Possible for purely local capabilities",
      "Remote MCP server": "Usually unavailable without network",
      "Interpretation": "Remote may have local cache but is service-dependent",
      "id": "R10-COMP020",
      "sourceIds": [
        "S121",
        "S057",
        "S132",
        "S131",
        "S133"
      ],
      "evidenceStatus": "curated-dataset-level-evidence; not an archive row-level citation mapping",
      "archive": {
        "namespace": "research/10/local_vs_remote_master_matrix.json",
        "row": 20,
        "sourceIds": [],
        "raw": {
          "Dimension": "Offline use",
          "Local MCP server": "Possible for purely local capabilities",
          "Remote MCP server": "Usually unavailable without network",
          "Interpretation": "Remote may have local cache but is service-dependent"
        }
      }
    },
    {
      "Dimension": "Collaboration",
      "Local MCP server": "Usually machine/user scoped",
      "Remote MCP server": "Natural fit for shared systems and team policy",
      "Interpretation": "Local workflows can collaborate through upstream cloud APIs",
      "id": "R10-COMP021",
      "sourceIds": [
        "S121",
        "S057",
        "S132",
        "S131",
        "S133"
      ],
      "evidenceStatus": "curated-dataset-level-evidence; not an archive row-level citation mapping",
      "archive": {
        "namespace": "research/10/local_vs_remote_master_matrix.json",
        "row": 21,
        "sourceIds": [],
        "raw": {
          "Dimension": "Collaboration",
          "Local MCP server": "Usually machine/user scoped",
          "Remote MCP server": "Natural fit for shared systems and team policy",
          "Interpretation": "Local workflows can collaborate through upstream cloud APIs"
        }
      }
    },
    {
      "Dimension": "Best fit",
      "Local MCP server": "Files, IDEs, desktop apps, local DBs, device hardware, offline/private workflows",
      "Remote MCP server": "SaaS, enterprise data, shared APIs, centralized governance, web/cloud hosts",
      "Interpretation": "Hybrid is common",
      "id": "R10-COMP022",
      "sourceIds": [
        "S121",
        "S057",
        "S132",
        "S131",
        "S133"
      ],
      "evidenceStatus": "curated-dataset-level-evidence; not an archive row-level citation mapping",
      "archive": {
        "namespace": "research/10/local_vs_remote_master_matrix.json",
        "row": 22,
        "sourceIds": [],
        "raw": {
          "Dimension": "Best fit",
          "Local MCP server": "Files, IDEs, desktop apps, local DBs, device hardware, offline/private workflows",
          "Remote MCP server": "SaaS, enterprise data, shared APIs, centralized governance, web/cloud hosts",
          "Interpretation": "Hybrid is common"
        }
      }
    },
    {
      "Dimension": "Principal failure domain",
      "Local MCP server": "One user device/process",
      "Remote MCP server": "Central service, network, identity provider or gateway",
      "Interpretation": "Risk concentration differs",
      "id": "R10-COMP023",
      "sourceIds": [
        "S121",
        "S057",
        "S132",
        "S131",
        "S133"
      ],
      "evidenceStatus": "curated-dataset-level-evidence; not an archive row-level citation mapping",
      "archive": {
        "namespace": "research/10/local_vs_remote_master_matrix.json",
        "row": 23,
        "sourceIds": [],
        "raw": {
          "Dimension": "Principal failure domain",
          "Local MCP server": "One user device/process",
          "Remote MCP server": "Central service, network, identity provider or gateway",
          "Interpretation": "Risk concentration differs"
        }
      }
    },
    {
      "Dimension": "Primary operating burden",
      "Local MCP server": "Packaging, installation, compatibility and support across machines",
      "Remote MCP server": "Hosting, identity, observability, scaling and incident response",
      "Interpretation": "Neither is operationally free",
      "id": "R10-COMP024",
      "sourceIds": [
        "S121",
        "S057",
        "S132",
        "S131",
        "S133"
      ],
      "evidenceStatus": "curated-dataset-level-evidence; not an archive row-level citation mapping",
      "archive": {
        "namespace": "research/10/local_vs_remote_master_matrix.json",
        "row": 24,
        "sourceIds": [],
        "raw": {
          "Dimension": "Primary operating burden",
          "Local MCP server": "Packaging, installation, compatibility and support across machines",
          "Remote MCP server": "Hosting, identity, observability, scaling and incident response",
          "Interpretation": "Neither is operationally free"
        }
      }
    }
  ]
}