Todo MCP
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., "@Todo MCPwhat are my current todos?"
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.
Todo MCP
Demo project for learning Model Context Protocol (MCP).
A small Next.js todo app exposes the same list as an MCP server over Streamable HTTP. Use it to see how agents call tools against a real app — either on your machine or against a hosted deployment.
What you get
Web UI at
/— add, complete, and purge todosMCP server at
/api/mcp— tools that operate on the same shared store
Tool | What it does |
| List todos (optional filter: |
| Create an active todo |
| Mark completed or return to active |
| Move a todo to purged (not restored) |
Related MCP server: MCP Todo Server
Storage
Local (no env): in-memory store. UI and MCP share it in one Node process. Resets on restart.
Local or Vercel (with KV env): Vercel KV via
@upstash/redis. UI and MCP stay in sync across serverless instances.Vercel without KV env: fails fast with a clear config error.
Copy .env.example to .env.local when you want KV locally:
KV_REST_API_URL=
KV_REST_API_TOKEN=Prerequisites
Node.js 20+
An MCP client (e.g. Cursor)
npm installOption A — Hosted MCP (default)
This repo’s .cursor/mcp.json points at the deployed demo:
{
"mcpServers": {
"todo-mcp": {
"type": "http",
"url": "https://todo-mcp-playground.vercel.app/api/mcp"
}
}
}Enable / refresh todo-mcp in Cursor MCP settings, then ask the agent to list or add todos. Open https://todo-mcp-playground.vercel.app/ — the UI polls every few seconds, so MCP changes show up without a hard refresh.
Hosted deploys need a KV database connected to the Vercel project so KV_REST_API_URL and KV_REST_API_TOKEN are injected.
Before exposing private data: add auth. The demo has none.
Option B — Run locally
Start the app:
npm run devOpen http://localhost:3000 for the UI.
Point your MCP client at the local server (override
.cursor/mcp.jsonor add a second entry):
{
"mcpServers": {
"todo-local": {
"type": "http",
"url": "http://localhost:3000/api/mcp"
}
}
}Enable / refresh
todo-localin Cursor MCP settings, then ask the agent to list or add todos.
No KV env required. Optional: set the vars from .env.example to exercise the same Redis path as production.
Project layout
app/ # Next.js UI + /api/mcp route
components/ # Todo UI
lib/todos.ts # In-memory local store + Vercel KV persistence
lib/redis.ts # KV client (null locally when env is unset)
mcp/server.ts # Tool registration (mcp-handler)
.cursor/mcp.json # Cursor MCP config (hosted by default)More MCP detail: mcp/README.md.
Learn by doing
Use the hosted MCP config, ask the agent to add a todo, watch it appear on the site.
Or run locally, open the UI, add a todo, then ask the agent to list it.
Deploy your own copy with KV connected, switch the MCP URL, confirm tools still work.
That loop is the point of the demo: MCP tools as another interface to your app.
This server cannot be deployed
Maintenance
Related MCP Connectors
Nifty's MCP server — exposes tasks, projects, messages, and files as tools for AI agents.
- mcpOAuthnet.todoist
Official Todoist MCP server for AI assistants to manage tasks, projects, and workflows.
MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceAn MCP server that enables AI agents to manage a TODO list with user authentication via Stytch. It provides tools for creating, reading, updating, and deleting TODO items while handling identity and authorization.27MIT
- AlicenseNot gradedqualityCmaintenanceA CRUD todo list server that exposes tools to create, list, and conclude tasks, compatible with any MCP host.7 npmMIT
- FlicenseNot gradedqualityBmaintenanceMCP server that provides tools to create and list tasks by consuming a REST API, allowing LLMs to manage a TODO list via natural language.-
- FlicenseAqualityCmaintenanceA minimal MCP server that demonstrates the entire protocol using a simple in-memory todo list, including tools, resources, prompts, and elicitation.31-