Things 3 MCP Server
This is a Model Context Protocol (MCP) server for Things 3 on macOS. It allows LLMs to interact with your local Things 3 database via AppleScript.
Features
- List Todos: Fetch todos from built-in lists (Inbox, Today, Upcoming, etc.)
- Create Todo: Create new todos with notes in specific lists.
Prerequisites
- macOS
- Things 3 installed and running
- Node.js installed
Installation
- Clone this repository
git clone https://github.com/benhancock/things3-mcp.git - Install dependencies:
npm install - Build the server:
npm run build
Configuration
To use this with an MCP client (like Claude Desktop), add the following to your claude_desktop_config.json:
{
"mcpServers": {
"things3": {
"command": "node",
"args": [
"/absolute/path/to/things3-mcp/build/index.js"
]
}
}
}
Within the Claude Desktop app, you should see the MCP server running in the "Developer" settings tab.
Debugging
If you're having issues with the server, you can run the server manually to see any errors:
node build/index.js
To see logs for MCP servers in Claude Desktop, you can run:
tail -n 20 -f ~/Library/Logs/Claude/mcp*.log
If you have node installed in multiple places, you may need to specify the full path to node in the claude_desktop_config.json file, for example:
{
"mcpServers": {
"things3": {
"command": "/Users/YOUR_USERNAME/.nvm/versions/node/v21.6.2/bin/node",
"args": [
"/absolute/path/to/things3-mcp/build/index.js"
]
}
}
}