---
title: "Deploy Code Reviewer (Mira + MCP)"
description: "Always-on AI GitHub PR reviewer with dashboard, MCP, and your own LLM keys."
category: "AI/ML"
url: https://railway.com/deploy/code-reviewer-mira-mcp
---

# Deploy Code Reviewer (Mira + MCP)

Always-on AI GitHub PR reviewer with dashboard, MCP, and your own LLM keys.

**[Deploy Code Reviewer (Mira + MCP) on Railway](https://railway.com/template/code-reviewer-mira-mcp)**

- **Creator:** Daniel Olabemiwo's Projects
- **Category:** AI/ML

## Template content

### mira https://devicons.railway.com/i/coder-light.png

- **Source:** https://github.com/D-Lite/mira-mcp
- **Health check:** /health
- **Public domain:** Yes

### Postgres https://devicons.railway.app/i/postgresql.svg

- **Image:** ghcr.io/railwayapp-templates/postgres-ssl:18

## Documentation

# 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 review` when 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`, or `review_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/data` and `DATABASE_URL` pointed 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](https://github.com/miracodeai/mira)
- GitHub App creation: [github.com/settings/apps/new](https://github.com/settings/apps/new)
- Railway Postgres image: [ghcr.io/railwayapp-templates/postgres](https://github.com/railwayapp-templates/postgres)


## Similar templates

- [Chat Chat](https://railway.com/deploy/-WWW5r) — Chat Chat, your own unified chat and search to AI platform.
- [stella](https://railway.com/deploy/stella) — Self-host stella with web, API, Postgres, Redis, and object storage.
- [Hermes Agent | OpenClaw Alternative with Dashboard](https://railway.com/deploy/hermes-agent-or-openclaw-alternative-wit) — Self-Hosted Hermes AI Agent for Telegram, Discord & Slack

Open this page in a browser: https://railway.com/deploy/code-reviewer-mira-mcp
