---
title: "Deploy MCP Starter"
description: "Production-wired MCP server starter on FastAPI + SQLite."
category: "AI/ML"
url: https://railway.com/deploy/mcp-starter
---

# Deploy MCP Starter

Production-wired MCP server starter on FastAPI + SQLite.

**[Deploy MCP Starter on Railway](https://railway.com/template/mcp-starter)**

Machine-readable deploy manifest (JSON, validated by TemplateCI): https://railway.com/deploy/mcp-starter/manifest.json

- **Creator:** Adeel Ahmed's Projects
- **Category:** AI/ML

## Template content

### mcp-starter-railway

- **Source:** AdeelAhmedKhan/mcp-starter-railway
- **Start command:** `uvicorn app.main:app --host 0.0.0.0 --port $PORT`
- **Health check:** /api/health

## Documentation

# Deploy and Host MCP Starter on Railway

A production-wired MCP server starter: Python MCP SDK 2.3.0 (spec 2026-07-28) + FastAPI + SQLite, exposed over Streamable HTTP at /mcp. One-click deploy on Railway; nothing in here is a demo stub — the tools read and write a real SQLite database, the resources serve real data, and anything not configured tells you so instead of crashing.

## About Hosting MCP Starter

Hosting MCP Starter on Railway runs a single FastAPI service built directly from the GitHub repository. Railway starts it with `uvicorn app.main:app --host 0.0.0.0 --port $PORT` and checks `GET /api/health` before a deploy completes. On startup the app creates its SQLite notes database and seeds three demo notes, so the MCP tools, resources, and prompt work immediately. No extra service is needed: there is no Postgres, no pre-deploy command, and no separate worker. For persistent notes across redeploys, attach a volume at /app/data; otherwise the database lives in the container. Set MCP_ALLOWED_HOSTS and MCP_ALLOWED_ORIGINS to your exact public domain, optionally set MCP_AUTH_TOKEN for bearer auth, then generate a public domain to reach the API and the MCP endpoint.

## Common Use Cases

- Give AI agents and MCP clients a real, persistent notes backend over Streamable HTTP
- Prototype and test MCP tools, resources, and prompts against a live FastAPI service
- Learn MCP server patterns from a production-wired Python starter instead of a demo stub

## Dependencies for MCP Starter Hosting

- Python
- FastAPI
- MCP Python SDK 2.3.0
- Uvicorn
- SQLite (built-in, no separate database service)

### Implementation Details

The service starts with `uvicorn app.main:app --host 0.0.0.0 --port $PORT` and exposes `GET /api/health` plus the MCP endpoint at `/mcp`. Tools include add_numbers, echo, create_note, list_notes, and search_notes; resources include notes://all and notes://{id}; the prompt is summarize-notes.

## Why Deploy MCP Starter on Railway?


Railway is a singular platform to deploy your infrastructure stack. Railway will host your infrastructure so you don't have to deal with configuration, while allowing you to vertically and horizontally scale it.

By deploying MCP Starter on Railway, you are one step closer to supporting a complete full-stack application with minimal burden. Host your servers, databases, AI agents, and more on Railway.


## Similar templates

- [Chat Chat](https://railway.com/deploy/-WWW5r) — Chat Chat, your own unified chat and search to AI platform.
- [Möbius v0.1 Personal AI OS](https://railway.com/deploy/mobius-v01-personal-ai-os) — Self-hosted AI agent that builds and runs apps for you, with memory.
- [stella](https://railway.com/deploy/stella) — Self-host stella with web, API, Postgres, Redis, and object storage.

Open this page in a browser: https://railway.com/deploy/mcp-starter
