things3-mcp
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., "@things3-mcpAdd a to-do to buy groceries for today"
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.
things3-mcp
A Model Context Protocol (MCP) server that connects Claude to Things 3 on macOS. Ask Claude to add to-dos and projects, search, open lists, and read your Today/Upcoming/Inbox — all from a Claude conversation.
Unofficial project. Not affiliated with, endorsed by, or supported by Cultured Code. Things 3 is a trademark of Cultured Code GmbH & Co. KG.
How it works
Things 3 doesn't expose a network API, so this server uses two different mechanisms:
Writing (
add_todo,add_project,update_todo,update_project,search,show) opens Things' URL scheme in the background viaopen -g things:///.... This requires Things 3 to be running.Reading (
list_today,list_upcoming,list_projects,list_inbox,get_todo) queries Things' local SQLite database directly, in read-only mode. The URL scheme has no way to read data back, so this is the only option.
Related MCP server: Things MCP Server
Prerequisites
macOS with Things 3 installed and running
Node.js 18+
To use
update_todo/update_project: enable Things URLs in Things → Settings → General → Enable Things URLs and copy the auth token shown there
This server is macOS-only and talks to a local app and a local file — it is not a remote/OAuth-capable MCP server and cannot be hosted or used from another machine.
Installation
Claude Desktop
Add the following to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"things3": {
"command": "npx",
"args": ["-y", "@lcajigasm/things3-mcp"],
"env": {
"THINGS_AUTH_TOKEN": "your-token-here"
}
}
}
}Omit THINGS_AUTH_TOKEN if you don't need update_todo / update_project. Restart Claude Desktop afterwards.
Claude Code
claude mcp add things3 --env THINGS_AUTH_TOKEN=your-token-here -- npx -y @lcajigasm/things3-mcpFrom source
git clone https://github.com/lcajigasm/things3-mcp.git
cd things3-mcp
npm install
npm run buildThen point Claude Desktop at the built file:
{
"mcpServers": {
"things3": {
"command": "node",
"args": ["/absolute/path/to/things3-mcp/dist/index.js"],
"env": {
"THINGS_AUTH_TOKEN": "your-token-here"
}
}
}
}Environment variables
Variable | Required | Description |
| Only for | Auth token from Things → Settings → General → Enable Things URls. Never logged or echoed back by this server. |
| No | Overrides auto-detection of the database file. Things nests it under a per-install |
Available tools
Writing (via URL scheme)
Tool | Description |
| Create a to-do: title, notes, |
| Create a project: title, notes, area, tags, initial to-dos. |
| Update a to-do by id. Requires |
| Update a project by id. Requires |
| Open Things and search for a term. |
| Open a built-in list (Today, Upcoming, Anytime, Someday, Logbook, Inbox) or a specific project/area/to-do by id. |
Reading (via local database, read-only)
Tool | Description |
| To-dos scheduled for Today. |
| To-dos scheduled for a future date or with an upcoming deadline. |
| Open (incomplete, non-trashed) projects. |
| Unclassified to-dos in the Inbox. |
| Full detail for one to-do by id, including its checklist. |
Example prompts
"Add a to-do 'Renew passport' with a deadline of 2026-09-01"
"Create a project called 'Q3 planning' in my Work area with to-dos for budget, hiring, roadmap"
"What's on my plate today?"
"What's coming up in the next few weeks?"
"Show me everything sitting in my Inbox"
"Mark to-do abc-123 as completed"
"Open Things and search for 'invoice'"
Limitations
macOS + Things 3 only. No Windows/Linux/iOS support, no remote/hosted mode.
Writing is fire-and-forget: the URL scheme doesn't return the created item's id, so
add_todo/add_projectcan't tell you the new id directly (usesearchorlist_inboxto find it afterwards).Reading queries Things' internal SQLite schema, which is undocumented and could change in future Things versions.
update_todo/update_projectneedTHINGS_AUTH_TOKEN; without it those two tools return an error, everything else still works.
Troubleshooting
"things3-mcp only works on macOS"
This server calls open -g things:///... and reads a macOS-only app container path — there's no way around this.
"Could not find the Things 3 database" Make sure Things 3 is installed and has been opened at least once (the database is created on first launch).
"THINGS_AUTH_TOKEN environment variable is required"
Only update_todo/update_project need it. Get it from Things → Settings → General → Enable Things URLs, then add it to your MCP config's env block.
Claude doesn't see the Things 3 tools
Restart Claude Desktop after editing the config file
Validate the JSON in
claude_desktop_config.json(a trailing comma will break it)Run
npx @lcajigasm/things3-mcpmanually in a terminal to check for Node errors
Development
npm install
npm run dev # watch mode via tsx
npm run build # compile to dist/License
MIT — see LICENSE. Not affiliated with Cultured Code.
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.
Related MCP Servers
- AlicenseBqualityAmaintenanceEnables interaction with the Things app through Claude Desktop, allowing task creation, project analysis, and priority management using natural language commands.22547MIT
- Alicense-qualityDmaintenanceLets you use Claude Desktop to interact with your task management data in Things app, enabling you to create tasks, analyze projects, manage priorities, and implement productivity workflows through natural language.34MIT
- AlicenseBqualityDmaintenanceEnables Claude to interact with Things 3 on macOS, allowing users to create, update, and manage to-dos and projects, list tasks, search items, and navigate through Things lists using natural language.201717ISC
- AlicenseBqualityCmaintenanceEnables Claude to interact with Things 3 task management, allowing creation, analysis, and management of tasks, projects, and tags via natural language.22MIT
Related MCP Connectors
Persistent context for Claude. Your AI always knows your projects and next actions across sessions.
Connect Claude to Fathom meeting recordings, transcripts, and summaries
WHOOP recovery, strain, sleep and workouts in Claude via official WHOOP OAuth. Free, open source.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/lcajigasm/things3-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server