Atlas / MCP servers / drjforrest / Things3 Integration

Things3 IntegrationCAUTION

mcp/drjforrest/things3-integration

A Model Context Protocol for reading todos and writing todos and projects in the macOS app Things3 using a combination of Applescript and x-call URLs.

Verdict
CAUTION
Grade
B
Trust score
88 /100
Exposed tools
7 5r · 2w · 0d
Transport
stdio
License
—
Stars
75
01

Overview

From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.

[](https://mseep.ai/app/drjforrest-mcp-things3)

A robust MCP (Model Context Protocol) server providing comprehensive integration with Things3, allowing you to create, manage, and search tasks and projects through the MCP protocol. Features improved error handling, secure URL encoding, and enhanced AppleScript integration.

Features

  • ✅ Create Projects: Create new projects in Things3 with full metadata support
  • ✅ Create Todos: Create new to-dos with detailed properties including checklists, tags, and dates
  • ✅ View Tasks: List tasks from inbox, today's list, or all projects
  • ✅ Complete Tasks: Mark todos as completed by searching for their title
  • ✅ Search Functionality: Search through all todos by title or content
  • ✅ Robust Error Handling: Comprehensive validation and error recovery
  • ✅ Secure URL Encoding: Proper handling of special characters and unicode
  • ✅ AppleScript Integration: Safe, non-JSON string concatenation approach

Installation

Prerequisites

  • macOS with Things3 installed
  • Python 3.8+
  • Things3 running (for real-time operations)

Install the Server

  1. Clone this repository:
git clone 
cd mcp-things3
  1. Install using pip:
pip install -e .
  1. The server will be available as mcp-server-things3

Tools Available

View Operations

view-inbox

View all todos in the Things3 inbox.

  • Parameters: None
  • Returns: List of inbox todos with due dates and scheduling info

view-projects

View all projects in Things3.

  • Parameters: None
  • Returns: List of all projects with their titles

view-todos

View all todos in today's list.

  • Parameters: None
  • Returns: List of today's todos with metadata

Creation Operations

create-things3-project

Creates a new project in Things3.

Read from source at commit 03f409170308OBSERVED · 2026-10-07
02

Connect

Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control.

claude-code
claude mcp add mcp-server-things3 -- uvx mcp-server-things3
claude-desktop
{
  "mcpServers": {
    "mcp-server-things3": {
      "command": "uvx",
      "args": [
        "mcp-server-things3"
      ]
    }
  }
}
03

Exposed tools (7)

5 read · 2 write · 0 destructive.

ToolRiskDescription
complete-things3-todoreadMark a Things3 todo as completed by searching for its title
create-things3-projectwriteCreate a new project in Things3
create-things3-todowriteCreate a new to-do in Things3
search-things3-todosreadSearch for todos in Things3 by title or content
view-inboxreadView all todos in the Things3 inbox
view-projectsreadView all projects in Things3
view-todosreadView all todos in Things3
04

Trust audit

CAUTIONgrade B · trust 88/100 Install with care. The audit found things worth knowing before you trust its output.

LayerWhat it checksResult
L0Provenance & inventoryWARN
L1Static analysis of the codePASS
L2Instruction surface (what it tells the agent)PASS
L3Class-specific surfacePASS
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
none-observed
Network
none-observed
Shell
none-observed
Dependencies
pinned
Secrets in source
none-found

Findings (4)

MEDIUMInventory / provenance · inv.binary · CWE-1104
src/mcp_server_things3/__pycache__/__init__.cpython-312.pyc
__init__.cpython-312.pyc
Why it matters. a compiled or binary member cannot be reviewed from source
Fix. ship source, or explain the binary in the README
MEDIUMInventory / provenance · inv.binary · CWE-1104
src/mcp_server_things3/__pycache__/applescript_handler.cpython-312.pyc
applescript_handler.cpython-312.pyc
Why it matters. a compiled or binary member cannot be reviewed from source
Fix. ship source, or explain the binary in the README
MEDIUMInventory / provenance · inv.binary · CWE-1104
src/mcp_server_things3/__pycache__/server.cpython-312.pyc
server.cpython-312.pyc
Why it matters. a compiled or binary member cannot be reviewed from source
Fix. ship source, or explain the binary in the README
LOWInventory / provenance · inv.no_license · CWE-1104
Why it matters. no LICENSE file and no repo licence
Fix. add a licence

Gates applied: no_behavioural_pass, no_license.

Audited 2026-10-07 · audit v0.4.1 · source sha 03f409170308full audit observations/trust-audit/mcp-server/drjforrest__things3-integration.json · Report an issue / request a re-scan
05

Audit history

Every audit this server has had. A grade with a past is a grade somebody is still checking.

DateSourceVerdictGradeScoreChange
2026-10-0703f409170308CAUTIONB88first audit
06

Questions

What is the Things3 Integration MCP server?

A Model Context Protocol for reading todos and writing todos and projects in the macOS app Things3 using a combination of Applescript and x-call URLs.

What tools does Things3 Integration expose?

7 in total: 5 read-only, 2 that write, and 0 that can delete or overwrite. Every one is listed on this page with its risk.

Is Things3 Integration safe to connect to an agent?

With care. The audit graded it B (88/100) and found 4 things worth knowing before you trust this server, listed below with the exact line each was found on.

What credentials does Things3 Integration need?

No credential environment variables were found in its source, so it appears to need none.

How does Things3 Integration run?

It speaks stdio, so it runs as a local process your client starts. It is published on PyPI as mcp-server-things3.

How current is this page?

The grade is for one exact copy of the source (03f409170308), read on 2026-10-07. The repository is watched and re-audited when it changes.

Advertisement