Skip to main content
Glama

Cloudflare Remote PostgreSQL Database MCP Server

claude-code-prp-setup.md•8.26 kB
# Claude Code PRP Setup Documentation This document explains the comprehensive Product Requirement Prompt (PRP) system setup for MCP (Model Context Protocol) servers that was implemented across three Claude Code sessions. ## Overview We created a specialized PRP system tailored for building production-ready MCP servers with GitHub OAuth authentication, PostgreSQL database integration, and Cloudflare Workers deployment. This system enables developers to go from concept to deployed MCP server through a single, well-structured PRP execution. ## Session 1: Initial PRP Template Creation ### What Was Created - **File**: `PRPs/templates/prp_mcp_server.md` (534 lines) - **Purpose**: A comprehensive PRP template for building production-ready MCP servers ### Key Features 1. **Production-Ready Patterns**: Based on the existing remote-mcp-server-with-auth codebase 2. **Authentication Integration**: GitHub OAuth flow patterns with cookie-based approval 3. **Database Integration**: PostgreSQL connection management with security best practices 4. **Validation Loops**: 6-level validation from syntax checking to production deployment 5. **Tool Development Patterns**: Three patterns (simple, authenticated, database-integrated) ### Template Structure ``` - Context Section: Critical documentation links and common gotchas - Implementation Blueprint: Step-by-step tasks with code patterns - Validation Loops: Comprehensive testing at every level - Tool Patterns: Reusable patterns for MCP tool development - Integration Points: Cloudflare Workers, OAuth, database connections ``` ## Session 2: CLAUDE.md Adaptation ### The Challenge The original CLAUDE.md file was written for a Python-based MCP builder project using UV package management, but the actual codebase is Node.js/TypeScript using Cloudflare Workers. ### What Was Updated - **File**: `CLAUDE.md` (completely rewritten, 932 lines) - **Removed**: All Python/UV references and vertical slice architecture - **Added**: Node.js/npm/TypeScript patterns and Wrangler CLI documentation ### Key Additions 1. **Wrangler CLI Commands**: Complete reference with real examples - Development: `wrangler dev`, `wrangler dev --config` - Deployment: `wrangler deploy`, `wrangler deploy --dry-run` - Secrets: `wrangler secret put/list/delete` - KV Storage: `wrangler kv namespace create/list` - Monitoring: `wrangler tail`, `wrangler types` 2. **Project Architecture Documentation**: - File structure with TypeScript sources - Three MCP server patterns (standard, Sentry-enabled, simple math) - Authentication flow architecture - Database security implementation 3. **Development Standards**: - TypeScript with Zod validation - Error handling patterns - MCP-compatible response formats - Sentry monitoring integration (optional) ## Session 3: Complete PRP System Implementation ### What Was Created #### 1. Core PRP Commands - **`.claude/commands/prp-mcp-create.md`** (118 lines) - Creates comprehensive MCP server PRPs - Deep research methodology - Integration with TodoWrite tool - **`.claude/commands/prp-mcp-execute.md`** (261 lines) - Executes MCP server PRPs with validation - Multi-stage deployment process - Production deployment verification #### 2. AI Documentation Library - **`PRPs/ai_docs/mcp_patterns.md`** (491 lines) - Core MCP development patterns - Security best practices - Tool/resource/prompt patterns - **`PRPs/ai_docs/cloudflare_workers_setup.md`** (539 lines) - Complete deployment guide - Environment configuration - Troubleshooting common issues - **`PRPs/ai_docs/oauth_integration.md`** (701 lines) - GitHub OAuth 2.0 flow - Cookie security implementation - Permission management patterns #### 3. MCP-Specific PRP Template - **`PRPs/templates/prp_mcp_base.md`** (574 lines) - Specialized template for MCP servers - References all ai_docs - Comprehensive validation loops - Production-ready patterns ### Validation Results - 2,700+ lines of documentation created - All cross-references validated - Integration with existing codebase patterns confirmed - Commands follow established PRP conventions ## How the System Works ### 1. Creating an MCP Server PRP ```bash # Developer runs: /prp-mcp-create "Build an MCP server for weather data with caching" # Claude Code: 1. Uses TodoWrite to plan research 2. Analyzes existing codebase patterns 3. Reads PRPs/templates/prp_mcp_base.md 4. Customizes template with specific requirements 5. Includes all necessary context from ai_docs 6. Generates comprehensive PRP document ``` ### 2. Executing the MCP Server PRP ```bash # Developer runs: /prp-mcp-execute weather-mcp-server.md # Claude Code: 1. Creates comprehensive todo list 2. Sets up project structure 3. Implements MCP server with tools 4. Adds authentication if required 5. Integrates database if needed 6. Runs validation loops: - TypeScript compilation - Local testing with wrangler dev - MCP Inspector testing - OAuth flow verification - Production deployment ``` ## Key Benefits 1. **Consistency**: Every MCP server follows proven patterns 2. **Security**: Built-in authentication and SQL injection protection 3. **Production-Ready**: Includes monitoring, error handling, and deployment 4. **Comprehensive**: From initial setup to production deployment 5. **Validated**: Multi-level testing ensures quality ## File Structure Created ``` .claude/ ā”œā”€ā”€ commands/ │ ā”œā”€ā”€ prp-mcp-create.md # Creates MCP server PRPs │ └── prp-mcp-execute.md # Executes MCP server PRPs PRPs/ ā”œā”€ā”€ templates/ │ ā”œā”€ā”€ prp_base.md # General PRP template (existing) │ ā”œā”€ā”€ prp_mcp_server.md # Session 1 template │ └── prp_mcp_base.md # Session 3 template (primary) └── ai_docs/ ā”œā”€ā”€ mcp_patterns.md # Core development patterns ā”œā”€ā”€ cloudflare_workers_setup.md # Deployment guide └── oauth_integration.md # Authentication patterns CLAUDE.md # Adapted implementation guide ``` ## Usage Instructions ### For Developers 1. **To create a new MCP server**: ```bash # Start Claude Code in your project claude-code # Create a PRP for your MCP server /prp-mcp-create "Build an MCP server for [your use case]" # Execute the generated PRP /prp-mcp-execute [generated-prp-file.md] ``` 2. **To understand the patterns**: - Read `CLAUDE.md` for implementation patterns - Check `PRPs/ai_docs/` for specific topics - Review `src/` files for working examples 3. **To deploy to production**: ```bash # Set up secrets wrangler secret put GITHUB_CLIENT_ID wrangler secret put GITHUB_CLIENT_SECRET wrangler secret put DATABASE_URL # Deploy wrangler deploy ``` ## Next Steps 1. **Test the System**: Create a sample MCP server using the PRP commands 2. **Iterate on Templates**: Update templates based on real-world usage 3. **Add More Patterns**: Extend ai_docs with additional patterns as discovered 4. **Community Contribution**: Share successful MCP server PRPs as examples ## Technical Details ### PRP Philosophy - **Context is King**: Every PRP includes comprehensive context - **Validation-Driven**: Multiple validation loops ensure quality - **Production-First**: Always consider deployment and monitoring ### MCP Server Architecture - **Cloudflare Workers**: Serverless runtime with global distribution - **Durable Objects**: Stateful MCP agent persistence - **GitHub OAuth**: Secure authentication with permission management - **PostgreSQL**: Database integration with connection pooling ### Security Considerations - SQL injection protection via pattern validation - HMAC-signed cookies for OAuth approval - Role-based access control for tools - Error message sanitization ## Conclusion This PRP system transforms MCP server development from a complex, error-prone process into a streamlined, validated workflow. By leveraging Claude Code's capabilities and the proven patterns from the remote-mcp-server-with-auth codebase, developers can create production-ready MCP servers in under 30 minutes with confidence in security, scalability, and maintainability.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/technophile-04/sre-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server