Not open for customers yet. Nothing can be deployed or bought on this site. Read the current status.

Host an MCP server.

Where can I host an MCP server?

A remote MCP server is a web service that speaks the Model Context Protocol over Streamable HTTP at a public HTTPS URL, so any host that keeps a process running behind HTTPS can run one: a virtual server you manage, a platform-as-a-service, an edge or serverless runtime, or hosting your agent buys for itself. Euphoric is the last kind: an agent deploys the server's container image by API, under a spending ceiling, on servers in EU data centres. Euphoric is not open yet; MCP server hosting is part of its launch scope.

What a hosted MCP server needs

The options compared

OptionGood forYou take on
Virtual server you manageFull control, lowest raw priceOperating system updates, TLS, process supervision, firewalls
Platform-as-a-service (Render, Railway, Fly.io and similar)Deploying from a repository or image with HTTPS includedAn account and card per platform; a person usually sets it up
Edge or serverless runtime (Cloudflare Workers and similar)Servers written for that runtime, global reachRuntime-specific code and request time limits
Agent-provisioned hosting (Euphoric, planned)An agent deploying and paying for its own MCP server in the EUPackaging the server as a digest-pinned container image

How an agent will deploy an MCP server on Euphoric

The agent generates its own credential, adds prepaid credit and creates an application from the server's image with a lifetime spending ceiling. It polls the returned operation until it succeeds, then reads the application's HTTPS URL and gives the MCP endpoint on that URL to its client. These requests are the implemented contract; they work against a development deployment of Euphoric with simulated servers, and every /v1 route on euphoric-host.eu currently returns HTTP 404 foundation_closed.

export EUPHORIC_URL=http://localhost:3000   # a development deployment
export EUPHORIC_TOKEN="eph_$(openssl rand -hex 32)"

curl -sS "$EUPHORIC_URL/v1/bootstrap" \
  -H "Authorization: Bearer $EUPHORIC_TOKEN" \
  -H 'Idempotency-Key: bootstrap-1' -H 'Content-Type: application/json' \
  -d '{"contact":"agent@example.test"}'

curl -sS "$EUPHORIC_URL/v1/sandbox/funding" \
  -H "Authorization: Bearer $EUPHORIC_TOKEN" \
  -H 'Idempotency-Key: fund-1' -H 'Content-Type: application/json' \
  -d '{"amount_minor":1000}'

# Replace the image with your MCP server, pinned by digest.
response=$(curl -sS "$EUPHORIC_URL/v1/applications" \
  -H "Authorization: Bearer $EUPHORIC_TOKEN" \
  -H 'Idempotency-Key: mcp-app-1' -H 'Content-Type: application/json' \
  -d '{"name":"weather-mcp","image":"registry.example/euphoric/hello@sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","plan_id":"test-runtime-v1","spend_limit_micro":10000000}')
APP_ID=$(echo "$response" | jq -r .application_id)
STATUS_URL=$(echo "$response" | jq -r .status_url)
curl -sS "$EUPHORIC_URL$STATUS_URL" -H "Authorization: Bearer $EUPHORIC_TOKEN"

# Repeat that read until state is succeeded, failed or cancelled, then read the URL.
curl -sS "$EUPHORIC_URL/v1/applications/$APP_ID" \
  -H "Authorization: Bearer $EUPHORIC_TOKEN"

Development deployments return url: null because nothing really runs. In private tests on real servers, the application received an address of the form https://<name>.euphoric-app.eu, which is where the MCP client would connect. The full walkthrough, errors and recovery rules are in the API documentation.

What works today, and what launch adds

CapabilityStatus
Deploy a digest-pinned container image to its own virtual machine, with an HTTPS addressVerified privately known test images
Prepaid billing per second under a lifetime spending ceiling; container logs; release replacementVerified privately with test credit
Environment variables and secrets for upstream API keys and OAuth credentialsLaunch scope
Streamable HTTP and long-lived event streams verified end to end with real MCP clientsLaunch scope
A published container contract: port, health check, user, filesystem and limitsLaunch scope
Public hosting that any agent can buy, with real paymentsPlanned
Custom domains, builds from source, databasesPlanned

Packaging an MCP server for Euphoric

Build the server as a container image that serves HTTP and push it to a registry. Deploy it by digest, not by tag: repository@sha256: followed by 64 hexadecimal characters. In the private tests, containers served HTTP on port 8080 as an unprivileged user with a read-only root filesystem, so a server that keeps its state outside the container and writes nothing to disk is the safest shape. The exact port, health check and limits become a published contract at launch.

Questions

Can an AI agent deploy its own MCP server here?

That is the design: no signup form, a credential the agent generates itself, prepaid credit and a spending ceiling its owner can rely on. It becomes possible when Euphoric opens.

Where do the servers run?

In EU data centres. Each application will get its own virtual machine rather than sharing a container host, as in the private tests.

What will it cost?

Planned launch pricing starts at €0.0432 an hour (€31.54 for a full month), excluding VAT, billed per second from prepaid credit. It is not purchasable yet; see pricing.

Is Euphoric itself an MCP server?

Not yet. An MCP server for managing Euphoric is planned separately. This page is about hosting yours.

Read the API, see how it works or read /llms.txt.