dilshankavishka/MCP-Server
If you are the rightful owner of MCP-Server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
This project implements a Model Context Protocol (MCP) server with features for querying a CV and sending email notifications.
MCP Server & Frontend β Coding Challenge
This project was built as part of a coding challenge to demonstrate API design, integration skills, and a simple frontend playground. It includes both a backend MCP server and a Next.js frontend.
πΉ Features
Backend (MCP Server)
-
Chat about CV β Answers questions about my resume from a structured JSON file (
cv.json
).-
Example questions:
- "What role did I have at my last position?"
- "What projects have you built?"
- "What skills do you know?"
- "Whatβs your education?"
-
-
Send Email Notifications β Provides an endpoint to send emails (recipient, subject, body) using Nodemailer with Ethereal (test inbox).
Frontend (Next.js Playground)
-
A minimal UI with two sections:
- CV Query Box β Enter a question and see the serverβs response.
- Email Form β Fill in recipient, subject, and body, then send an email through the backend.
πΉ Tech Stack
- Backend: Node.js, Express
- Email: Nodemailer (Ethereal for testing)
- Frontend: Next.js (React)
- Deployment: Render (backend) + Vercel (frontend)
πΉ Live Links
- Backend Repo: MCP-Server
- Backend Live: https://mcp-server-nze2.onrender.com
- Frontend Repo: MCP-Frontend
- Frontend Live: https://mcp-frontend-two.vercel.app/
πΉ Local Setup
1. Clone repos
# Backend
git clone https://github.com/dilshankavishka/MCP-Server.git
cd MCP-Server
# Frontend
git clone https://github.com/dilshankavishka/MCP-Frontend.git
cd MCP-Frontend
2. Install dependencies
npm install
3. Run backend
cd MCP-Server
node server.js
Server should start on http://localhost:5000
4. Run frontend
cd MCP-Frontend
npm run dev
Frontend should start on http://localhost:3000
πΉ Example Usage
CV Query
POST http://localhost:5000/cv-query
{
"question": "What role did I have at my last position?"
}
Response:
{
"answer": "Your last role was Software Engineer Intern at SimpliFy Labs (LK) (Feb 2025 - Jul 2025)."
}
Send Email
POST http://localhost:5000/send-email
{
"recipient": "test@example.com",
"subject": "Hello from MCP",
"body": "This is a test email via Ethereal π"
}
Response:
{
"status": "success",
"message": "Email sent (preview URL below)",
"preview": "https://ethereal.email/message/YOUR-PREVIEW-LINK"
}
π Open the preview link to view the test email.
πΉ Notes on Approach
- The CV is stored in JSON for structured querying (instead of live parsing).
- A simple keyword-based matcher powers the
/cv-query
endpoint. - Emails use Ethereal for testing (no real delivery, but full previews).
- Deployment handled via Render (API) and Vercel (frontend UI).
β With this setup, you can query my CV, send test emails, and interact with everything through a live frontend demo.