DevReview MCP Server
by LucasViana1
README.md
# DevReview
Ferramenta de code review assistida por IA — projeto base do Curso 5: MCP, Conectando o Agent ao Mundo Real.
## Stack
- **Frontend:** React 18, TypeScript, Vite, TailwindCSS, shadcn/ui, Redux Toolkit
- **Backend (construído durante o curso):** Node.js, @modelcontextprotocol/sdk, Zod
- **Banco de dados:** Supabase (PostgreSQL)
## Pré-requisitos
- Node.js 20+
- npm 10+
- Um projeto na Supabase (o banco roda na nuvem, não localmente)
## Como rodar
```bash
# 1. Instalar dependências
npm install
# 2. Copiar variáveis de ambiente
cp apps/web/.env.example apps/web/.env
# 3. Preencher apps/web/.env com a URL do projeto e a publishable key
# (Supabase → Project Settings → API)
# 4. Iniciar o frontend
npm run dev
```
O app abre em `http://localhost:5173`.
O schema vive em `supabase/migrations/` e os dados de demonstração em `supabase/seed.sql` —
são a fonte da verdade, aplicados no projeto da nuvem pelas tools do MCP da Supabase.
## Configuração de MCP
`.mcp.json` na raiz configura os servidores MCP no escopo deste projeto, sem mexer no seu
config global. Ele é **gitignored**, porque é onde entram os segredos dos módulos seguintes:
```bash
cp .mcp.json.example .mcp.json # e troque <SEU_PROJECT_REF>
```
Três servidores ficam registrados:
| Servidor | Transporte | Autenticação |
| ----------- | ------------------------------------------- | ------------------ |
| `supabase` | HTTP — `mcp.supabase.com` | OAuth no navegador |
| `github` | HTTP — `api.githubcopilot.com/mcp/readonly` | OAuth no navegador |
| `devreview` | STDIO — `apps/mcp-server/build/index.js` | nenhuma (local) |
Nenhum token fica em disco. O do GitHub está na variante `/readonly`, que bloqueia as tools
de escrita; para liberar (abrir issue, comentar PR), remova o `/readonly` da url.
## Estrutura
```
devreview/
├── apps/
│ ├── web/ # Frontend React
│ └── mcp-server/ # MCP Server (construído durante o curso)
├── supabase/ # Configuração, migrations e seed data
└── docs/ # Documentação do curso (gitignored)
```
## Team id de exemplo
11111111-1111-1111-1111-111111111111
This server cannot be deployed
Maintenance
ActivityMaintained
ResponsivenessNo issues