What Is a Remote MCP Server?

Filed as AFR/MCP-13 · task class Code modification · all MCP topics

What moves when the process moves

A remote MCP server runs somewhere other than the machine running the host application, and is reached over a network connection rather than as a launched subprocess. The protocol conversation is identical: the same handshake, the same listing requests, the same invocations. What changes is everything around the conversation.

Four things move at once. Lifecycle: the server is no longer started and stopped by the host, so availability, version and restarts belong to whoever operates it. Authentication: the implicit boundary of a local process is gone and the server has to decide which callers it answers. Failure: latency, timeouts and partial connectivity become states the client has to handle. Environment: the filesystem, the network position and the credentials the server holds are its own.

That last one is the most useful way to read the difference. A local server acts with the reach of the person who started it. A remote server acts with the reach of wherever it runs, which may be more than that person has, or less, and is rarely the same. An operation that behaved one way on a workstation can behave differently after the move without a line of its code changing.

Two further properties change quietly and cost the most later. The first is multiplicity: a launched subprocess belongs to the host that started it, whereas a networked server may be answering several callers at once, so anything the implementation held between requests is now shared across sessions that know nothing about each other. The second is version drift. A host launching a subprocess pins whatever it launches; a hosted server can be replaced between one session and the next, and the first sign of that at the calling end is a listing that no longer matches what the integration was written against.

What has to be decided before a server is reachable

Who may route to it. A subprocess is addressable by exactly one process on one machine and needs no decision at all; an address on a network is addressable by everything that can resolve it, so the set of permitted callers turns into an explicit choice that somebody has to write down.

And what a broken session means. A pipe to a child process fails when the child does, which is legible at both ends. A network connection can instead stall, time out, or drop mid-exchange while both sides are still running, and silence does not tell a caller whether the operation it asked for happened. Whether a retry is safe then becomes an operation-by-operation judgement — and it is a judgement nobody has to make while the server is a local process.

Remote is a deployment, not a kind of server

Remote and local are properties of a deployment rather than two kinds of server. The same implementation is usually capable of either, and the operations it publishes do not change when it moves. The decisions around it do.

How the Registry classifies moving a server off the workstation

Moving a server to a hosted environment and reconnecting an agent to it over the network is a change to a running integration, which the code modification class covers. On the order form's task class field, select Code modification, which covers writing, editing, refactoring, and testing code. That class has its own page at /tasks/code.

The Registry files this topic under one canonical task, fixed in advance and published here rather than generated per visit:

Move an MCP server from a developer workstation to a hosted environment and reconnect an agent to it over the network.

That string, hashed once, is fd0bde73c91f2684… — the first sixteen of sixty-four hex characters. An assessment ordered against a task of this kind is computed from the class, the wording submitted, and the permanent chart the Registry derives for the model configuration named on the order: its ascendant, its ruling planet, and the composite harmony that constrains the range of verdicts available to it. The whole derivation is published at /method.

The risk in a move like this is the assumption that travelled with it: a path, a credential or a reachability that was true on the workstation and silently is not true where the server now runs. 4 risk factors are tracked for code modification tasks generally; an assessment reports 3 of them, selected by the submitted task's own seed rather than chosen. Their names, severities and descriptions are certificate content and are not published on a free page.

Get Assessment

What this page does not claim

The Registry makes no representation that an assessment predicts the outcome of any task, and no assessment is validated against real-world results.

This page defines a term and states a classification. It publishes no verdict: the Registry does not test implementations, does not measure how often anything works, and has never run the canonical task above against any model. Where the server is hosted, how the connection is authenticated afterwards, and what its new environment can reach are decisions the canonical brief leaves open.

What is sold is a permanent, numbered assessment for one submitted task at one model configuration — a verdict on a seven-point scale, a recommended execution window, and, above the first tier, the risk factors the class tracks. EUR 1.90 Standard, EUR 4.90 Extended, and EUR 14.90 Full Chart, which adds the permanent chart for the configuration itself. Assessments from EUR 1.90; machine-readable at /pricing.json.

Related surfaces

← All MCP topics · The AFR-1 method · Code modification task class

Related topics: Transports · Authentication · MCP server

Questions about a remote server

What is a remote MCP server?
A server that runs somewhere other than the machine running the host application, reached over a network connection instead of being launched locally as a subprocess.
Does moving a server to a remote host change what it offers?
Not by itself. The operations, resources and prompts it publishes are unchanged. The lifecycle, the authentication decision, the failure modes and the environment it runs in all change.
Why does the environment matter after a move?
Because the server acts with the reach of wherever it runs. A local server has the access of the person who started it; a hosted one has whatever its deployment was given, which is rarely the same set.
Is the protocol conversation different for a remote server?
No. The handshake, the listing requests and the invocations are the same messages in the same order. What differs is who runs the process, who may reach it, what its environment can touch, and what a caller does when a connection fails in the middle of a request.