Connect Claude to your tasks

This API answers MCP as well as GraphQL. Give Claude the URL below, sign in, and approve what it asks for — nothing else has to be registered by hand.

The URL

https://tasks-api.hayes2.com/mcp

It has to be this URL exactly. Tokens issued for this API name it, and an address it is not reached by refuses them.

Claude on the web, desktop or mobile

  1. Open Settings → Connectors.
  2. Choose Add custom connector and paste the URL above.
  3. Press Connect, sign in, and approve the access it asks for.

Claude Code

claude mcp add --transport http mainframe-tasks https://tasks-api.hayes2.com/mcp

Then run /mcp inside Claude Code and pick this server to sign in. Add --scope user to the command to have it available in every project rather than just this one.

What you are approving

Signing in shows a consent screen naming the client and everything it asked for:

AccessWhat it means
tasks:readRead your projects and tasks
tasks:writeAdd, edit, complete and delete tasks
offline_accessStay connected without signing in again every hour

Approving is what grants anything. Registering a client on its own grants nothing.

What Claude can do once connected

ToolNeedsWhat it does
Projects - List
projects_list
tasks:readThe projects tasks are filed under, and how many are active in each
Sections - List
sections_list
tasks:readThe headings one project is divided into
Labels - List
labels_list
tasks:readThe labels, each with the @name quick add matches
Templates - List
templates_list
tasks:readThe task templates, and the fields each one asks for
Tasks - List
tasks_list
tasks:readTasks, narrowed by view, project, label, status or a search
Task - Get
task_get
tasks:readOne task in full, with its subtasks, comments, repeat and reminder
Tasks - Counts
task_counts
tasks:readInbox, today, overdue and upcoming, in one call
Tasks - Analytics
task_analytics
tasks:readWhat was created and finished, day by day
Task - Create
task_create
tasks:writeOne line of quick-add text: Renew the registration p1 #Home @errand
Task - Update
task_update
tasks:writeTitle, notes, project, section, labels, priority, due date, reminder, repeat
Task - Complete
task_complete
tasks:writeMarks it done; a repeating task moves to its next occurrence
Task - Reopen
task_reopen
tasks:writePuts a completed task back on the list
Task - Duplicate
task_duplicate
tasks:writeCopies a task and its subtasks
Task - Delete
task_delete
tasks:writeDeletes it and its subtasks
Tasks - Bulk edit
tasks_bulk
tasks:writeComplete, reopen, delete or refile a whole list in one call
Task - Add comment
task_comment_add
tasks:writeLeaves a note on a task
Task - Create from template
task_create_from_template
tasks:writeFills a template in and gets an ordinary task
Project - Create
project_create
tasks:writeA new project to file tasks under
Project - Update
project_update
tasks:writeRenames it or changes how it looks
Project - Archive
project_archive
tasks:writePuts a finished project away, or brings it back
Project - Delete
project_delete
tasks:writeDeletes it and everything filed in it
Section - Create
section_create
tasks:writeAdds a heading to a project
Section - Update
section_update
tasks:writeRenames a heading or moves it
Section - Reorder
section_reorder
tasks:writeRewrites the order of a project's headings
Section - Delete
section_delete
tasks:writeRemoves a heading; its tasks are kept
Label - Create
label_create
tasks:writeA new label to tag tasks with
Label - Update
label_update
tasks:writeRenames a label or changes its color
Label - Delete
label_delete
tasks:writeDeletes it; the tasks carrying it lose the tag
Template - Create
template_create
tasks:writeA kind of task, and the questions it asks
Template - Update
template_update
tasks:writeChanges a template and the fields it asks for
Template - Delete
template_delete
tasks:writeDeletes it; the tasks made from it are untouched

Claude is only offered the tools your approval covers, and the API enforces the same scopes on every operation — so an approval that covers reading cannot change anything by any route. Every tool that reads is marked read-only, and every one that deletes says so, which is what lets a client run the reads without asking each time.

Ready-made prompts

Beside the tools, this server offers three prompts. Each one is a routine somebody would otherwise have to describe every time, and all three propose what they would do before changing anything:

PromptWhat it walks through
Daily review
daily_review
What is overdue, due today, and sitting in the inbox
Weekly plan
weekly_plan
The week just gone, and the one ahead
Inbox triage
inbox_triage
Files everything in the inbox into a project

Managing or removing access

Every connection shows up under Connected apps on your account page. Disconnecting one there signs it out and forgets the approval, so it has to be approved again rather than quietly reconnecting.

If it will not connect