Skip to main content
Glama
TharakaJayz

MCP Resume Chat Server

by TharakaJayz

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

Related MCP server: interactive-mcp

πŸ“ 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

    git clone <your-repo-url> cd mcp-server
  2. Install dependencies

    npm install
  3. Set up environment variables Create a .env.local file in the root directory:

    # 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

npm run dev

Open http://localhost:3000 to view the application.

Start the MCP Server

# 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:

{ "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:

{ "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)

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

-
security - not tested
F
license - not found
-
quality - not tested

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

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