Skip to main content
Glama
HarindiNikeshala

MCP Resume Chat Server

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: MCP Resume & Email Assistant

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

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI-powered conversations about resume/CV content and email notification sending through a comprehensive MCP server. Features a modern Next.js frontend with resume chat interface, email forms, and resume viewer for SE interview demonstrations.
    205
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Exposes a personalized AI agent that reads your resume and provides intelligent responses about your professional background through a standardized MCP server interface with RAG capabilities.
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    A resume MCP server that enables AI agents to search work history by keyword or meaning, retrieve detailed company info, and send scheduling emails, turning a static resume into interactive tools.
    3
    MIT