update-project
Modify existing project details in Things 3, including title, notes, deadlines, tags, and completion status, using the SupaThings MCP server.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| auth-token | No | ||
| title | No | ||
| notes | No | ||
| prepend-notes | No | ||
| append-notes | No | ||
| when | No | ||
| deadline | No | ||
| tags | No | ||
| add-tags | No | ||
| area-id | No | ||
| area | No | ||
| completed | No | ||
| canceled | No | ||
| reveal | No | ||
| duplicate | No | ||
| creation-date | No | ||
| completion-date | No |
Implementation Reference
- src/index.ts:1930-1956 (handler)The handler for the 'update-project' tool, which updates a project in Things 3 using the Things URL scheme.
"update-project", { id: z.string(), "auth-token": z.string().optional(), title: z.string().optional(), notes: z.string().optional(), "prepend-notes": z.string().optional(), "append-notes": z.string().optional(), when: z.string().optional(), deadline: z.string().optional(), tags: z.array(z.string()).optional(), "add-tags": z.array(z.string()).optional(), "area-id": z.string().optional(), area: z.string().optional(), completed: z.boolean().optional(), canceled: z.boolean().optional(), reveal: z.boolean().optional(), duplicate: z.boolean().optional(), "creation-date": z.string().optional(), "completion-date": z.string().optional(), }, async (params) => { const enriched = await enrichWriteParams("update-project", { ...params }); const url = await openThingsURL("update-project", buildURLParams(enriched)); return buildTextResponse("Updated project in Things", { id: params.id, url }); } );