Deadline Tracker MCP Server
This MCP server helps users manage deadlines and study schedules, providing tools to add, list, and complete deadlines, a read-only resource for all deadlines, and a prompt for weekly planning.
README
Đồ án MCP — Deadline / Lịch học tracker
Bài tập lớn môn MCP (FIT-HCMUS, GV Kha Do) — dựa trên slide
MCP — Plug Your Agent Into Everything.
Cấu trúc
mcp-homework/
├── server/
│ ├── core.js ← logic MCP thật: 3 tools + 1 resource + 1 prompt
│ ├── server.js ← chạy core qua stdio
│ └── http.js ← chạy core qua Streamable HTTP + API key guard + /health
├── agent/
│ ├── host.js ← agent = MCP HOST (load config, merge tools, dispatch, use_skill)
│ └── config.json ← khai báo model + các MCP server cần nối + nơi chứa skills
├── skills/
│ └── deadline-review/SKILL.md ← 1 skill orchestrate tool của server
└── README.md
Đề tài server: Deadline / lịch học tracker
- Tools
add_deadline({ title, subject, due })— thêm deadlinelist_deadlines({ subject?, onlyPending? })— liệt kê, có lọccomplete_deadline({ id })— đánh dấu hoàn thành, trảisError: truenếu id sai
- Resource:
deadline://list— toàn bộ danh sách, chỉ đọc - Prompt:
plan_my_week— yêu cầu model lên kế hoạch tuần từ deadline hiện có
Chạy từng phần
1. stdio server (test bằng Inspector)
npm install
npx @modelcontextprotocol/inspector node server/server.js
2. HTTP server (local, rồi deploy public)
MCP_KEY=$(openssl rand -hex 32) node server/http.js
# test:
npx @modelcontextprotocol/inspector # chọn Streamable HTTP, URL http://localhost:3000/mcp,
# header Authorization: Bearer <MCP_KEY>
Deploy (Render/Fly/Railway...): set biến môi trường MCP_KEY, expose cổng PORT,
/health dùng cho health check của nền tảng.
3. Agent host (dùng cả 2 server + skill)
cd agent && npm install
# cần Ollama chạy sẵn model qwen3.5:4b (hoặc đổi model/baseURL trong config.json)
node host.js "deadline tuần này của tôi thế nào?"
host.js sẽ: nối server stdio + server HTTP → gộp tool list → build index skill từ
skills/ → chạy vòng lặp think/decide/act/observe, tự gọi use_skill khi câu hỏi
khớp mô tả skill, rồi gọi tool MCP tương ứng.
Đã tự kiểm thử
- Smoke test stdio server: gọi cả 3 tool, đọc resource, lấy prompt, kiểm tra
isErrorkhi complete id không tồn tại — tất cả đúng như kỳ vọng. - HTTP server: request thiếu key → 401; có key đúng → handshake
initializethành công;/healthtrảok.
Còn cần làm trước khi nộp
- [ ] Deploy bản HTTP lên nền tảng public (Render/Fly/Railway/Cloudflare Workers…),
set
MCP_KEY, ghi lại URL + key cho người chấm - [ ] Cài Ollama + pull
qwen3.5:4b, chạy thửagent/host.jsvới model thật (bản test ở trên chỉ kiểm thử tầng MCP, chưa gọi LLM) - [ ] Quay video demo ngắn (xem mục "Nộp bài" bên dưới)
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.