Deploy Code Reviewer (Mira + MCP)
Always-on AI GitHub PR reviewer with dashboard, MCP, and your own LLM keys.
mira
Just deployed
Just deployed
/var/lib/postgresql/data
Deploy and Host Code Reviewer (Mira + MCP) on Railway
Code Reviewer is a community Mira fork that runs as an always-on pull request reviewer. After a GitHub App webhook hits your public URL, it inspects the diff, writes review comments, and can take @your-app review mentions. A web dashboard shows installs and settings. The same service exposes Streamable HTTP MCP at POST /mcp, so Cursor, VS Code, Claude, and Windsurf can list repos and request a review without leaving the editor. You supply one LLM vendor key and your own GitHub App. It is not an official CodeRabbit product.
About Hosting Code Reviewer (Mira + MCP)
The template starts two services on a private network: Mira, built from the GitHub Dockerfile, and PostgreSQL with a persistent volume. Mira reads DATABASE_URL from the Postgres private URL. Health checks probe /health before Railway routes traffic.
After the first deploy, generate a public domain on Mira. Create a GitHub App, set the webhook to https:///github/webhook, and paste the App ID, full PEM private key, webhook secret, and App slug (MIRA_BOT_NAME). Pick a vendor with MIRA_LLM (anthropic, openai, google, deepseek, or openrouter) and fill only that vendor’s API key. ADMIN_PASSWORD, MCP_API_KEY, and MIRA_WEBHOOK_SECRET are generated with ${{secret()}}. Install the App on the repositories you want reviewed, sign in to the dashboard as admin, then copy the MCP snippet from Settings → MCP into your IDE. Leave the replica running so GitHub webhooks are not dropped on a cold start.
Common Use Cases
- Automatic GitHub pull request review: opening or pushing to a PR posts inline comments and a summary without a human starting a job.
- On-demand mention review: comment
@your-app reviewwhen you want a second pass after a large push or a rebase. - IDE-triggered review over MCP: from Cursor or another Streamable HTTP client, call
health,list_repos,get_review_status, orreview_pull_request. - Review context from other MCP servers: attach Linear, Notion, or an internal docs server so the model can look up the linked ticket while it reads the diff.
- Shared team dashboard: one Railway project holds history, settings, and the webhook endpoint for every repo the GitHub App is installed on.
Dependencies for Code Reviewer (Mira + MCP) Hosting
- PostgreSQL in the same Railway project, with a volume at
/var/lib/postgresql/dataandDATABASE_URLpointed at the private hostname - A GitHub App you create (App ID, PEM private key, webhook secret, and slug). Mira can also use GitLab or Forgejo if you configure those instead
- One LLM API key matching
MIRA_LLM: Anthropic, OpenAI, Google Gemini, DeepSeek, or OpenRouter - An MCP client if you want IDE access: Cursor, VS Code, Claude Desktop/Code, or Windsurf, using bearer
MCP_API_KEY
Why Deploy Code Reviewer (Mira + MCP) 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 Code Reviewer (Mira + MCP) 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.
Deployment Dependencies
- Upstream Mira: miracodeai/mira
- GitHub App creation: github.com/settings/apps/new
- Railway Postgres image: ghcr.io/railwayapp-templates/postgres
Template Content
mira
D-Lite/mira-mcpMIRA_LLM
LLM vendor: anthropic, openai, google, deepseek, or openrouter. Leave empty to default to OpenRouter. Fill only the matching API key below.
MIRA_MODEL
Optional model id, e.g. anthropic/claude-sonnet-4-6. Leave empty for the vendor default.
