Skip to main content
Glama

MCP Resume Chat Server

by TharakaJayz
README.md7.18 kB
# MCP Resume Chat Server A comprehensive Model Context Protocol (MCP) server application that can chat about your resume/CV and send email notifications. Perfect for SE interviews and showcasing MCP capabilities. ## 🚀 Features - **Resume Chat**: AI-powered chat interface that answers questions about your resume - **Email Notifications**: Send email notifications through the MCP server - **Modern Frontend**: Beautiful Next.js interface with dark mode support - **Well-Architected**: Clean folder structure with TypeScript support - **No Database Required**: Uses JSON files for data storage ## 📁 Project Structure ``` mcp-server/ ├── app/ # Next.js frontend │ ├── components/ # React components │ │ ├── ChatInterface.tsx # Resume chat interface │ │ ├── EmailForm.tsx # Email notification form │ │ └── ResumeViewer.tsx # Resume data viewer │ ├── api/ # API routes │ │ └── resume/ # Resume data endpoint │ └── page.tsx # Main application page ├── mcp-server/ # MCP server implementation │ ├── index.js # Main MCP server (JavaScript) │ └── index.ts # Main MCP server (TypeScript) ├── services/ # Business logic services │ ├── resumeParser.js/ts # Resume data parsing │ ├── resumeChatService.js/ts # AI chat functionality │ └── emailService.js/ts # Email sending service ├── config/ # Configuration files │ ├── email.ts # Email configuration │ └── mcp.ts # MCP server configuration ├── data/ # Data storage │ └── resume.json # Sample resume data ├── types/ # TypeScript type definitions │ └── index.ts # Core types and interfaces └── lib/ # Utility libraries ``` ## 🛠️ Installation 1. **Clone the repository** ```bash git clone <your-repo-url> cd mcp-server ``` 2. **Install dependencies** ```bash npm install ``` 3. **Set up environment variables** Create a `.env.local` file in the root directory: ```env # OpenAI API Key (required for resume chat) OPENAI_API_KEY=your_openai_api_key_here # Email Configuration (optional, for real email sending) SMTP_HOST=smtp.gmail.com SMTP_PORT=587 SMTP_SECURE=false SMTP_USER=your_email@gmail.com SMTP_PASS=your_app_password ``` 4. **Update resume data** Edit `data/resume.json` with your actual resume information. ## 🚀 Running the Application ### Start the Next.js Frontend ```bash npm run dev ``` Open [http://localhost:3000](http://localhost:3000) to view the application. ### Start the MCP Server ```bash # Using JavaScript version npm run mcp # Using TypeScript version (requires compilation) npm run dev:mcp ``` ## 📖 Usage ### 1. Resume Chat - Navigate to the "Resume Chat" tab - Ask questions about your resume like: - "What is my current position?" - "What companies have I worked for?" - "What are my main skills?" - "What was my last role?" ### 2. Email Notifications - Navigate to the "Email Notifications" tab - Use the quick templates or create custom emails - Configure SMTP settings for real email sending ### 3. Resume Viewer - Navigate to the "View Resume" tab - Browse through different sections of your resume - View formatted resume data ## 🔧 MCP Server Tools The MCP server exposes two main tools: ### 1. `resume_chat` Answers questions about resume/CV information. **Parameters:** - `question` (string, required): The question to ask about the resume - `context` (string, optional): Additional context for the question **Example:** ```json { "name": "resume_chat", "arguments": { "question": "What is my current position?", "context": "I'm preparing for an interview" } } ``` ### 2. `send_email` Sends email notifications. **Parameters:** - `recipient` (string, required): Email address of the recipient - `subject` (string, required): Subject of the email - `body` (string, required): Body content of the email - `from` (string, optional): Sender email address **Example:** ```json { "name": "send_email", "arguments": { "recipient": "recipient@example.com", "subject": "Interview Invitation", "body": "Thank you for your application...", "from": "sender@example.com" } } ``` ## 🎯 Interview Demo Script ### 1. Show the Architecture - Explain the clean folder structure - Highlight separation of concerns (services, config, types) - Show TypeScript usage for type safety ### 2. Demonstrate MCP Server - Start the MCP server: `npm run mcp` - Show the tools it exposes - Explain how it integrates with AI for resume chat ### 3. Frontend Features - Show the modern UI with tabs - Demonstrate resume chat functionality - Show email notification form - Display resume viewer with different sections ### 4. Technical Highlights - **No Database**: Uses JSON files for simplicity - **TypeScript**: Full type safety throughout - **Modern Stack**: Next.js 15, React 19, Tailwind CSS - **MCP Integration**: Proper Model Context Protocol implementation - **Error Handling**: Comprehensive error handling and user feedback ## 🔧 Configuration ### Email Setup (Optional) To enable real email sending: 1. **Gmail Setup:** - Enable 2-factor authentication - Generate an app password - Use the app password in `SMTP_PASS` 2. **Other Providers:** - Update `SMTP_HOST`, `SMTP_PORT`, and `SMTP_SECURE` accordingly - Use appropriate authentication credentials ### Resume Data Update `data/resume.json` with your information: - Personal information - Work experience - Education - Skills - Projects - Certifications ## 🚀 Deployment ### Frontend (Vercel) ```bash npm run build # Deploy to Vercel or your preferred platform ``` ### MCP Server The MCP server can be deployed as a standalone Node.js application or integrated into existing systems. ## 🤝 Contributing 1. Fork the repository 2. Create a feature branch 3. Make your changes 4. Add tests if applicable 5. Submit a pull request ## 📄 License This project is licensed under the MIT License. ## 🆘 Troubleshooting ### Common Issues 1. **MCP Server not starting:** - Check if all dependencies are installed - Verify Node.js version compatibility - Check console for error messages 2. **Resume chat not working:** - Verify OpenAI API key is set - Check if resume data is loaded correctly - Ensure MCP server is running 3. **Email sending fails:** - Verify SMTP configuration - Check email provider settings - Ensure app passwords are used for Gmail ### Getting Help - Check the console logs for detailed error messages - Verify all environment variables are set correctly - Ensure all dependencies are installed --- **Built with ❤️ for SE interviews and MCP demonstrations**

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/TharakaJayz/mcp-server'

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