Connect Claude or ChatGPT to your to-do list with MCP

TaskPocket hosts an MCP server. You add one URL in Claude, ChatGPT or any client that speaks the Model Context Protocol, approve access on a consent screen, and your own assistant can read your tasks, add new ones, move them and plan your day. There is no assistant inside the product; you bring yours, and disconnect it at any time.

By Last updated

What this is, in one paragraph

The Model Context Protocol is the open standard that lets an AI assistant call tools on a server you choose. TaskPocket runs such a server next to your data. It exposes 22 tools over your tasks, projects and areas, the same operations the web app and the iPhone app use, with the same plan rules. Claude and ChatGPT connect to it with the OAuth flow the protocol specifies: the client discovers the server, sends you to a TaskPocket page that names the app and the access it wants, and you approve. Nothing is installed, nothing runs on your machine, and no key is pasted. Clients that configure servers by hand, Claude Code and Cursor among them, can use a personal token instead.

MCP server URL

https://api.taskpocket.io/api/public/v1/mcp

This is not a novel idea and is not sold as one. TickTick and Todoist run MCP servers too. What is different here is what stays out of the product: there is no assistant of ours reading your list. The AI is the one you chose, with the access you approved, and it is off until you connect it. That position is laid out on the no-AI page.

Connect Claude

Claude calls this a custom connector. Once added it works in claude.ai and in the Claude apps that share your connectors; Anthropic's article lists which plans include custom connectors.

  1. Open the connector settings

    In Claude, open Settings, then Connectors, and choose Add custom connector.

  2. Paste the server URL

    Name it TaskPocket and paste https://api.taskpocket.io/api/public/v1/mcp. Leave the advanced OAuth fields empty: the server registers the client itself.

  3. Approve access

    Click Connect. A TaskPocket page opens in your browser and shows the app's name, the address the access will be sent to, and the scopes it asks for. Sign in if you are not, then Approve. You land back in Claude, connected.

  4. Ask something

    Enable the connector in a chat and try “What is on my plate today?” Claude calls get_context and list_tasks and answers from your real list.

Connect ChatGPT

ChatGPT speaks the same protocol and runs the same approval flow. The menu lives behind developer mode, and OpenAI's documentation says which plans can add custom connectors.

  1. Turn on developer mode

    In ChatGPT, open Settings, then Apps & Connectors, then Advanced, and switch on Developer mode.

  2. Create the connector

    Choose Create. Name it TaskPocket, paste https://api.taskpocket.io/api/public/v1/mcp as the server URL, and pick OAuth as the authentication.

  3. Approve the connection in ChatGPT

    ChatGPT sends you to the same TaskPocket consent page. Approve, and the connector's tools register on their own. Enable it in a chat and ask away.

Claude Code, Cursor and clients you configure yourself

Clients that take a server configuration connect with a personal token. Create one in TaskPocket under Settings → API, choose the scopes it should have, and send it as a bearer header. Claude Code can also run the OAuth flow itself: add the server without a header and run /mcp to sign in.

Claude Code

claude mcp add --transport http taskpocket https://api.taskpocket.io/api/public/v1/mcp \
  --header "Authorization: Bearer tp_pat_your_token"

Cursor, in mcp.json

{
  "mcpServers": {
    "taskpocket": {
      "url": "https://api.taskpocket.io/api/public/v1/mcp",
      "headers": { "Authorization": "Bearer tp_pat_your_token" }
    }
  }
}

A token with the read scope alone makes the assistant a reader: the write tools are not even listed to it. Revoke the token in Settings and access ends on the next request.

What a conversation looks like

Two threads, recorded against the real server. The chips are the tools the assistant called. Hover to pause; the tabs switch threads.

Your assistant, connected to TaskPocket

What is on my plate today, and what can wait?

  • get_context
  • list_tasks

Three things are dated today: • Call the dentist (reminder at 09:30) • Send the Q3 invoice, in the Freelance project • Draft the launch post, in Spring launch, with a 10 Oct deadline Two more are overdue from last week: Renew passport and Book the van. Nothing else is dated, so the rest can wait.

Move the dentist call to Thursday and park the van booking in Someday.

  • update_task
  • move_task

Done. Call the dentist is now on Thursday 2 Oct, reminder kept at 09:30. Book the van is in Someday with no date.

The assistant names what it did and asks before it guesses. When it hits a plan rule, a deadline on a free account for example, it says so instead of pretending.

Scenario: The weekly review

How did last week go?

  • get_context
  • list_tasks
  • list_projects

You completed 14 tasks and cancelled 2. Nine of the fourteen were in Freelance, so that is where the week went. Two projects had nothing completed: Garage and Spanish. Four tasks are overdue, all dated last Thursday or earlier. Want me to move the overdue ones to today, or to Someday?

Today for the Freelance ones, Someday for the rest.

  • update_task
  • update_task
  • move_task
  • move_task

Done. Two Freelance tasks are dated today; Fix the gate latch and Find a tutor are in Someday.

Scenario: Clearing the inbox

My inbox has piled up. Sort it out, but ask before you move anything.

  • list_tasks
  • list_projects

Eleven tasks in the inbox. Here is where I would put them: • Freelance: Chase the Acme invoice, Update the portfolio, Reply to Sam about rates • Home: Replace the smoke alarm battery, Return the library books • Someday: Learn to make sourdough, Look into e-bikes, Plan the Lisbon trip Three I cannot place: "Thing from Tuesday", "Ask M", and "the form". Shall I move the eight and leave those three?

Yes, and trash "Thing from Tuesday", I have no idea what that was.

  • move_task
  • move_task
  • move_task
  • move_task
  • move_task
  • move_task
  • move_task
  • move_task
  • trash_task

Moved eight tasks and trashed Thing from Tuesday. It stays in the trash, so you can restore it if it comes back to you. "Ask M" and "the form" are still in the inbox.

Scenario: A read-only check

Anything due before the end of the month that I have not started?

  • get_context
  • list_tasks

Two tasks have a deadline before 31 October and no start date yet: Submit the tax return (deadline 28 Oct) and Renew the car insurance (deadline 30 Oct). Both are in the Admin project.

Set the tax return to start on the 20th.

I cannot change that from here. This connection has the read scope only, so I can look things up but not edit. If you want edits, reconnect with the write scope from Settings in TaskPocket.

What the assistant can do

Every tool runs through the same service layer as the app, so the assistant cannot reach anything you could not reach yourself, and every change shows up on your phone through the normal sync. The scope column is the one on the token or the consent screen.

The tools the TaskPocket MCP server exposes, with the scope each needs
ToolScopeWhat it does
get_contextanyAccount timezone, today’s date there, plan, the scopes this connection has, and the plan limits.
list_tasksreadTasks from one view (inbox, today, upcoming, anytime, someday, logbook, trash, all), filtered by project, area or status, paged by cursor.
get_taskreadOne task with its checklist, repeat rule and Markdown notes.
list_projectsreadProjects with their sections, by area or status.
get_projectreadOne project with its sections.
list_areasreadThe areas that group projects.
create_taskwriteA new task in the inbox, in Someday, or in a project, with a start date, a reminder, a repeat rule and a checklist.
update_taskwriteChange a task’s title, notes, dates, reminder, repeat rule or checklist, or clear any of them.
move_taskwriteMove a task between the inbox, Someday and a project or section.
complete_task, reopen_task, cancel_taskwriteStatus changes. Completing a repeating task rolls it to the next occurrence.
trash_task, restore_taskwriteTo the trash and back.
create_project, update_projectwriteProjects, with notes, an area and (on Premium) a deadline.
complete_project, reopen_projectwriteCompleting a project cancels its open tasks unless told to complete them.
delete_projectwriteMoves the project and its open tasks to the Trash. You restore it from the app.
create_area, update_area, delete_areawriteAreas. Deleting one leaves its projects ungrouped.

The same operations are available over REST. The API page documents them, and the interactive reference lists every field.

What it will not do

  • It will not think for you. The server has no model and no prompts of its own. Whatever the assistant decides comes from the assistant you connected, with your data as input.
  • It will not lift a plan limit. A free account has five projects and two areas, no deadlines, and fourteen days of logbook history, through MCP exactly as in the app. The assistant is told the limits by get_context and gets a plain error if it hits one.
  • It will not erase finished work. Deleting a project moves it and its open tasks to the Trash, where you can restore it. Completed tasks stay in the logbook. Trashing a task is reversible; the assistant can restore it.
  • It will not share your list with anyone else. Each connection is to one account, and a task id from another account is simply not found.
  • It will not run while you are not looking. There are no scheduled jobs, no background agents and no webhooks. The assistant only acts inside a conversation you are having.

Privacy and control

The consent screen shows two things worth reading: the app's name, which the app chose, and the address the access will be sent to, which the app cannot fake. Access tokens live for an hour and renew themselves; a grant lives at most a year before it asks you again. Settings → API → Connected apps lists every grant, and Disconnect ends one at once. A read-only grant cannot be talked into editing: the write tools are hidden from it and refused if called by name. If an account is suspended, every connection becomes read-only, the same as the app.

What the assistant does with what it reads is between you and its vendor. TaskPocket sends your data to the client you connected and to nobody else.

Questions people ask

Which AI assistants work with it?

Any client that supports remote MCP servers over Streamable HTTP. Claude (claude.ai and the Claude apps, through custom connectors) and ChatGPT (through developer-mode connectors) use the OAuth flow. Claude Code, Cursor and similar tools can use either OAuth or a personal token in a header.

Do I need to pay for this?

No. The MCP server and the API are on the free plan. The plan limits you already have apply through them: five projects, two areas, no deadlines and a 14-day logbook window on free. Your assistant vendor may charge for custom connectors; check their plan.

Is my task data sent to an AI company?

Only to the assistant you connect, when it calls a tool in a conversation. TaskPocket has no model of its own and sends nothing anywhere on its own. Disconnect the app in Settings and it stops at once.

Can the assistant delete everything?

With the write scope it can trash tasks (reversible from the trash), delete areas (projects survive, ungrouped) and delete projects (they go to the Trash with their open tasks; finished tasks stay in the logbook). It cannot delete your account or your data wholesale, and a read-only grant cannot change anything.

How do I disconnect an assistant?

In TaskPocket, open Settings → API → Connected apps and click Disconnect. Every token of that grant stops working immediately. For a client you configured with a personal token, revoke the token in the same screen.

Is this an AI feature of TaskPocket?

No. There is no assistant, summariser or model in the product, and the date parser is a deterministic grammar. MCP is a door you can open to your own assistant; it is closed until you do.

Sources

  1. Model Context Protocol, connecting to remote MCP servers (the specification site)checked 2026-09-30
  2. Anthropic, get started with custom connectors using remote MCPchecked 2026-09-30
  3. Anthropic, add a connector that is not in the directorychecked 2026-09-30
  4. RFC 9728, OAuth 2.0 Protected Resource Metadata (how a client finds the authorization server)checked 2026-09-30
  5. TickTick, TickTick MCP (their first-party server)checked 2026-08-26

Connect your own assistant, or none. The free plan has unlimited tasks and needs no card.

Start my list — free