todo-mcp-server
If you are the rightful owner of todo-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.
A TODO management MCP server using Cloudflare Workers and D1 database.
TODO Management MCP Server
A TODO management MCP server using Cloudflare Workers and D1 database.
Features
addTodo
: Create a new TODOgetTodos
: Get TODO listcompleteTodo
: Mark TODO as completemarkIncomplete
: Mark TODO as incompletedeleteTodo
: Delete TODO
Setup
1. Create Project
npm create cloudflare@latest -- my-mcp-server --template=cloudflare/ai/demos/remote-mcp-authless
cd my-mcp-server
2. Create D1 Database
# Create D1 database
wrangler d1 create todo-tasks-db
3. Configure wrangler.jsonc
Add the created database ID to wrangler.jsonc
:
{
"$schema": "node_modules/wrangler/config-schema.json",
"name": "todo-mcp-server",
"main": "src/index.ts",
"compatibility_date": "2025-03-10",
"compatibility_flags": ["nodejs_compat"],
"d1_databases": [
{
"binding": "DB",
"database_name": "todo-tasks-db",
"database_id": "your-database-id-here"
}
]
}
4. Create Database Schema
Create schema.sql
file:
CREATE TABLE todos (
id INTEGER PRIMARY KEY AUTOINCREMENT,
title TEXT NOT NULL,
completed BOOLEAN DEFAULT FALSE,
created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
updated_at DATETIME DEFAULT CURRENT_TIMESTAMP
);
Apply schema to database:
# Apply to local environment
wrangler d1 execute todo-tasks-db --file=./schema.sql --local
# Apply to remote environment
wrangler d1 execute todo-tasks-db --file=./schema.sql --remote
5. Generate Types
npm run cf-typegen
6. Implement src/index.ts
Create MCP agent class inheriting from McpAgent and implement TODO management tools. See src/index.ts
for details.
7. Local Testing
Start development server:
npm run dev
Start MCP Inspector in another terminal:
npx @modelcontextprotocol/inspector@latest
Open the displayed port in web browser and enter http://localhost:8787/mcp
in the MCP server URL field to test.
8. Deploy
npm run deploy
Usage
Claude Desktop Usage
After deployment, add the following to Claude Desktop's config file (~/Library/Application Support/Claude/claude_desktop_config.json
):
{
"mcpServers": {
"todo": {
"command": "npx",
"args": [
"mcp-remote@latest",
"https://your-worker-domain.workers.dev/mcp"
]
}
}
}
Resource Cleanup
To delete the project, follow these steps to remove Cloudflare resources:
1. Delete Worker
wrangler delete my-mcp-server
2. Delete D1 Database
wrangler d1 delete todo-tasks-db
Note: Deleting the Worker will automatically delete associated Durable Objects.
License
MIT
Author
Yusuke Wada https://github.com/yusukebe