MCP Startup Framework
Um framework para construir servidores MCP no Cloudflare Workers com OAuth, PostgreSQL e Stripe.
Documentação
MCP Startup Framework
Um framework completo para construir servidores remotos Model Context Protocol (MCP) no Cloudflare Workers com autenticação OAuth, banco de dados PostgreSQL e ferramentas pagas com tecnologia Stripe.
🚀 Recursos
- 🔐 Provedor OAuth 2.1 - Autenticação completa com registro/login de usuário
- 🗄️ Integração PostgreSQL - Banco de dados escalável pronto para produção com connection pooling
- 💳 Framework de Ferramentas Pagas - Ferramentas premium com tecnologia Stripe e suporte a assinaturas
- 🌐 Agnóstico de Plataforma - Otimizado para Cloudflare Workers, mas implantável em qualquer lugar (Vercel, Railway, AWS, self-hosted)
- 🛠️ Framework de Ferramentas MCP - Sistema modular de ferramentas com contexto de usuário
- 🔌 Rotas de API REST - Sistema fácil de usar para adicionar endpoints personalizados
- 🎨 Visualizações Personalizadas - Sistema de UI extensível para políticas de privacidade, Termos de Serviço, páginas de documentação
- 📡 Transporte HTTP Streamable - Funciona com
mcp-remotepara integração local com Claude Desktop - 📱 Multiplataforma - Funciona em clientes MCP de desktop, web e mobile
⚡ Início Rápido
Pré-requisitos
- Node.js 18+
- Conta Cloudflare
- Banco de dados PostgreSQL (veja configuração do banco de dados)
- Conta Stripe (para ferramentas pagas)
Instalação
# Clone the repository
git clone https://github.com/f/mcp-startup-framework
cd mcp-startup-framework
# Install dependencies
npm install
# Copy environment template
cp .dev.vars.example .dev.vars
Configuração
Edite .dev.vars com suas configurações:
DATABASE_URL="postgresql://username:password@host:port/database"
JWT_SECRET="your-super-secret-jwt-key"
COOKIE_ENCRYPTION_KEY="32-character-encryption-key"
STRIPE_SECRET_KEY="sk_test_your_stripe_key"
STRIPE_PRICE_ID_FOR_PREMIUM_MATH="price_your_stripe_price_id"
BASE_URL="https://your-domain.workers.dev"
Desenvolvimento
# Start development server
npm run dev
# Initialize database (in another terminal)
curl -X POST http://localhost:8787/init-db
# Visit http://localhost:8787 to register/login
🛠️ Adicionando Ferramentas e Rotas
Tudo começa a partir de src/index.ts:
// Register MCP tools
backend
.registerTool(registerAddTool)
.registerTool(registerGreetingTool)
.registerTool(registerPremiumMathTool);
// Add REST API routes
backend
.route('GET', '/api/status', (c) => c.json({ status: 'ok' }))
.authRoute('GET', '/api/profile', (c, userContext) =>
c.json({ user: userContext })
);
Consulte o Guia de Ferramentas e o Guia de Rotas para detalhes.
Visualizações Personalizadas
Vá além do MCP com páginas personalizadas:
// Add privacy policy, terms of service, documentation
backend
.route('GET', '/privacy', (c) => c.html(generatePrivacyPage()))
.route('GET', '/terms', (c) => c.html(generateTermsPage()))
.route('GET', '/docs', (c) => c.html(generateDocsPage()));
Consulte o Guia de Visualizações para criar páginas personalizadas.
🚀 Implantação
# Set production secrets
wrangler secret put JWT_SECRET
wrangler secret put COOKIE_ENCRYPTION_KEY
wrangler secret put STRIPE_SECRET_KEY
# Set custom price IDs per paid tool
wrangler secret put STRIPE_PRICE_ID_FOR_PREMIUM_MATH
# Deploy to Cloudflare
npm run deploy
Consulte o Guia de Implantação para instruções completas.
🔗 Opções de Integração
Usando claude.ai (Plano Pro)
Para usuários do claude.ai Pro, você pode integrar diretamente:
- Navegue até configurações do claude.ai
- Clique em "Adicionar Integração"
- Insira a URL do seu servidor:
https://your-domain.workers.dev/sse - Complete o fluxo OAuth
Usando Claude Desktop
Para o aplicativo local Claude Desktop:
1. Instale o Cliente Remoto MCP
npm install -g mcp-remote
2. Configure o Claude Desktop
Abra as configurações do Claude Desktop: Configurações > Desenvolvedor > Editar Config
Adicione ao seu claude_desktop_config.json:
{
"mcpServers": {
"my-startup": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://your-domain.workers.dev/mcp"
]
}
}
}
3. Reinicie o Claude Desktop
Após salvar, reinicie o Claude Desktop. Suas ferramentas MCP aparecerão na interface de chat.
Opções de Transporte
O framework suporta múltiplos protocolos de transporte:
- HTTP Streamable (padrão) - endpoint
/mcp - Server-Sent Events (SSE) - endpoint
/sse
Ambos funcionam perfeitamente com mcp-remote para desenvolvimento local e uso em produção.
🌐 Flexibilidade de Plataforma
Embora otimizado para Cloudflare Workers, este framework roda em qualquer lugar:
- Vercel: Implante com o runtime
@vercel/node - Railway: Implantação com um clique com PostgreSQL integrado
- AWS Lambda: Use com RDS ou Aurora Serverless
- Google Cloud Run: Implante com Cloud SQL
- Self-hosted: Execute com Docker em qualquer VPS
Basta atualizar sua conexão de banco de dados e configuração de implantação!
Banco de Dados de Produção
O framework funciona com qualquer provedor PostgreSQL:
- Neon - PostgreSQL serverless com autoescalonamento
- Supabase - PostgreSQL com recursos em tempo real
- Railway - PostgreSQL gerenciado com backups automáticos
- Amazon RDS - PostgreSQL de nível empresarial
- Cloudflare Hyperdrive - Connection pooling para desempenho ideal
Todos os provedores suportam a escalabilidade necessária para servidores MCP em produção.
📚 Documentação
- Guia de Configuração - Instalação e configuração detalhadas
- Configuração do Banco de Dados - Opções e otimização do PostgreSQL
- Guia de Desenvolvimento - Estrutura do projeto e fluxos de trabalho
- Adicionando Ferramentas - Crie ferramentas MCP gratuitas e pagas
- Rotas Personalizadas - Adicione endpoints de API REST
- Personalização de Visualizações - Personalize todas as páginas de UI (login, consentimento, pagamento, etc.)
- Implantação - Instruções de implantação em produção
🤝 Contribuindo
Contribuições são bem-vindas! Sinta-se à vontade para enviar um Pull Request.
📄 Licença
Licença MIT - consulte o arquivo LICENSE para detalhes.