Labsco
hildersantos logo

Things MCP

โ˜… 15

from hildersantos

Integrate with the Things 3 to-do app on macOS.

๐Ÿ”ฅ๐Ÿ”ฅ๐Ÿ”ฅโœ“ VerifiedAccount requiredNeeds API keys

Things MCP

A Model Context Protocol (MCP) server for Things 3 integration. Enables Claude Desktop and Claude Code to interact with Things 3 on macOS.

Features

  • Create to-dos and projects with full metadata
  • Update existing to-dos and projects
  • List items from any Things list (Inbox, Today, Logbook, Trash, etc.)
  • Retrieve all projects, areas, and tags
  • Navigate to specific items or lists
  • Search within Things
  • Secure AppleScript execution
  • Comprehensive error handling

Available Tools

Creation Tools

  • things_add_todo - Create a to-do with all options
  • things_add_project - Create a project with sections (headings), todos, and hierarchical organization

Update Tools (requires auth token)

  • things_update_todo - Update an existing to-do using JSON API for full feature support
  • things_update_project - Update an existing project using JSON API for full feature support
  • things_add_items_to_project - Add structured todos and headings to an existing project

Reading Tools

  • things_get_inbox - List inbox items
  • things_get_today - List today's items
  • things_get_upcoming - List scheduled items
  • things_get_anytime - List anytime items
  • things_get_someday - List someday items
  • things_get_logbook - List completed items
  • things_get_trash - List trashed items
  • things_get_projects - List all active projects
  • things_get_areas - List all areas
  • things_get_tags - List all tags
  • things_get_project - List items in a specific project (requires project_id)
  • things_get_area - List items in a specific area (requires area_id)
  • things_get_list - Get items from a specific list by name
  • things_get_todo_details - Get detailed information about a specific to-do

All list tools support an optional max_results parameter to limit output.

  • things_show - Navigate to item or list

Development

# Development mode with watch
npm run dev

# Run linter
npm run lint

# Format code
npm run format

# Run tests
npm test

# Run tests in watch mode
npm run test:watch