Provides RAG-powered search capabilities through Upstash Vector database, enabling semantic search and retrieval of professional knowledge base content with relevance scoring and contextual ranking
Binal's AI-Powered Resume Platform
A modern, interactive resume website with AI-powered chat functionality using Next.js 15, Upstash Vector Database, and MCP (Model Context Protocol) integration for Claude Desktop.
π Features
π± Professional Resume Website: Modern, responsive design optimized for recruiters
π€ Interactive AI Chat: Ask questions about Binal's background, skills, and experience
π RAG-Powered Search: Vector database search through comprehensive professional data
π¨οΈ Print-Optimized: Professional PDF generation for download
π» MCP Integration: Claude Desktop integration for advanced AI interactions
π οΈ Tech Stack
Frontend: Next.js 15 with React 19, Tailwind CSS, shadcn/ui
Backend: Upstash Vector Database for RAG search
AI Integration: Claude Sonnet via MCP protocol
Deployment: Vercel-ready configuration
π Project Structure
π§ Setup & Installation
Prerequisites
Node.js 18+
pnpm package manager
Upstash Vector Database account
1. Environment Setup
Create .env.local with your Upstash credentials:
2. Install Dependencies
3. Populate Database
The database is already populated with Binal's professional data. To repopulate if needed, use the MCP Setup Guide on the website.
4. Run Development Server
Visit http://localhost:3000 to see the application.
ποΈ How It Works
This application uses mcp-handler and Upstash Vector to provide seamless RAG-powered search integration between web applications and AI assistants like Claude Desktop.
Architecture
Claude Desktop connects via various transport protocols (SSE, stdio, etc.)
Transport Layer handles the MCP protocol communication
MCP Handler processes tool calls and invokes shared RAG search logic
RAG Search (
/lib/rag-search.ts) contains vector search and result formattingUpstash Vector provides semantic search capabilities with embeddings
Server Actions (for web) call the same shared RAG logic directly
Key Components
lib/rag-search.ts: Shared RAG search logic, schema, and tool definitionsapp/api/[transport]/route.ts: MCP server endpoint using mcp-handler + shared logicapp/actions/mcp-actions.ts: Server actions that use the shared RAG search logicapp/page.tsx: Beautiful web interface with setup instructions and testingcomponents/: Reusable shadcn/ui components for the interfacedata/: Sample data structure and population guidelines
Web Interface Benefits
The web interface uses Next.js Server Actions that import the same shared logic as the MCP server:
β Same Zod schema validation (
lib/rag-search.ts)β Identical search algorithm (single
searchBinalKnowledge()function)β Consistent output formatting (same result structure)
β Shared tool definitions (same name, description, schema)
β True single source of truth architecture
MCP Tools:
search_binal_knowledgetool with Zod validation for parameters
π Deployment to Vercel
Option 1: Deploy Button (Recommended)
Option 2: Manual Deployment
Connect to Vercel:
pnpm i -g vercel vercelAdd Environment Variables: In your Vercel dashboard, add:
UPSTASH_VECTOR_REST_URLUPSTASH_VECTOR_REST_TOKEN
Update Claude Desktop Config: Replace
http://localhost:3000with your Vercel URL:{ "mcpServers": { "binal-digital-twin": { "command": "npx", "args": [ "-y", "mcp-remote", "https://your-app.vercel.app/api/mcp" ] } } }Restart Claude Desktop to use the deployed version
π οΈ Technology Stack
Framework: Next.js 15 with App Router
UI Library: shadcn/ui components
Styling: Tailwind CSS with CSS variables
Vector Database: Upstash Vector for RAG search
MCP Integration: mcp-handler for HTTP-based MCP protocol
MCP Bridge: mcp-remote for Claude Desktop connectivity
Validation: Zod for type-safe parameter validation
Icons: Lucide React for beautiful icons
Deployment: Vercel platform
π― Use Cases
π€ Technical Interviews: Learn about Binal's technical expertise and experience
π€ Project Collaboration: Understand Binal's skills for team projects
π Professional Networking: Get to know Binal's background and interests
π Skill Assessment: Evaluate technical competencies and experience levels
π€ AI-Powered CV: Interactive resume experience via Claude Desktop
π Educational Tool: Demonstrate RAG and vector search technologies
π€ Contributing
Contributions are welcome! This project is open source and MIT licensed.
Fork the repository
Create a feature branch:
git checkout -b feature/amazing-featureCommit changes:
git commit -m 'Add amazing feature'Push to branch:
git push origin feature/amazing-featureOpen a Pull Request
π Learn More
Model Context Protocol - Official MCP documentation
mcp-handler - The HTTP-based MCP handler used in this project
mcp-remote - Bridge tool for Claude Desktop connectivity
Upstash Vector - Serverless vector database documentation
Claude Desktop - Download and setup guide
Next.js Documentation - Learn about the framework
π License
MIT License - see LICENSE file for details.
π¨βπ» Author
Created by Binal as a digital twin RAG search server
β If you find this project useful, please consider giving it a star on GitHub!
Built with β€οΈ using Next.js, shadcn/ui, Upstash Vector, and the Model Context Protocol