todo-tree MCP Server
Integrates with a Strapi backend to manage hierarchical todo-tree tasks, providing tools for retrieving, adding, deleting, completing, setting due dates, and moving tasks.
Click on "Install 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-tree MCP Servershow me my task tree"
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-tree MCP Server
Exposes your todo-tree task list as MCP tools so any MCP-compatible AI client (Claude Desktop, etc.) can read and manage your tasks. It supports both stdio transport (default) and SSE (HTTP) transport with dynamic client-side authentication.
Modes of Operation
1. SSE (HTTP) Mode with Web Portal (Recommended)
By defining the PORT environment variable, the server will boot as an HTTP server supporting Server-Sent Events (SSE). It hosts a web interface allowing non-technical users to easily log in and connect.
Setup
Create a
.envfile based on.env.example:PORT=3001 TODO_TREE_API_URL=http://localhost:1337Start the server:
npm startOpen
http://localhost:3001in your browser.Log in with your Todo Tree credentials to get your personalized connection URL and configuration block.
2. Deployed SSE Mode (No Local Repository Needed)
If the server has already been deployed to a cloud platform (such as Fly.io, Render, or a VPS), you do not need to clone the repository or run any code locally to connect your AI client.
Setup for Clients
Open the public URL of the deployed server in your browser (for example,
https://your-todo-tree-mcp.com).Log in with your Todo Tree credentials to access the connector dashboard.
The dashboard will automatically generate the required configuration for your client.
Copy the generated Claude Desktop configuration block.
Open your local Claude Desktop configuration file:
Windows:
%APPDATA%\Claude\claude_desktop_config.jsonmacOS:
~/Library/Application Support/Claude/claude_desktop_config.json
Paste the configuration block inside the
mcpServersobject:{ "mcpServers": { "todo-tree": { "url": "https://your-todo-tree-mcp.com/sse?token=YOUR_SECURE_TOKEN" } } }Restart your Claude Desktop client.
3. Stdio Mode (Single User)
If no PORT is defined, the server runs in standard I/O mode. It uses a static token defined in the environment variables to authenticate all requests.
Setup for Claude Desktop
Add to your Claude Desktop config (claude_desktop_config.json):
{
"mcpServers": {
"todo-tree": {
"command": "node",
"args": ["C:\\Users\\davei\\Desktop\\todo-tree\\mcp-server\\dist\\index.js"],
"env": {
"TODO_TREE_API_URL": "http://localhost:1337",
"TODO_TREE_TOKEN": "your-jwt-token-here"
}
}
}
}Related MCP server: Todoist MCP Server
Environment Variables
Variable | Required | Description |
| No | Port to run in SSE mode. If omitted, runs in stdio mode. |
| No | Base URL of the Strapi backend (defaults to |
| No | Static JWT/token (required only for Stdio mode). |
Development
Run without a build step using tsx:
PORT=3001 npm run devTest interactively with the MCP Inspector:
npx @modelcontextprotocol/inspector tsx src/index.tsTools
get_tree
Returns the full task tree as indented text. Each line shows the task ID in brackets, completion status, due date, and child progress. Use the IDs in subsequent tool calls.
[work] : Work
[finish-report] : Finish report
[review-pr] : Review PR - Due: Today
[buy-groceries] : Buy groceries - Due: May 30
[call-dentist] : Call dentistadd_task
Creates a new task.
Parameter | Type | Required | Description |
| string | Yes | Task name |
| string | No | ID of the parent task; omit for root level |
| string | No | Due date in |
delete_task
Permanently removes a task and all its children.
Parameter | Type | Required | Description |
| string | Yes | Task ID |
complete_task
Marks a task done or undone. Completion propagates to all child tasks, same as clicking the checkbox in the UI.
Parameter | Type | Required | Description |
| string | Yes | Task ID |
| boolean | No |
|
set_due_date
Sets or clears the due date on a task.
Parameter | Type | Required | Description |
| string | Yes | Task ID |
| string | Yes | Date in |
move_task
Moves a task to a new position in the tree.
Parameter | Type | Required | Description |
| string | Yes | Task to move |
| string | Yes | Reference task |
|
| Yes |
|
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/David3Emmanuel/todo-tree-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server