Tududi MCP Server

Tududi MCP Server

Connects AI assistants to the Tududi productivity platform to manage tasks, projects, and notes using GTD methodology. It provides a standardized interface for LLMs to read and manipulate data through a suite of over 25 tools and resources.

Category
Visit Server

README

Tududi MCP Server

A whitelabel Model Context Protocol (MCP) server that connects LLM-powered clients to Tududi — an open-source productivity and GTD (Getting Things Done) application created by Chris Vel.

Tududi helps users organise tasks, projects, notes, and areas following GTD methodology. This MCP server acts as a bridge, allowing AI assistants (Claude, Cursor, VS Code Copilot, etc.) to read and manipulate Tududi data through a standardised protocol.

Prerequisite: You need a running Tududi instance (self-hosted) with API access enabled. The MCP server connects to Tududi's REST API and does not include the Tududi application itself.

How it works

The server exposes a single MCP endpoint at app/mcp/route.ts built on Next.js Route Handlers. On each request, it:

  1. Authenticates — validates the bearer token against the Tududi instance's /api/profile endpoint.
  2. Registers modules — lazily loads all 8 domain modules (tasks, projects, notes, areas, inbox, tags, profile, metrics) and registers their tools and resources with the MCP server.
  3. Serves tools & resources — the connected MCP client discovers and invokes them as needed.

Authentication is handled via mcp-handler's withMcpAuth wrapper with token verification against the Tududi API.

Features

Tasks

  • Tools (7): list_tasks, get_task, create_task, update_task, delete_task, toggle_task_completion, list_subtasks
  • Resources (2): tududi://tasks, tududi://tasks/{uid}

Projects

  • Tools (4): list_projects, create_project, update_project, delete_project
  • Resources (2): tududi://projects, tududi://projects/{uid}

Notes

  • Tools (4): list_notes, create_note, update_note, delete_note
  • Resources (1): tududi://notes

Areas

  • Tools (4): list_areas, create_area, update_area, delete_area
  • Resources (1): tududi://areas

Inbox

  • Tools (2): list_inbox, create_inbox_item
  • Resources (1): tududi://inbox

Tags

  • Tools (2): list_tags, create_tag
  • Resources (1): tududi://tags

Profile

  • Tools (2): get_profile, update_profile
  • Resources (1): tududi://profile

Metrics

  • Tools (0)
  • Resources (1): tududi://metrics

Total: 25 tools and 10 resources

Prerequisites

  • A running Tududi instance — self-host the original Tududi project and obtain an API token.
  • Node.js 18+ or Bun runtime.

Whitelabel configuration

The server authenticates per-request using HTTP headers sent by the MCP client. The tududi-api-url header identifies the Tududi instance and the Authorization header carries the bearer token.

Client-side headers

Header Required Description
tududi-api-url Yes Base URL of the Tududi instance (e.g. https://my-tududi.com)
Authorization Yes Bearer token for the Tududi API (Bearer <token>)
tududi-enabled-modules No Comma-separated list of modules to enable; defaults to all

MCP client configuration example

{
  "mcp": {
    "servers": {
      "tududi": {
        "type": "http",
        "url": "https://my-tududi-mcp.vercel.app/mcp",
        "headers": {
          "tududi-api-url": "https://my-tududi.com",
          "Authorization": "Bearer my-api-token",
          "tududi-enabled-modules": "tasks,projects,notes"
        }
      }
    }
  }
}

Available modules

tasks · projects · notes · areas · inbox · tags · profile · metrics

Setup & running

# Install dependencies
bun install

# Development
bun dev

# Build
bun build

# Production
bun start

After starting the server, the MCP endpoint is available at http://localhost:3000/mcp.

Tech stack

  • Next.js 16 (Route Handlers)
  • TypeScript (strict mode)
  • MCP SDK (@modelcontextprotocol/sdk)
  • mcp-handler (Next.js MCP adapter with auth support)
  • Zod 4 (schema validation)

Project structure

├── app/mcp/route.ts          # MCP endpoint — auth + handler setup
├── lib/tududi/
│   ├── client.ts             # HTTP client for the Tududi REST API
│   ├── config.ts             # Module names and config types
│   ├── types.ts              # Shared TypeScript types
│   └── modules/
│       ├── index.ts          # Module registry (lazy-loaded)
│       ├── tasks/            # 7 tools, 2 resources
│       ├── projects/         # 4 tools, 2 resources
│       ├── notes/            # 4 tools, 1 resource
│       ├── areas/            # 4 tools, 1 resource
│       ├── inbox/            # 2 tools, 1 resource
│       ├── tags/             # 2 tools, 1 resource
│       ├── profile/          # 2 tools, 1 resource
│       └── metrics/          # 1 resource
└── scripts/                  # Test clients

Using with MCP clients

  1. Deploy this server (e.g. Vercel) or run it locally.
  2. Point your MCP client to the endpoint https://your-host/mcp.
  3. Set the tududi-api-url and Authorization headers as shown above.
  4. The client will auto-discover all registered tools and resources.

License

MIT

Recommended Servers

playwright-mcp

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.

Official
Featured
TypeScript
Magic Component Platform (MCP)

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.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

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.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

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.

Official
Featured
TypeScript
Kagi MCP Server

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.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

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.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured