Deadline Tracker MCP Server
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Deadline Tracker MCP ServerList my deadlines for this week"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
MCP Project — Deadline / Study schedule tracker
Major assignment for the MCP course (FIT-HCMUS, lecturer Kha Do) — based on the slides
MCP — Plug Your Agent Into Everything.
Structure
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.mdRelated MCP server: ScienceTokyoLMS-mcp
Server topic: Deadline / study schedule tracker
Tools
add_deadline({ title, subject, due })— add a deadlinelist_deadlines({ subject?, onlyPending? })— list, with filteringcomplete_deadline({ id })— mark as complete, returnsisError: trueif the id is wrong
Resource:
deadline://list— the full list, read-onlyPrompt:
plan_my_week— asks the model to plan the week from existing deadlines
Running each part
1. stdio server (test with Inspector)
npm install
npx @modelcontextprotocol/inspector node server/server.js2. HTTP server (local, then 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 the MCP_KEY environment variable, expose the PORT,
/health is used for the platform's health check.
3. Agent host (using both servers + 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 will: connect the stdio server + HTTP server → merge the tool list → build the skill index from
skills/ → run the think/decide/act/observe loop, automatically calling use_skill when the question
matches a skill description, then call the corresponding MCP tool.
Self-tested
Smoke test stdio server: called all 3 tools, read the resource, fetched the prompt, checked
isErrorwhen completing a non-existent id — all as expected.HTTP server: request without key → 401; with correct key →
initializehandshake succeeds;/healthreturnsok.
Still to do before submission
Deploy the HTTP version to a public platform (Render/Fly/Railway/Cloudflare Workers…), set
MCP_KEY, record the URL + key for the graderInstall Ollama + pull
qwen3.5:4b, try runningagent/host.jswith a real model (the test above only tests the MCP layer, it doesn't call the LLM)Record a short demo video (see the "Submission" section below)
Related MCP Connectors
MCP server for generating rough-draft project plans from natural-language prompts.
An MCP server for deep research or task groups
- mcpOAuthnet.todoist
Official Todoist MCP server for AI assistants to manage tasks, projects, and workflows.
Related MCP Servers
- FlicenseNot gradedqualityCmaintenanceA task manager MCP server that demonstrates all three MCP primitives (tools, resources, prompts). Enables users to manage tasks, read task summaries and details, and run structured planning/review prompts through natural language.-
- FlicenseAqualityCmaintenanceMCP server for Science Tokyo LMS, enabling course material download, assignment deadline checks, and more via tools like list_courses and get_upcoming_deadlines.71-
- FlicenseCqualityCmaintenanceA simple MCP server demonstrating resources, tools, and prompts using a local task list. It enables reading, creating, and analyzing tasks through MCP.1-
- FlicenseNot gradedqualityCmaintenanceA personal MCP server for managing a folder of markdown notes. It provides tools to search and list notes, resources to access individual notes, and a prompt for weekly summaries.-