Remote vs local MCP servers: hosting, authorization and which one to pick
Choose between local stdio and remote HTTP MCP servers, understand OAuth authorization, and verify an editor connection before granting access.
π― For Developers and team administrators choosing how to connect an editor or AI assistant to MCP tools and services.
- Separate server hosting from transport choice
- Understand where MCP OAuth authorization applies
- Connect and verify an MCP server in VS Code
- Recognize deployment limits and Tvijo release boundaries
A remote MCP server exposes an endpoint that a client reaches over HTTP; a local server commonly runs as a process launched by the client over stdio. Choose local when you need control over the runtime and local resources, and remote when you want a hosted service; HTTP can also run locally. MCP OAuth authorization applies to protected HTTP connections, while authorization itself is optional in MCP. Transport overview Β· Authorization specification.
What it can do
MCP provides a common connection between an assistant and capabilities exposed by a server. Changing the transport changes how messages travel, rather than what those messages mean. A transport alone does not add a database, browser or business integration. MCP transport overview.
For a concrete remote example, Cloudflare publishes managed MCP servers and documents OAuth connections. Its documentation server is listed at https://docs.mcp.cloudflare.com/mcp; its main API server is listed at https://mcp.cloudflare.com/mcp. Searching product documentation and accessing an account are different use cases: choose the appropriate endpoint and review its access requirements. These addresses are documented as of 30 Oct 2026. Cloudflare's server catalogue.
For background, start with what MCP is, then use the Cloudflare MCP guide for that service. More related explanations are in AI agents explained.
stdio vs HTTP: separate transport from hosting
With stdio, the client starts a subprocess and exchanges newline-delimited JSON-RPC through its standard input and output. Diagnostic text belongs on stderr: a startup banner on stdout can corrupt the protocol stream. This distinction matters when a command appears to launch successfully but the client cannot understand its responses. Official stdio binding.
Streamable HTTP uses an independent server and an MCP endpoint. Requests use HTTP POST; responses can be JSON or a request-scoped Server-Sent Events stream. Earlier HTTP+SSE is deprecated; check the documented compatibility path before reusing an old setup. Official HTTP binding.
Use this decision table as a deployment guide:
| Your situation | Sensible starting point | Responsibility to assign |
|---|---|---|
| A workstation tool needs a project folder | Local process | Runtime, updates and file permissions |
| A service publishes an official MCP URL | Remote HTTP connection | Account access and permitted data |
| A team hosts its own internal endpoint | Self-hosted HTTP | Deployment, authentication and availability |
| A desktop application exposes localhost | Local HTTP | Listener exposure and client compatibility |
Local and remote describe placement; stdio and HTTP describe communication. Write down both before comparing security or maintenance effort.
What MCP OAuth authorization covers
For HTTP authorization, the MCP client obtains access on the user's behalf; the protected MCP server validates tokens, while an authorization server issues them. Protected-resource metadata supports discovery. Request only the permissions needed for the intended operation. The stdio binding does not use this HTTP authorization flow; the specification recommends obtaining its credentials from the environment. MCP authorization.
Keep transport credentials separate from downstream account credentials. A locally launched connector may still contact an external service: process location is not evidence that data stays on the workstation. Before enabling it, sketch the intended route from editor to connector to destination, and mark where confidential content would cross a boundary. Review the executable as software, including its documented network behavior. VS Code's trust and isolation guidance.
Which one should you pick?
Start with the resource and the person responsible for operating the connection. For a developer experimenting with a project-specific tool, a local process can make ownership straightforward. For a team using a vendor's supported endpoint, remote access may avoid maintaining a connector runtime on every workstation. These are deployment judgments, not guarantees about safety or speed.
Ask who updates the server, which account it uses, which content it receives and how access is removed when someone leaves. If nobody owns those decisions, changing transports will not solve the problem. A small documented connection is easier to review than a broad rollout with unclear permissions. Use the MCP server security checklist to record those decisions.
How to connect it safely
- Choose a bounded task. Write an acceptance condition, such as retrieving a public documentation page. Decide beforehand which data may leave the project and whether any write operation is allowed.
- Verify the publisher's recipe. Obtain the endpoint or launch command from official documentation. For a command, review the executable, arguments and runtime requirements before starting it. For HTTP, verify the destination and its documented authentication method.
- Add it in VS Code. Run
MCP: Add Server. Choose HTTP for an endpoint or Command (stdio) for a launch command. Select a configuration destination appropriate to the active agent harness. Follow the current VS Code walkthrough; do not assume configuration files are interchangeable between clients. - Review access before approval. Confirm the intended account and requested permissions. Keep credentials out of chat and committed project files. For a local HTTP listener, use localhost binding and Origin validation, as recommended or required respectively by the HTTP specification.
- Inspect a real tool result. Ask explicitly for the bounded task, expand the call and confirm the intended server returned relevant output. A plausible answer alone is insufficient evidence of a working connection. VS Code verification steps.
- Record an exit procedure. Document who can revoke access, stop the process or disable the configuration. Keep a redacted example result so another maintainer can repeat the acceptance task.
For editor-specific context, continue with MCP in VS Code.
When this does not work
A command can fail because the required runtime is missing or the executable cannot be found. Inspect startup output before replacing credentials. With stdio, check whether ordinary logging has leaked onto stdout. stdio requirements.
A successful login does not establish that the desired tool is available in the active session. Review configuration scope, tool availability and organizational restrictions; VS Code documents these as distinct troubleshooting paths. Connection troubleshooting.
A local deployment is unsuitable if its documented data destination conflicts with your policy. A hosted service is unsuitable if nobody can approve the data transfer or maintain its account. In either case, reduce the task's scope or choose another deployment. Consult the current client and server documentation before adapting an older transport recipe.
Where Tvijo fits
As of 30 Oct 2026, Tvijo's public pages describe separate editor and MCP entry points. The DSHREM VS Code extension sends selected context to the Tvijo service. That editor workflow does not establish a general MCP client integration. TvijoCode embeds the extension in a Code - OSS editor; its page labels it a Windows x64 test build, unsigned and without automatic updates.
The Tvijo MCP status page reports published consultation functionality in 0.1.1 and a merged, tagged 0.2.0 diff-review release awaiting npm publication. Its prepared client recipes include stdio. Editor provider integration and delegation remain planned phases; those recipes do not establish a ready hosted HTTP endpoint. A local MCP process and a cloud service call can therefore be parts of the same workflow.
As of 30 Oct 2026, the Tvijo workspace shows Try at $0, limited to 5 tasks, 50,000 tokens or $0.05 of sponsored usage, whichever comes first, from a shared $1 daily pool funded by TVIJO. Service credit is shown at $10 for requesting prepaid credit: metered provider usage plus an 8% service markup. Payment collection is not activated; an order is not a charge. These are workspace offers, not MCP transport fees.
FAQ
Does every remote MCP server require OAuth?
No. MCP authorization is optional. Check the endpoint's documented requirements; the HTTP authorization specification defines the flow for protected access. Official authorization rules.
Is a local MCP server always offline?
Do not assume that. Inspect the connector's documented destinations and permissions before sending private content. Local placement describes where the process runs.
Can HTTP be used for a local MCP server?
Yes. The HTTP binding explicitly addresses locally running servers, including localhost binding and Origin checks. HTTP security requirements.
Sources
Source links and observation dates are recorded below. Review status is stated for each material.
π Article connections
Open the full knowledge graph βPublished article links. Select a node to open its article at the heading.
Article links Β· keyboard / text view
Same topic
- AI agents for a small business: five first tasks to automate safely
- Build your own MCP server: a minimal read-only Python tool
- Local models with MCP: run an agent with Ollama, and know its limits
- MCP in VS Code: add a server, trust it, and audit its actions
- How much does an AI coding agent cost per task? Tokens, limits and free starts
- MCP server security checklist: 12 checks before connecting real data
Next steps
Related reading
AI agents for a small business: five first tasks to automate safely
Start with inquiry labels, support drafts, meeting actions, catalog checks and weekly summaries. Set permissions, review outputs and measure a bounded Tvijo preview before paying.
AI agents and MCP explainedBuild your own MCP server: a minimal read-only Python tool
Create a small Python MCP server with fictional data, test it in Inspector, and connect VS Code with a clear read-only boundary.
AI agents and MCP explainedLocal models with MCP: run an agent with Ollama, and know its limits
Connect Ollama to MCP tools through a local agent client. Learn the setup, hardware constraints, privacy boundaries and where Tvijo fits.
AI agents and MCP explainedMCP in VS Code: add a server, trust it, and audit its actions
Add an MCP server in VS Code, choose the right JSON format, understand trust prompts, and check tool evidence. Includes the boundaries of Tvijoβs editor clients.
π¬ Comments