Last updated October 19, 2026. Plans, prices, limits, and MCP features were checked against each vendor’s public documentation and pricing pages on that date. Enterprise quotes can differ.
The best MCP hosting platforms in 2026 split into four models: edge functions, containers in your own cloud, managed MCP hosts, and always-on app platforms. The model you pick decides who handles OAuth, how long a tool call can run, and what an idle server costs. This guide compares eight options with prices checked October 19, 2026.
An MCP hosting platform is a service that runs a remote Model Context Protocol (MCP) server at a public HTTPS endpoint so agents and clients such as Claude, ChatGPT, and Cursor can call its tools over Streamable HTTP. The list covers Cloudflare Workers, Vercel, Amazon Bedrock AgentCore Runtime, Google Cloud Run, Azure Functions, FastMCP Gateway, Alpic, and Render.
New to the protocol? Start with our MCP explained guide, then come back to pick a host. If you need a control layer in front of many servers, see MCP gateways. No vendor paid for placement, per our editorial standards and disclosure policy.
TL;DR
- Best for global stateless servers: Cloudflare Workers. Workers Paid starts at $5 per month with 10 million requests included, and there is no duration charge.
- Best for Next.js teams: Vercel. The mcp-handler package adds an MCP route to an App Router app, and Pro functions run up to 800 seconds.
- Best for AWS enterprises: Amazon Bedrock AgentCore Runtime. Each session runs in an isolated microVM with JWT inbound auth and per-second billing.
- Best container option for any language: Google Cloud Run. It accepts any container, uses IAM or Identity-Aware Proxy (IAP) for auth, and allows timeouts up to 60 minutes.
- Best for Microsoft shops: Azure Functions, with built-in Entra ID auth. SDK-based servers on Flex Consumption are still in public preview.
- Best managed MCP hosts: FastMCP Gateway for Python FastMCP servers (free for personal servers) and Alpic for MCP apps (Pro $50 per month). Best always-on option: Render, from $7 per month per instance.
How We Picked These MCP Hosting Platforms
We picked platforms that publish first-party documentation for running a remote MCP server over Streamable HTTP, then scored each on the jobs that decide whether a server survives production. Every price and limit below comes from a public vendor page checked October 19, 2026, and no vendor reviewed this article before publication.
- MCP support: Is there an official guide, SDK helper, or template for remote MCP, and does it track the 2026-07-28 specification?
- Auth: Does the platform issue or verify OAuth tokens for MCP clients, or do you build that layer yourself?
- Long calls and state: How long can one request run, and where does session or application state live?
- Languages and packaging: TypeScript only, Python only, or any container?
- Cost shape: Free tier, the paid meter, and what an idle server costs.
We did not rank prebuilt servers or tool catalogs here. For those, see our MCP servers for enterprise teams roundup and the AI agent integration platforms guide.

Why the 2026-07-28 MCP Spec Changes Hosting
The 2026-07-28 MCP specification removed protocol sessions, so any request can land on any server instance behind a plain load balancer. That makes stateless serverless hosting a natural default and turns sticky sessions into an application choice. Check that your platform and SDK support the new version before you migrate clients.

Per the specification changelog, the release retires the initialize handshake and the Mcp-Session-Id header, and every request carries its protocol version and client capabilities in _meta. The release announcement adds Mcp-Method and Mcp-Name headers so gateways can route on headers, and it shifts authorization away from Dynamic Client Registration (DCR) toward client metadata documents.
Servers that need cross-call state now pass explicit, server-issued handles as tool arguments. That favors hosts with a cheap external store, such as Durable Objects on Cloudflare or a managed database next to Cloud Run. Platforms that relied on sticky sessions to keep MCP clients on one instance no longer need that routing.
MCP Hosting Platforms Compared
Decision kernel: Choose Cloudflare or Vercel when tools are short, stateless calls and you already deploy there. Choose AgentCore, Cloud Run, or Azure Functions when the server must sit inside your cloud identity and network. Choose FastMCP Gateway or Alpic when you want OAuth and MCP analytics handled for you. Choose Render when the server is a long-lived process.
| Platform | Hosting model | Languages | Auth for MCP clients | Free tier (Oct 19, 2026) | First paid step |
|---|---|---|---|---|---|
| Cloudflare Workers | Edge functions | JavaScript, TypeScript | OAuth provider library or Cloudflare Access | 100,000 requests/day | $5/mo, 10M requests included |
| Vercel | Fluid compute functions | Node.js, Bun, Python | Token verification helpers; bring an auth server | Hobby $0 | Pro $20/mo with $20 usage credit |
| AgentCore Runtime | Serverless microVMs | Any container (Python guide) | Inbound JWT authorizer (Cognito, Auth0) | Up to $200 AWS credits for new customers | $0.1276 per vCPU-hour (v2) |
| Google Cloud Run | Serverless containers | Any container or source | IAM invoker by default; IAP | 2M requests, 180K vCPU-seconds/mo | Per use, 100 ms rounding |
| Azure Functions | Flex Consumption functions | Python, TypeScript, C#, Java SDKs | Built-in auth with Entra ID | 250K executions, 100K GB-s/mo | Per use (preview for SDK servers) |
| FastMCP Gateway | Managed MCP host | Python (FastMCP or MCP SDK) | OAuth 2.1 with DCR built in | Free for personal servers | Developer and Enterprise; pricing in Billing |
| Alpic | Managed MCP host | Git-deployed MCP servers and apps | OAuth DCR proxy on Pro | 10,000 requests/mo | Pro $50/mo, 200K requests |
| Render | Always-on web services | Node, Python, Go, Rust, Ruby, Elixir, Docker | None built in; you add it | Free instances spin down when idle | $7/mo instance; Pro workspace $25/mo |
Verdict: Pick the hosting model before the vendor. Cloudflare is the cheapest path for a public, stateless TypeScript server, while Cloud Run and AgentCore win when security review asks where the server runs and who can call it. Managed MCP hosts cost more per request, and the premium pays for OAuth, previews, and tool-level analytics you would otherwise build.
1. Cloudflare Workers: Best for Global Stateless Servers
Cloudflare Workers is the default pick for a public remote MCP server that answers short tool calls from anywhere. Its remote MCP server guide deploys a Streamable HTTP server to a workers.dev URL from the dashboard or the Wrangler CLI, with a Git repository that redeploys on every push.

New servers use createMcpHandler() on the stateless path, and Cloudflare’s transport docs mark McpAgent as deprecated and feature-frozen. Auth comes from the workers-oauth-provider library with GitHub, Google, Auth0, or WorkOS, or from Cloudflare Access in front of your identity provider.
Per Workers pricing, Free allows 100,000 requests per day and 10 milliseconds of CPU per invocation. Workers Paid costs at least $5 per month with 10 million requests and 30 million CPU milliseconds included, then $0.30 per extra million requests. Duration is not billed, so time spent waiting on an upstream API costs nothing.
Limitation: the quick-deploy templates still use the deprecated McpAgent path, and CPU time caps at five minutes per invocation. Best for: TypeScript teams shipping a public server to many users.
2. Vercel: Best for Teams Already Deploying on Vercel
Vercel fits when the MCP server belongs inside a web app you already deploy on Vercel. Its MCP deployment docs add an /api/mcp route to a Next.js App Router project with mcp-handler v2, the MCP server SDK v2, and Zod v4.

The withMcpAuth wrapper verifies bearer tokens and publishes OAuth protected resource metadata, and it returns 401 or 403 when a token or scope is missing. It does not issue tokens, so you still bring an authorization server. Preview deployments, Instant Rollback, Rolling Releases, and the Vercel Firewall apply to MCP routes like any other function.
Per the function limits, Hobby functions run up to 300 seconds and Pro up to 800 seconds, with 1,800 seconds in beta. Payloads cap at 4.5 MB. Vercel pricing lists Pro at $20 per month with $20 of usage credit, 4 hours of Active CPU, and 1 million invocations included.
Limitation: functions run in one region by default, and session state needs an external store. Best for: product teams exposing app data as tools next to the app itself.
3. Amazon Bedrock AgentCore Runtime: Best for AWS Enterprises
AgentCore Runtime is the strongest fit when security teams want each agent session isolated and every caller authenticated against an existing identity provider. Its MCP deployment guide expects a container that serves /mcp on port 8000, which most official MCP SDKs do by default.

AgentCore supports stateless and stateful Streamable HTTP servers. Stateless mode is the recommended default, and stateful mode keeps elicitation, sampling, and progress notifications working within one invocation. The CLI scaffolds a CUSTOM_JWT authorizer pointed at a discovery URL, and unauthenticated calls get a 401 that advertises protected resource metadata.
Per AgentCore pricing, Runtime v2 microVMs bill per second at $0.1276 per vCPU-hour and $0.0169 per GB-hour on consumption. CPU drops to zero during I/O wait, and idle memory is reclaimed after 120 seconds. An Instances option runs sessions up to 14 days on EC2 plus a management fee.
Limitation: invocation URLs embed an encoded runtime ARN, and setup assumes AWS CLI, IAM, and Cognito fluency. Best for: AWS-first platform teams; compare gateway options in our Kong vs AWS AgentCore vs Docker breakdown.
If Cloudflare Workers, Vercel, and AgentCore Runtime are already your shortlist, our Cloudflare vs Vercel vs AgentCore comparison goes deeper on authentication, stateless versus stateful sessions, long tool calls, and cost at 1 million and 10 million calls.
4. Google Cloud Run: Best Container Option for Any Language
Cloud Run is the most flexible pick when the server is a container in any language and the callers already have Google Cloud identities. Google’s MCP hosting guide deploys a Streamable HTTP server from an image or from source with one gcloud run deploy command.

Services require the Cloud Run Invoker IAM role by default, and the local gcloud run services proxy command injects your identity for desktop clients. For wider access, the guide turns on IAP with a dedicated MCP server functional type. Sidecar deployment lets an agent and its MCP server share one instance with no extra auth.
Request timeouts default to five minutes and extend to 60, per the timeout docs. Cloud Run pricing gives request-based services 180,000 vCPU-seconds, 360,000 GiB-seconds, and 2 million requests free each month, with billing rounded up to 100 milliseconds.
Limitation: stdio servers are not supported, and you package and patch the container yourself. Best for: polyglot teams on Google Cloud that want IAM-native access control.
5. Azure Functions: Best for Microsoft Entra Shops
Azure Functions is the shortest path for teams whose callers and policies already live in Microsoft Entra ID. Microsoft’s self-hosted MCP docs describe two routes: build with the Functions MCP extension, or deploy an existing MCP SDK server unchanged as a custom handler.

The SDK route needs a host.json with the mcp-custom-handler profile and supports Python, TypeScript, C#, and Java servers. Built-in App Service authentication issues the 401 challenge and serves the protected resource metadata the MCP authorization spec expects. Servers can be registered in Azure API Center as a private tool catalog.
Limitation: SDK hosting is in public preview, supports stateless servers only, and requires the Flex Consumption plan, whose pricing page includes 250,000 executions and 100,000 GB-s free each month. Best for: Microsoft Foundry and Entra teams.
6. FastMCP Gateway: Best Managed Host for Python FastMCP Servers
FastMCP Gateway is the fastest route from a Python FastMCP repository to a governed production endpoint. Built by the FastMCP team at Prefect and formerly called Horizon, its deploy page containerizes each push to main, assigns a stable URL, and configures OAuth 2.1 with dynamic client registration.

Pull requests get preview deployments, rollbacks promote any earlier build, and every tool call is traced with latency and calling client. The plans page lists Personal, Developer, and Enterprise tiers. Service accounts and external servers start on Developer, while custom roles, tool-level access, and SSO are Enterprise features.
Hosting is free for personal servers, and production usage is billed for compute, but dollar prices sit in the Billing area rather than on a public page. The limits page says each request runs as a synchronous AWS Lambda invocation with a payload ceiling and no streaming.
Limitation: large files must move through external storage, and price comparison needs a sales or billing check. Best for: Python teams that want governance without running infrastructure.
7. Alpic: Best for MCP Apps in ChatGPT and Claude
Alpic suits teams shipping an MCP server or ChatGPT app to end users who need MCP-native analytics and a playground before launch. Per its plans page, every plan includes Git-native CI/CD, MCP-native observability, and playground distribution, so a server can be tested against simulated assistants before real users connect.

Free costs nothing for one user, one project, and 10,000 requests a month, and requests stop at the cap. Pro costs $50 per month for three users, two projects, and 200,000 requests, then $150 per additional million. Pro adds custom domains, the OAuth DCR proxy, insights, and session replay.
Enterprise adds bring-your-own-cloud, OIDC, SAML, SCIM, static IPs, IP filtering, and OpenTelemetry export. Limitation: per-request pricing gets expensive for chatty internal agents. Best for: product teams distributing an app inside AI assistants.
8. Render: Best Always-On Platform for Long-Lived Servers
Render is the simplest home for an MCP server that is really a long-running process, such as a wrapper around a CLI or a service that holds connections open. It runs native Node, Python, Go, Rust, Ruby, and Elixir services or any Docker image, with TLS, logs, and restarts handled.

Per Render pricing, workspaces start on Hobby at $0 plus compute, Pro at $25 per month, and Scale at $499. Web service instances start at $7 per month for 512 MB and $25 for 2 GB. The free tier docs note that free web services spin down after 15 minutes without traffic and take about a minute to wake.
Limitation: there is no MCP-specific auth or analytics, so OAuth is your code. Best for: servers that do not fit function time limits and need a predictable monthly bill.
Long Calls, State, and Deploy Commands
Long-running tools and session state are where hosting choices fail in production. Edge functions favor short calls, container platforms allow up to an hour, and always-on services have no request ceiling of their own. Use the table to match your slowest tool and your state model to a platform before you write deployment code.
| Platform | Longest request | Where state lives | MCP note |
|---|---|---|---|
| Cloudflare Workers | No wall-time limit; CPU up to 5 min | Durable Objects, KV, or D1 | Stateless createMcpHandler for new servers |
| Vercel | 300s Hobby, 800s Pro, 1,800s beta | External database or cache | mcp-handler v2 on MCP server SDK v2 |
| AgentCore Runtime | Session-scoped microVM; Instances up to 14 days | Runtime session or external store | Stateless and stateful modes |
| Google Cloud Run | 5 min default, 60 min max | External store; memory is per instance | Streamable HTTP only, no stdio |
| Azure Functions | Flex Consumption limits | MCP extension for stateful servers | SDK hosting stateless only (preview) |
| FastMCP Gateway | Gateway request timeout, no streaming | Durable storage outside the runtime | Supports MCP background tasks |
| Alpic | Not stated on plans page | Not stated on plans page | Session replay on Pro |
| Render | Process stays up on paid instances | Process memory or attached disk | Free instances spin down after 15 min |
Verdict: If any tool can run longer than five minutes, return a job ID and poll, or host on Cloud Run, AgentCore, or Render. The commands below are the documented first deploy for three of the platforms, which shows how little glue each needs once the server code exists.
# Cloudflare Workers (Wrangler)
npx wrangler@latest deploy
# Google Cloud Run (from source in the server repo)
gcloud run deploy --source .
# Amazon Bedrock AgentCore Runtime (AgentCore CLI)
agentcore deploy
What Hosting 1 Million Tool Calls a Month Costs
Hosting a million short MCP tool calls a month costs from zero on generous free tiers to a few hundred dollars on request-metered managed hosts, before databases and egress. The sketch uses public list prices and assumes short calls with little CPU, so treat it as a ranking of cost shapes.
| Platform | Meter that matters | Rough monthly list cost for 1M short calls |
|---|---|---|
| Cloudflare Workers | Requests and CPU ms | $5 minimum (1M fits inside 10M included requests) |
| Vercel | Active CPU, memory, invocations | $20 Pro base (1M invocations included) |
| Google Cloud Run | vCPU-seconds, GiB-seconds, requests | Often $0 inside the free tier for short calls |
| Azure Functions | Executions and GB-s | Free grant covers 250K executions; the rest is per use |
| AgentCore Runtime | vCPU-hours and GB-hours per session | Depends on session length; model it per session |
| Alpic | Requests | $50 Pro + 800K x $150 per million = $170 |
| Render | Instance hours | $7 per always-on Starter instance |
Verdict: the hosting bill is rarely the largest line, because the model tokens behind each tool call usually cost more. Choose on auth, network placement, and request ceilings first, then check the meter. Managed MCP hosts make sense when their built-in OAuth and analytics replace engineering time you would otherwise spend.
Which MCP Hosting Platform Should You Choose?
The right host follows who calls your server and where its data lives. Start with the persona that matches your team, set up the first item, and move to a second platform only when a requirement such as private networking or tool-level access appears. Each persona lists a starting platform and the first configuration step.
Developers shipping a public server to many users
- Start on Cloudflare Workers with
createMcpHandlerand the OAuth provider library. - Store per-user data in Durable Objects or D1 behind explicit handles.
- List the server where users can find it, and review real-world server patterns in our MCP servers roundup.
Platform teams exposing internal systems to agents
- Host on AgentCore Runtime, Cloud Run, or Azure Functions in the cloud that already holds the data.
- Wire inbound auth to the identity provider you use today, such as Cognito, IAM, or Entra ID.
- Put a gateway in front once you run more than a handful of servers; compare options in MCP gateways and our Red Hat MCP Gateway coverage.
Python teams that want hosting and governance in one place
- Connect the repository to FastMCP Gateway and ship a personal server first.
- Move to Developer for service accounts and external servers.
- Plan for Enterprise when you need tool-level access and SSO.
Product teams building apps inside ChatGPT or Claude
- Use Alpic for the playground, session replay, and the OAuth DCR proxy.
- Track requests per user so Pro overage stays predictable.
- If users need hundreds of SaaS tools behind one endpoint, compare Composio vs Arcade vs Nango before you build connectors.
How to Secure a Remote MCP Server You Host
Securing a hosted MCP server starts with authentication at the platform edge, then scoped tokens and audit logs inside the server. Every platform above can put an identity check in front of the endpoint, but none of them can fix a tool that runs unsafe input. Treat each tool as an API with its own permission model.
- Authenticate every call: use Cloudflare Access, Cloud Run IAM or IAP, AgentCore JWT authorizers, or Entra ID instead of a shared static key.
- Scope tokens per tool: Vercel’s
withMcpAuthreturns 403 when a required scope is missing, and the same pattern works on any host. - Log tool calls: FastMCP Gateway and Alpic trace calls by client, and container hosts need OpenTelemetry or platform logs wired in.
- Test tools before exposure: fuzzing work such as the ToFu study of 118 MCP servers found 253 bugs in public servers.
Frequently Asked Questions
What is the best platform to host a remote MCP server in 2026?
No single host wins every case. Cloudflare Workers leads for public, stateless TypeScript servers, Vercel for Next.js apps, AgentCore Runtime and Cloud Run for servers inside your own cloud, FastMCP Gateway for Python FastMCP teams, Alpic for MCP apps, and Render for long-running processes. Choose by hosting model first.
Can I host an MCP server for free?
Yes, for light use. Cloudflare Workers Free allows 100,000 requests a day, Vercel Hobby costs $0, Cloud Run includes 2 million free requests a month, FastMCP Gateway hosts personal servers free, and Alpic Free covers 10,000 requests a month. Free Render web services spin down after 15 minutes without traffic.
Do MCP servers still need sticky sessions?
Not under the 2026-07-28 specification. It removed the initialize handshake and the Mcp-Session-Id header, so any request can reach any instance. Servers that need cross-call state pass explicit, server-issued handles as tool arguments and keep the data in an external store such as Durable Objects or a database.
How do I add OAuth to a hosted MCP server?
Use the platform’s auth layer where one exists. Cloudflare offers an OAuth provider library and Access, AgentCore uses JWT authorizers, Cloud Run uses IAM or IAP, Azure Functions uses Entra ID, and FastMCP Gateway configures OAuth 2.1 for you. On Vercel and Render you verify tokens from your own authorization server.
Can I run a stdio MCP server remotely?
Not directly on most hosts. Cloud Run states it supports Streamable HTTP but not stdio, and remote clients expect an HTTPS endpoint. Wrap the stdio server in an HTTP transport with an MCP SDK, or run it as a long-lived process on a platform such as Render, then add authentication before exposing it.
Related Guides
Hosting answers where a server runs, and a registry answers how teams find it. Our enterprise MCP registries guide compares eight registries and catalogs for publishing remote MCP servers internally.
Read MCP explained, MCP gateways, MCP servers for enterprise teams, Kong vs AWS AgentCore vs Docker, AI agent integration platforms, Composio vs Arcade vs Nango, Red Hat MCP Gateway GA, the ToFu MCP bug study, the agent protocols hub, and the MCP topic page. Notes on how we work sit on editorial standards, disclosure, and contact.
The Bottom Line
Pick the hosting model first, then the vendor inside it. Edge functions suit short public tools, your own cloud suits internal data, managed MCP hosts trade a per-request fee for built-in OAuth and analytics, and always-on platforms suit long-running processes.
Deploy one real server on your shortlisted host, connect it from two different MCP clients, and time your slowest tool before you commit. Send questions or platform suggestions through our contact page.

