Preface

The Model Context Protocol (MCP) is an open protocol released by Anthropic in November 2024, designed to unify how AI assistants connect with external tools and data sources. You can think of it as the USB-C of the AI era: a standard interface that allows different clients like Claude Code, Cursor, and VS Code Copilot to call services such as GitHub, databases, and deployment platforms using the same method.

Early versions of MCP relied primarily on local stdio — spawning a subprocess on the local machine, embedding API keys in configuration files, and having clients start and terminate the process. Starting in the second half of 2025, vendors including GitHub, Vercel, Linear, Notion, Supabase, Stripe, and Figma successively launched OAuth-protected Remote MCP endpoints. Developers only need to provide an HTTPS URL, complete authorization in a browser during the first connection, and the Agent can operate PRs, view deployment logs, and inspect database schemas without installing a local runtime.

On July 28, 2026, the official MCP team released the 2026-07-28 specification. The core change was switching the protocol layer to a stateless request/response model, with Streamable HTTP officially becoming the default transport for Remote MCP. A December 2025 survey of 70 MCP developers by Zuplo found that 59% of servers already use Streamable HTTP, while stdio accounts for 34%. Remote MCP is shifting from an “optional alternative” to the default access method for Agent toolchains.

This article explains why Remote MCP has become mainstream, how to configure official endpoints from major vendors, and the key changes introduced by the 2026-07-28 specification.

Differences Between Local MCP and Remote MCP

The two modes have clear architectural differences:

Local MCP Remote MCP
Deployment Location Local subprocess Vendor cloud
Transport stdio Streamable HTTP (or legacy SSE)
Authentication API key in configuration file Browser-based OAuth
Typical Use Cases File systems, local databases, browser automation GitHub, deployment platforms, issue tracking, SaaS tools

The advantage of local mode is low latency and no network dependency; the advantage of Remote mode is zero installation, no credentials stored on disk, and unified upgrades by the vendor. Firecrawl summarized common combinations in its 2026 developer guide: use local mode for disk-related tasks, and Remote mode for services with hosted APIs. Most production environments will use a mix of both.

The typical connection flow for Remote MCP is as follows:
1. Enter the HTTPS endpoint URL in the configuration of clients like Claude Code or Cursor.
2. When the tool is first called, the client will launch a browser OAuth authorization page.
3. After authorization is complete, the token is managed by the client and will not be written to the mcp.json configuration file.
4. Subsequent requests use Streamable HTTP, with permission scopes matching those granted during the OAuth flow.

Taking adding GitHub Remote MCP to Claude Code as an example:

claude mcp add -s user -t http github https://api.githubcopilot.com/mcp/

The -t http flag indicates using Streamable HTTP transport; -s user specifies user-level global configuration. After launching Claude Code, enter /mcp and follow the prompts to complete GitHub OAuth authorization.

Official Remote MCP Endpoints from Major 2026 Vendors

All endpoints below are sourced from official vendor documentation and are publicly accessible as of August 2026.

GitHub MCP

GitHub’s hosted Remote MCP is the official entry point for operating repositories, PRs, issues, and Actions.
- Endpoint: https://api.githubcopilot.com/mcp/
- Read-only Mode: https://api.githubcopilot.com/mcp/readonly
- Authentication: OAuth (GitHub’s official mirror also supports PAT, but OAuth is recommended for Remote deployments)
- Capabilities: Read files across branches, create/update PRs, view Actions logs, create issues by label, and more

GitHub’s blog compared local Docker and hosted endpoints: the hosted version receives automatic patches and upgrades from GitHub, replaces PAT rotation with OAuth, and is accessible from any IDE or remote development environment. VS Code users can run GitHub MCP: Install Remote Server from the command palette for one-click setup.

Vercel MCP

Vercel’s official Remote MCP is designed for deployment debugging scenarios for Next.js and full-stack teams.
- Endpoint: https://mcp.vercel.com
- Authentication: OAuth (authorization page shown on each connection, client allowlist mechanism included)
- Transport: Streamable HTTP + MCP Authorization specification
- Capabilities: Query projects, deployment status, build logs, and document retrieval; read-only during initial beta testing to prevent accidental production configuration changes by Agents

Claude Code configuration:

claude mcp add --transport http vercel https://mcp.vercel.com

You can also use the Vercel CLI vercel mcp command, which automatically detects and writes configurations for Claude Code, Cursor, and VS Code Copilot. Add the --project flag to restrict access to a single linked Vercel Project.

Supabase MCP

Supabase launched its Remote MCP in 2025, supporting both cloud projects and local CLI instances.
- Cloud Endpoint: https://mcp.supabase.com/mcp
- Local CLI Endpoint: http://localhost:54321/mcp
- Authentication: OAuth 2.0 (browser-based authorization)
- Capabilities: Explore schemas, execute test queries, manage projects (permissions match granted OAuth scopes)

Supabase’s official blog notes that Remote MCP only requires a single URL, eliminating the need to install a Node runtime on every machine compared to stdio mode. The current OAuth mode uses an “all or nothing” binary permission model, with fine-grained permissions currently under development.

Linear MCP

Linear’s official Remote MCP launched in May 2025, with issue and sprint management as its primary use cases.
- Endpoint: https://mcp.linear.app/mcp
- Read-only Endpoint: https://mcp.linear.app/mcp/readonly
- Authentication: OAuth 2.1 + Dynamic Client Registration
- Transport: Streamable HTTP (legacy SSE endpoint /sse has been deprecated)

claude mcp add --transport http linear https://mcp.linear.app/mcp

Notion MCP

Notion’s hosted server is the official maintained recommended solution, with the open-source npm package @notionhq/notion-mcp-server now in maintenance mode.
- Endpoint: https://mcp.notion.com/mcp
- Authentication: User OAuth (hosted version does not support Bearer Tokens, making it unsuitable for fully unattended automation)
- Capabilities: Read/write pages, search workspaces, manage tasks and documents

Claude Desktop / Claude.ai users can add a custom connector URL in Settings → Connectors; Claude Code users can add the same address using the --transport http flag.

Stripe MCP

Stripe’s official Remote MCP can be directly called by Agents for payment, subscription, and customer inquiry scenarios.
- Endpoint: https://mcp.stripe.com
- Authentication: OAuth (recommended) or Restricted API Key as a Bearer Token (ideal for headless Agents)
- Capabilities: CRUD operations for customers/products/payments, document search, general API read/write tools

Enable separately per environment (Sandbox / Live) in Dashboard → Settings → MCP. Connect platforms require Restricted Keys and do not support OAuth.

Figma MCP

Figma Dev Mode MCP allows Agents to read design structures, tokens, and component variants, rather than inferring layouts solely from screenshots.
- Remote Endpoint: https://mcp.figma.com/mcp (recommended, available for all plans)
- Desktop Local Endpoint: http://127.0.0.1:3845/mcp (requires Figma Desktop Dev/Full seat, supports selected frame context)
- Authentication: Figma OAuth

claude mcp add --transport http figma https://mcp.figma.com/mcp

Cursor users can also configure it via /add-plugin figma or the Figma plugin.

Firecrawl MCP (Web Context)

Firecrawl provides web retrieval and crawling capabilities for Agents, with its Remote endpoint supporting three modes:

Mode Endpoint Authentication
Keyless https://mcp.firecrawl.dev/v2/mcp None (rate-limited by IP)
OAuth https://mcp.firecrawl.dev/v2/mcp-oauth Browser OAuth
API Key Same as above + Authorization: Bearer Key stored in environment variables

Tools including Search, Scrape, Crawl, and Agent can be exposed via a single MCP, making it ideal for Claude Code, Cursor, and other clients to conduct online research.

Configuring Remote MCP in Cursor and Claude Code

The JSON configuration structure is consistent across clients, with only the configuration file path differing:

Client Configuration File
Claude Code claude mcp add or project-level .mcp.json
Cursor ~/.cursor/mcp.json (global) or .cursor/mcp.json (project-level)
VS Code Copilot .vscode/mcp.json
Claude Desktop Connectors panel or claude_desktop_config.json

Example global Remote MCP configuration for Cursor (GitHub + Supabase):

{
  "mcpServers": {
    "github": {
      "url": "https://api.githubcopilot.com/mcp/"
    },
    "supabase": {
      "url": "https://mcp.supabase.com/mcp"
    }
  }
}

Save the file and restart Cursor; the first time you call related tools, you will be prompted to log in via OAuth. Claude Code users are recommended to use the CLI method instead of manually editing JSON:

claude mcp add -s user -t http github https://api.githubcopilot.com/mcp/
claude mcp add -s user -t http supabase https://mcp.supabase.com/mcp
claude mcp add -s user -t http vercel https://mcp.vercel.com

For older clients that do not natively support Remote MCP, use the mcp-remote bridge:

{
  "mcpServers": {
    "linear": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://mcp.linear.app/mcp"]
    }
  }
}

MCP 2026-07-28 Specification: Production-Grade Foundation for Remote MCP

On July 28, 2026, the official MCP blog released the 2026-07-28 specification, which the community views as a critical milestone for Remote MCP entering production. The core changes include:

1. Stateless Protocol Core

Deprecated the initialize/initialized handshake and Mcp-Session-Id header. Each request is self-contained, and can be routed to any instance via standard round-robin load balancing without shared session storage. If application-level cross-call state is required, the tool will return an explicit handle that the model can pass back in subsequent calls.

2. Header-Based Routing

Streamable HTTP requests must carry the Mcp-Method and Mcp-Name headers, allowing gateways, WAFs, and rate limiters to route traffic directly via headers without parsing the JSON body.

3. Multi Round-Trip Requests (MRTR)

Enables “user confirmation during tool execution” over stateless transport: the server returns resultType: "input_required", and the client retries the original call with the user’s response. Products like Supabase use this to support interactions such as “confirm costs before creating a project”.

4. Enhanced Authorization
- RFC 9207 iss parameter validation to prevent authorization server mix-up attacks.
- Dynamic Client Registration (DCR) officially deprecated, replaced by Client ID Metadata Documents (CIMD).
- Introduced extended frameworks including Enterprise Managed Authorization (EMA).

5. Cacheable List Responses

Responses from endpoints like tools/list and resources/list carry ttlMs and cacheScope fields, reducing overhead from repeated tool directory pulls.

Tier 1 SDKs (TypeScript, Python, Go, C#) have been updated to support the new specification. Official data shows that Tier 1 SDKs have a monthly download volume of nearly 500 million, with TypeScript and Python SDKs each exceeding 1 billion cumulative downloads.

Security Best Practices: Remote Does Not Equal Zero Risk

Remote MCP delegates credential management to OAuth, but Agents may still perform write operations within the permissions you authorized. A 2025 Zuplo survey found that 50% of MCP builders list “security and access control” as their top challenge, and 24% of servers have no authentication enabled. We recommend:
1. Start with read-only access: Vendors including GitHub, Linear, and Vercel offer read-only endpoints or OAuth scope restrictions.
2. Use official servers first: Stick to vendor domains like api.githubcopilot.com and mcp.vercel.com, and avoid unaudited community forks.
3. Never commit credentials to version control: In Remote mode, OAuth tokens are managed by the client; if you must use an API key (such as for Stripe headless Agents), store it in environment variables or a secrets management service.
4. Follow least privilege principles: Use Restricted Keys for Stripe; generate project-specific URLs for Supabase in the dashboard to limit blast radius.
5. Monitor for Prompt Injection: MCPs that return web content (like Firecrawl) may carry injection commands, so review tool outputs before performing write operations.

Summary

The rise of Remote MCP essentially represents the evolution of Agent toolchains from “local scripts + plaintext keys” to “cloud hosting + OAuth + Streamable HTTP”. GitHub manages code collaboration, Vercel manages deployments, Supabase manages data, Linear/Notion manage requirements and documentation, Stripe manages payments, and Figma manages designs — developers only need to input one URL each, and Agents can complete cross-platform operations directly within their IDE.

The stateless core introduced by the 2026-07-28 specification further allows Remote MCP to scale, route through gateways, and use CDNs just like ordinary HTTP APIs. If you are still writing stdio wrappers for every SaaS tool, try starting with official Remote endpoints from GitHub or Vercel: a single claude mcp add command plus browser OAuth will usually let your Agent start taking real actions within minutes, rather than just making suggestions.