About Taskpile.app
Taskpile is a personal task tracker for capturing tasks and organizing them into a short daily Today list. It serves individual users and teams, with MCP tools for task, project, and team workflows.
Key features
- 01Capture and manage tasks
- 02Organize tasks by project and tag
- 03Search and bulk-update tasks
- 04Plan Today and review queues
- 05Manage teams and shared projects
- 06Configure digests and reminders
Use cases
- 01Capture tasks from an MCP-compatible chat client
- 02Sort a task backlog into a daily list
- 03Update or complete tasks in bulk
- 04Assign tasks within a shared project
MCP support
Taskpile provides a hosted MCP server over Streamable HTTP, exposing tools for tasks, projects, tags, bulk actions, teams, and reminders. Clients authenticate through OAuth 2.1.
Configuration
Remote servers need no local install. Pick your client, then copy the config or install in one click.
https://taskpile.app/api/mcpclaude mcp add --transport http taskpile https://taskpile.app/api/mcp{"mcpServers":{"taskpile":{"type":"http","url":"https://taskpile.app/api/mcp"}}}Open in Cursor{"servers":{"taskpile":{"type":"http","url":"https://taskpile.app/api/mcp"}}}Open in VS Code{"mcpServers":{"taskpile":{"type":"http","url":"https://taskpile.app/api/mcp"}}}{"mcpServers":{"taskpile":{"serverUrl":"https://taskpile.app/api/mcp"}}}Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.
Tools
Details
From the project READMETaskpile MCP
Public documentation for Taskpile's Model Context Protocol server.
Never forget a thing. Stay focused on today. Taskpile is a personal task tracker built around two verbs: pile in, sort out. Capture anything the moment it shows up, from Claude, ChatGPT or any MCP-compatible client, or in the app at taskpile.app. A two-minute daily review turns the pile into one short Today list; everything else waits its turn.
Taskpile is listed in the Claude connectors directory.
- App: https://taskpile.app
- MCP endpoint:
https://taskpile.app/api/mcp - Transport: Streamable HTTP (JSON-RPC 2.0)
- Protocol versions supported:
2025-11-25,2025-06-18,2025-03-26,2024-11-05
This repository contains only public-facing documentation for the MCP integration. The Taskpile app itself is a hosted commercial product: its source isn't here, but everything you need to connect a client and use the MCP tools is.
Connecting
Any MCP-compatible client can connect by pointing at the URL above. Authentication uses OAuth 2.1 with Dynamic Client Registration + PKCE. The client handles this automatically; users sign in to Taskpile in a browser tab when prompted.
Verified clients:
| Client | Status |
|---|---|
| Claude.ai (Connectors) | ✅ |
Claude Desktop (via mcp-remote) | ✅ |
| Claude Code | ✅ |
| ChatGPT (Connectors) | ✅ |
| Le Chat (Mistral) | ✅ |
| Cursor | ✅ |
| Zed | ✅ |
| MCP Inspector | ✅ |
| Lovable.app | ✅ |
Quick start by client
See examples/ for ready-to-paste config snippets:
For hosted clients like Claude.ai and ChatGPT, add Taskpile via their built-in connector UI and paste the URL above; no local config needed.
Tools
Taskpile exposes 72 tools spanning task CRUD, projects, tags, colors, search, bulk operations, teams, and account integrations like morning digest and task reminders. The full machine-readable schema (names, descriptions, JSON Schema for inputs and outputs) is in tools.json, generated from the server's tool schema.
tools/list is tailored to the account, so a client usually sees fewer than 72: team administration tools appear once the user belongs to a team, project-member tools once they have a shared project, assignment/triage tools once they can reach a team-owned project, and search/fetch only for OpenAI clients. Hidden tools stay callable; the entry points (create_team, convert_project_to_shared, invite_to_project, list_received_invitations, accept_invitation) are always listed.
A quick taste:
create_task,list_tasks,update_task,complete_task,delete_taskassign_horizon(today_morning, tomorrow, next_week, etc.),delegate_task,set_recurrencelist_projects,create_project,archive_projectsearch_tasks(free-text + status/horizon filters)bulk_complete,bulk_archive(reversible, prefer it overbulk_delete),bulk_delete,bulk_assign_horizon(up to 200 ids per call)changes_since(incremental sync: deletions are not reported, so reconcile with a full fetch periodically; capped at 500 rows per call),get_today,get_review_queuelist_closed_tasks(what got completed in a date range)get_morning_digest,configure_morning_digest,get_task_reminders,configure_task_reminderslist_colors,create_color,update_color,delete_colorwhoami,get_inbox_email- Teams:
create_team,invite_to_team,accept_invitation,assign_task,convert_project_to_shared, etc. searchandfetch(ChatGPT Connectors built-in tools, mapped to Taskpile)
Conventions
A few project-wide conventions worth knowing if you're writing a prompt:
- Tags use
@tag_name. Projects use#project_name. Do NOT use#for tags:#foois silently treated as a project name. create_taskparses#projectand@tagshorthand from the title. Only the FIRST#token becomes the project; the rest are stripped.#nameresolution covers projects shared with you, not just your own. If the name is unique it's used; if it's ambiguous (e.g. a private AND a shared project with the same name) the call fails with a candidate list: ask the user which, then retry with an explicitprojectId. If nothing matches, a new project you own is created.- To set tags at creation, pass
tags: string[]and/or put@tagin the title. Both forms work and are de-duplicated. update_taskdoes not parse#/@shorthand from the title. Usetags/addTags/removeTagsandprojectIdto change those.- Prefer dedicated verbs over
update_taskwhen they exist:complete_task,assign_horizon,delegate_task. - Bulk endpoints accept up to 200 ids per call.
Auth flow
If you're building a client and want to know what to expect:
- Client sends an unauthenticated request to
https://taskpile.app/api/mcpand receives401withWWW-Authenticate: Bearer realm="taskpile", resource_metadata="https://taskpile.app/.well-known/oauth-protected-resource". - Client fetches
https://taskpile.app/.well-known/oauth-protected-resourceand…/oauth-authorization-serverto discover endpoints. - Client POSTs to
https://taskpile.app/oauth/registerfor Dynamic Client Registration (RFC 7591). - Client kicks off the standard authorization-code + PKCE flow, opens a browser at
/oauth/authorize, exchanges the code at/oauth/token, and receives anaccess_token. - Subsequent requests carry
Authorization: Bearer <token>. Access tokens are valid for 30 days. A client that registers therefresh_tokengrant also gets a refresh token, valid for 90 days and rotated on every use; other clients re-run the authorize/token flow on expiry. Tokens can be revoked at/oauth/revoke(RFC 7009).
HEAD /api/mcp returns 200 without auth and is intended for liveness probes only.
Privacy + data handling
- Taskpile is GDPR-compliant. Tasks, projects, and tags created via MCP are user-owned and visible only to the authenticated user (and their team members for shared projects).
- The MCP integration sends task content to Taskpile's servers (EU-hosted). It does NOT route through Anthropic, OpenAI, or any other LLM provider: those are clients of the MCP server, not the server itself.
- Personal access tokens can be created in Taskpile → Settings → Integrations and revoked at any time.
Issues and feedback
This repo is for documentation. Bug reports about the MCP server, feature requests for new tools, or questions about the API: please open an issue here and we'll triage.
For Taskpile app issues (unrelated to MCP), please contact us through the app at https://taskpile.app.
License
Documentation in this repository is MIT-licensed (see LICENSE). The Taskpile app itself is a hosted commercial product and is not licensed for redistribution.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.