原型 · 预览版:收录官方注册中心里的全部服务器,每 30 分钟同步一次。使用 Google 登录即可撰写评价。原型 · 每 30 分钟更新
PopNx MCP为使用 AI 的人准备的 MCP 服务器 · 用大白话讲清楚

TaskLite

作者:shimon-ks版本 0.14.4i★ 0i电脑或云端
注册名称net.tasklite/mcp

安装方法

What it does

tasklite.net: hosted backend, REST API and admin for apps built by AI agents

  • Connects 电脑或云端
  • Account or key No key needed
  • Category 其他

安装

选择你使用的 AI 应用,然后复制设置。

通过 5/5 项检查 · 你的提问会经过开发者的服务器(mcp.tasklite.net) · ✓ 命令已检查 2026年11月13日

第一步:你用哪个 AI?

选择你用的应用,步骤会显示在下方。

可连接 Claude · 约 2 分钟

不需要密钥,不用安装程序 · 在 claude.ai 或桌面应用设置一次,即可在聊天中使用 · 免费账户可添加 1 个 · Team/Enterprise 方案由所有者(Owner)添加

  1. 打开 Claude 的 Connectors 页面

    CustomizeConnectors

    CustomizeConnectors1Add2https://…3Add4
  2. 点击“Add” → “Custom” → “Web”,填写这 2 项

    把这里的内容复制到 Claude 中同名的输入框,然后点击 Continue

    Name · 名称TaskLite
    Remote MCP server URL · 地址https://mcp.tasklite.net/mcp

    在 Claude 检测到的登录设置页点击 Continue · Authentication 按作者说明选择(Sign in now、Sign in when needed 或 No sign in),然后点击 Add

  3. 在聊天中开启

    +ConnectorsTaskLite

  4. 试一试

    用 TaskLite 告诉我你能帮我做什么,然后做一件给我看

    ✓ 如果 Claude 说正在使用 TaskLite,或回答中出现 TaskLite 的工具名称,就表示连接成功

菜单名称已于 2026年11月11日 对照 Anthropic 帮助页面核实 · 你的界面可能因版本略有不同

能否连接 ChatGPT 取决于方案

完整 MCP:网页版 ChatGPT Business、Enterprise 或 Edu · Pro:以读取/获取权限连接,修改数据的工具可能用不了 · Plus:官方文档尚未确认,如果在插件页看到添加自定义 MCP 的选项可以试试 · 仅限网页

  1. 在网页版 ChatGPT 打开添加 MCP 的页面

    Plugins+Add custom MCP server

    ChatGPTPlugins1+2https://…3Create4
  2. 填写名称和地址

    输入名称,在 Connection 下粘贴地址,勾选风险提示,然后点击 Create as a plugin

    Name · 名称TaskLite
    Connection · 地址https://mcp.tasklite.net/mcp
  3. 在聊天中选择 TaskLite

    开启新聊天,输入前先从插件列表中选择 TaskLite

  4. 试一试

    用 TaskLite 告诉我你能帮我做什么,然后做一件给我看

    ✓ 如果 ChatGPT 说正在使用 TaskLite,或回答中出现 TaskLite 的工具名称,就表示连接成功

菜单名称已于 2026年11月11日 对照 OpenAI 帮助页面核实 · 你的界面可能因版本略有不同

可连接 Claude Code · 约 2 分钟

不需要密钥,不用安装程序

  1. 打开终端

    Mac:按 Command+空格,输入 Terminal · Windows:打开 PowerShell

  2. 粘贴这条命令并按 Enter

    claude mcp add --transport http --scope user tasklite https://mcp.tasklite.net/mcp
  3. 在 Claude Code 中输入 /mcp

    应能看到 TaskLite 在列表中并显示已连接

  4. 试一试

    用 TaskLite 告诉我你能帮我做什么,然后做一件给我看

    ✓ 如果 Claude Code 说正在使用 TaskLite,或回答中出现 TaskLite 的工具名称,就表示连接成功

菜单名称已于 2026年11月11日 对照 Anthropic 帮助页面核实 · 你的界面可能因版本略有不同

可连接 Cursor · 约 2 分钟

不需要密钥,不用安装程序

  1. 点击这个按钮打开 Cursor

    在 Cursor 中打开

    Cursor 会请你确认安装,点击 Install

  2. 在 Cursor 中以 Agent 模式打开 AI 聊天

  3. 试一试

    用 TaskLite 告诉我你能帮我做什么,然后做一件给我看

    ✓ 如果 Cursor 说正在使用 TaskLite,或回答中出现 TaskLite 的工具名称,就表示连接成功

菜单名称已于 2026年11月11日 对照 Cursor 帮助页面核实 · 你的界面可能因版本略有不同

可连接 VS Code · 约 2 分钟

不需要密钥,不用安装程序

  1. 点击这个按钮打开 VS Code

    在 VS Code 中打开

    VS Code 会请你确认安装,点击 Install

  2. 在 VS Code 中以 Agent 模式打开 AI 聊天

  3. 试一试

    用 TaskLite 告诉我你能帮我做什么,然后做一件给我看

    ✓ 如果 VS Code 说正在使用 TaskLite,或回答中出现 TaskLite 的工具名称,就表示连接成功

菜单名称已于 2026年11月11日 对照 VS Code 帮助页面核实 · 你的界面可能因版本略有不同

其他支持 MCP 的应用(如 Windsurf、Zed、Gemini CLI)添加方式各不相同,请在应用列表中查看

查看所有支持 MCP 的应用 →

通过网页连接的应用使用的地址

地址https://mcp.tasklite.net/mcp

JSON 设置在下方“开发者专用”中

卡住了?问问正在用 TaskLite 的人💬 讨论 →
开发者专用:终端命令和 JSON 设置

通过网页连接

Claude Code

claude mcp add --transport http --scope user tasklite https://mcp.tasklite.net/mcp

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "tasklite": {
      "url": "https://mcp.tasklite.net/mcp"
    }
  }
}

VS Code (mcp.json)

{
  "servers": {
    "tasklite": {
      "type": "http",
      "url": "https://mcp.tasklite.net/mcp"
    }
  }
}

安装在电脑上

Claude Code

claude mcp add --scope user tasklite -- npx -y @tasklite/mcp

Claude Desktop (claude_desktop_config.json)

{
  "mcpServers": {
    "tasklite": {
      "command": "npx",
      "args": [
        "-y",
        "@tasklite/mcp"
      ]
    }
  }
}

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "tasklite": {
      "command": "npx",
      "args": [
        "-y",
        "@tasklite/mcp"
      ]
    }
  }
}

VS Code (mcp.json)

{
  "servers": {
    "tasklite": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@tasklite/mcp"
      ]
    }
  }
}

这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。

一览

每周下载量i
540/周
已验证域名
✓ tasklite.net
连接方式
电脑或云端
传输方式
stdio, streamable-http
最新版本i
0.14.4
分类i
其他
发布到注册中心i
2026年9月16日
代码最后更新i
2026年11月13日
作者
shimon-ks
软件包
npm: @tasklite/mcp
注册状态
活跃

哪些应用可以使用它

依据这个服务器的连接方式和各应用自己的文档,检查于 2026年11月10日。

通过互联网连接,适用于

ClaudeChatGPTGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatOpen WebUIRaycast

在你的电脑上运行,适用于

ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast

全部应用及其优缺点 →

它能做什么

工具名称和描述与服务器在 2026年11月14日 报告的完全一致。这些内容由作者撰写,不是我们写的;我们以纯文本形式显示。

  • list_organizations

    List the organizations the authenticated user belongs to. Use the returned id as organizationId in other tools.

  • get_email_usage

    How much of the monthly email quota an organization has used: emails sent this month, emails waiting in the queue, the plan limit (Free 300, Plus 3000, Pro 20000; null means unlimited), whether the plan allows marketing email, and whether sending is paused for the organization (t

  • configure_external_access

    Read or change how EXTERNAL users (people who sign up to your app through TaskLite auth) get into an organization. This policy governs sign-up by email and password and by Google. Sign-in by a phone code (POST /auth/otp/send, then /auth/otp/verify) obeys only "invite": under "clo

  • list_projects

    List projects in an organization. The API returns 50 per page, an organization with more than that needs page 2 and beyond, so check the returned total before assuming a project does not exist.

  • list_boards

    List the boards inside a project, id, name, description. Every other board tool needs a boardId, and this is the only way to discover one without being handed a URL.

  • create_project

    Create a project (a business process container). Boards with data live inside projects.

  • create_board

    Create a board (a data table) inside a project. Add typed columns with create_column afterwards. kind: "tasks" (default) also gives the board the built-in task columns, status, priority, assignee, due date, tags, for work people track; "data" creates a plain table with only the c

  • create_column

    Add a typed column to a board. Valid types: text, rich_text, number, status, date, datetime, duration, people, checkbox, dropdown, label, priority, link, email, phone, relation, lookup, rollup, formula, rating, currency, file. Choose by meaning, date for dates, phone for phones,

  • get_board_schema

    Get a board with its full column schema (ids, names, types, settings). Call this before creating items with cells.

  • update_board

    Rename a board or change its description. Structure (columns) is changed with update_column / delete_column / reorder_columns.

  • delete_board

    Delete a board with every item on it. Destructive and not undoable, confirm with the user first, and prefer delete_column when only part of the model is wrong.

  • delete_project

    Delete a project with every board, column and row inside it. Destructive: confirm with the user first, and name the project in the confirmation. The project goes to the organization recycle bin, so it can be restored from the admin until it is emptied.

  • update_column

    Change a column after the fact: rename it, change its type (e.g. number -> currency), replace settings (dropdown options), or set isRequired / isHidden. A type change converts existing values (number↔currency, text→number/date/checkbox, anything→text) and clears the ones that can

  • delete_column

    Delete a column and every value stored in it. Destructive, confirm with the user first. Use update_column when the column is right but its name, type or options are wrong.

  • reorder_columns

    Set the display order of a board's columns. Pass every column id in the wanted order (get_board_schema lists them).

  • export_project

    The whole project as JSON, boards, columns with settings, items with their cells keyed by column id. For migrations, backups and reading a system back. Items are capped per board for the model's sake; the REST endpoint GET /organizations/{orgId}/projects/{projectId}/export.json r

  • query_items

    List items (rows) of a board, including their cell values. Returns all items unless limit/page are given (the API defaults to 50 per page when unpaged, so the tool pages through and concatenates). Narrow the result with search, status, priority and sort instead of fetching everyt

  • create_item

    Create an item (row) with all of its data in one call. cells maps columnId -> value (use get_board_schema for column ids); every cell is saved with the row. Use set_cell only for later edits.

  • update_item

    Update item fields (title, description, status, priority, dueDate, tags). On a data board the task fields (status, priority, dueDate, tags) are hidden: its columns, status included, are set with set_cell.

  • set_cell

    Set a single cell value on an item by columnId.

  • get_cells

    Read cells of one item from the database (not a cache): one current value per column, the value set_cells_if_unchanged compares. Use it to decide a conditional write, and pass each value back as `expected` exactly as it came.

  • set_cells_if_unchanged

    Compare-and-set on cells of one item, all or none. Each cell carries the value you read (`expected`, null = empty) and the value to write. If any cell no longer holds its `expected`, nothing is written and the answer is an error with code CELL_CONFLICT and `conflicts` [{columnId,

  • delete_item

    Delete an item. Destructive, confirm with the user before calling.

  • list_comments

    List the comments (the correspondence thread) on an item, oldest first. Each comment includes its author and any @mentions. Needs projectId and itemId (get itemId from query_items).

  • add_comment

    Post a comment on an item's thread. To notify people, pass their user ids in mentionedUserIds (each also appears as an @mention). attachmentIds references already-uploaded files. Needs projectId and itemId.

  • update_comment

    Edit the text of an existing comment. Only the author can edit their comment. Needs projectId, itemId and the commentId.

  • delete_comment

    Delete a comment from an item thread. Destructive, confirm with the user before calling. Needs projectId, itemId and the commentId.

  • request_file_upload

    Create a link that puts files onto an item from outside TaskLite: the customer's photos, a signed contract, a logo, a build zip. Returns an address like https://app.tasklite.net/upload/ that anyone you hand it to can use with no account, no login and no API key; pass clientEmail

  • list_uploaded_files

    The files attached to an item, including everything that came in through a request_file_upload link, each with a download URL that is signed and short lived (mint a fresh one by calling again). Also lists the upload links on the item and how many files each has taken, which is ho

  • create_signature_request

    Send a PDF for electronic signature and get the signing links back. One call: the PDF (an attachment already on an item, see list_uploaded_files / request_file_upload, or the bytes as base64), the signers, and optionally the row it belongs to. Each signer opens a personal link wi

  • list_signature_requests

    Documents sent for signature, newest first, with each signer's state (sent, viewed, signed, declined). Filter by the row they belong to or by status (out_for_signature, completed, declined, voided, expired, failed).

  • get_signature_request

    One document sent for signature: status, signers and their state, and when complete a short-lived download URL of the signed PDF (with its evidence page).

  • signature_link

    A fresh signing link for one signer whose turn it is, to open on the spot (the agent's phone) or to send yourself. Their previous link stops working.

  • void_signature_request

    Cancel a document that is out for signature: every link stops working. A completed document cannot be voided.

  • list_telephony_providers

    Read-only. List the phone systems (PBX providers) an app can be connected to, what each can do (call log, live calls, recordings, click-to-call), and which fields it needs: public settings such as the server address go to start_telephony_connection, secret fields (the API token)

  • get_telephony_connection

    Read-only. The phone system connection of an app: provider, status (pending = link made and no token typed yet, connected, error), the public settings, whether a token is stored (never the token), the board mapping, the last sync result and the last error. connection is null when

  • start_telephony_connection

    Start connecting an app to a phone system (PBX) and get the one-time link the CUSTOMER opens to type the API token themselves. The token never passes through the chat, you or the logs: do not ask for it, do not accept it pasted. Send the link to the customer as is. It works once,

  • test_telephony_connection

    Check the stored token against the customer's phone system: a one-day call log read. Answers { ok, message } with a Hebrew message that can be shown to the customer as is, and records the result on the connection. It only reads from the PBX. Owner or admin of the app.

  • configure_telephony_mapping

    Say where the calls go: the board that receives one row per call, which column gets which call field, and, optionally, how a call is linked to a customer (by the other party's phone number, Israeli numbers compared in one normal form: 05x, +9725x, 9725x) and to an employee (by th

  • preview_telephony_sync

    Read-only for TaskLite: reads the call log from the customer's PBX for a range and shows what a sync would write, without writing anything or moving the sync position. Returns counts (fetched, already on the board) and the last 20 calls as board rows (title, cells by column id, t

  • run_telephony_sync

    Sync now: read the call log from the PBX and write each new call as a row on the mapped board, as the signed-in user, through the board's normal path (so the board's automations run for every new row). Safe to repeat: a call already written is never written twice (deduped by the

  • disconnect_telephony

    Remove the phone system connection of an app: the stored token, the mapping and the record of which calls were written are deleted, and syncing stops. Rows already written to the board stay. Reconnecting later starts from start_telephony_connection and may write the recent calls

  • revoke_upload_link

    Close an upload link before it expires, so the address stops accepting files. The files already uploaded stay on the item. Use it as soon as the material is in, because until then anyone holding the link can add more.

  • create_app

    Create an app, a named API surface over the boards of a project, for an external frontend. Then add endpoints and an API key.

  • push_status

    Whether an app can send push notifications to phones, and how many devices are registered. Push goes out through the customer's OWN Firebase project, so it has to be configured once per app before send_push automations do anything. This tool never returns the key.

  • send_test_push

    Send one real push notification to the given app users, to prove the chain works before an automation depends on it. Confirm with the user first: this reaches actual phones.

  • publish_app

    Publish an app, required before its API endpoints accept external calls.

  • create_app_endpoint

    Expose a board as a REST endpoint of an app: /apps/{appSlug}/api/{slug}. exposedColumns limits which columns are readable/writable. rowLevelSecurity.enabled makes the endpoint per-user: the developer's server sends `X-App-User: ` next to the API key, and the endpoint returns, upd

  • list_app_endpoints

    List an app's REST endpoints, slug, board, allowed methods, and how many columns each exposes. An endpoint exposing 0 columns is broken: it returns only item metadata and silently discards writes.

  • update_app_endpoint

    Change an existing endpoint, most often to set exposedColumns on one that was created without them. Get the endpoint id from list_app_endpoints and the column ids from get_board_schema. In rowLevelSecurity mode phone, phoneColumns adds more phone columns next to phoneColumn (up t

  • delete_app_endpoint

    Delete an endpoint of an app for good: /apps/{appSlug}/api/{slug} stops answering at once and the endpoint cannot be brought back (create it again with create_app_endpoint). The board and its rows are not touched. Confirm with the user first: a frontend that calls this endpoint b

  • google_calendar_status

    Whether the signed-in user has connected Google Calendar to TaskLite, which Google account, and what the connection may do: canWriteOwnCalendars (add, change and delete events in the calendars TaskLite creates in that account), canReadBusy (read when the person is already busy in

  • google_calendar_connect

    Get the link that connects the signed-in user's Google Calendar to TaskLite. Send connectUrl to the person as is: they open it, approve on Google's own page, and come back. It lasts 24 hours and can be opened again in that time; calling again makes a new one. Only that person can

  • google_calendar_set_return_path

    Save on an app the page the browser returns to after a Google Calendar connection started for that app (google_calendar_connect with appId, or the site's own "connect" button through POST /integrations/oauth/google_calendar/initiate with appId). Only a path, e.g. "/#admin": the d

  • google_calendar_disconnect

    Disconnect the signed-in user's Google Calendar from TaskLite: the access is revoked at Google and forgotten here. Events already in the calendar stay where they are. Every app of this user stops writing to the calendar until it is connected again. Only when the person asked for

  • google_calendar_ensure_calendar

    Find, or create the first time, the calendar TaskLite keeps in the user's Google account under a name (default "פגישות"). It appears in their Google Calendar beside their own calendars, with its own colour, on every device. Returns { calendarId, created }. The event tools find it

  • google_calendar_list_events

    The events of a TaskLite calendar in the user's Google account that touch the days from..to (inclusive), in order, with times as the wall clock in timeZone. Each: id (for update and delete), summary, description, location, date, endDate, from, to (null for an all-day event), allD

  • google_calendar_create_event

    Add an event to a TaskLite calendar in the user's Google account. Times are wall clock in timeZone; from and to both left out make an all-day event. key (e.g. the row id of the booking) makes it safe to call again: the same key updates the one event instead of adding a second, an

  • google_calendar_update_event

    Change some fields of an event (id from google_calendar_list_events or create). What is not given stays: moving only from/to keeps the day, moving only date keeps the hours (and the length of a multi-day event). attendees replaces the list; they are emailed only with sendInvitati

  • google_calendar_delete_event

    Delete one event from a TaskLite calendar in the user's Google account. Deleting one already gone is not an error (alreadyGone true). notifyAttendees true emails its guests that it was cancelled.

基础检查i

我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月15日

  • ✓ 通过

    作者与仓库一致

    注册名称已通过域名 tasklite.net 验证(注册中心会核实域名所有权)

  • ✓ 通过

    仍在维护

    代码最后更新于前天

  • ✓ 通过

    有许可证

    使用 MIT

  • ✓ 通过

    端点有响应

    在 362 毫秒内响应(HTTP 200)

  • – 不适用

    使用 OAuth 登录

    无需登录

  • ✓ 通过

    工具描述中没有隐藏指令

    已读取 60 个工具描述,未发现针对 AI 的隐藏指令

已公开的漏洞(OSV.dev)

OSV.dev 中没有 @tasklite/mcp@0.14.4 的记录

只检查这个版本的包本身,不包括所有依赖 · 检查于 2026年11月15日

我们检查什么 → · JSON

作者:申请重新检查或报告信息错误

讨论

提问、分享技巧或报告无法使用。按“有帮助”数量排序。

还没有帖子,欢迎第一个提问或分享。

此处内容由用户撰写,不代表 PopNx 团队。

登录后发帖

用户评价

还没有评价

登录后写评价

与“其他”中的其他服务器比较i

  • 星标数多于此分类中其他 19912 个服务器的 0%
  • 发布到注册中心的时间比此分类中其他 19912 个服务器的 41% 更新
  • 基础检查结果等于或优于此分类中其他 19912 个服务器的 100%

与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。

常见问题

TaskLite 安全吗?

它在 5 项适用的基础检查中通过了 5 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。

它需要哪些密钥或代码?

注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。

它在我的电脑上运行还是在云端?

两种方式都可以:安装在你的电脑上,或者连接云端版本。

它还在维护吗?

GitHub 仓库最后更新于前天,最新版本(0.14.4)于2个月前进入注册中心。

哪些应用可以使用它?

支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。它通过 URL 连接,因此也能用于接受远程 MCP 的应用,例如网页版 ChatGPT(Business 及以上为完整 MCP;Pro 为只读)。

有什么可以替代它?

同一分类中有:World Monitor, openstatus, Oh My Posh Validator, Strata, Jitsu

功能相近的其他选择

同一分类、其他作者、命令已通过检查。官方的排在前面,再按星标排序。

如何看卡片:↓ 每周下载量i★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i

World Monitor

Real-time global intelligence on conflict, markets, energy, trade, shipping and cyber. 97 tools.

作者:koala73广泛使用★ 9.1万昨天更新

在云端运行✓ 服务方 · worldmonitor.app

openstatus

Manage monitors, status pages, incidents and maintenances in your openstatus workspace.

作者:openstatusHQ广泛使用★ 92652个月前更新

在云端运行✓ 服务方 · openstatus.dev

Oh My Posh Validator

Validate oh-my-posh configurations and segment snippets against the official schema.

作者:JanDeDobbeleer广泛使用★ 2.4万 整个仓库的星标26天前更新

在云端运行✓ 服务方 · ohmyposh.dev

Strata

MCP server for progressive tool usage at any scale (see https://klavis.ai)

作者:Klavis-AI正在增长★ 582714个月前更新

在云端运行仓库已归档✓ klavis.ai

Jitsu

Manage Jitsu data pipelines: destinations, streams, connections, functions, live events.

作者:jitsucom广泛使用★ 51354个月前更新

在云端运行✓ 服务方 · jitsu.com
  • World Monitor — 在云端运行,无需安装 · 不需要密钥
  • openstatus — 在云端运行,无需安装 · 不需要密钥
  • Oh My Posh Validator — 在云端运行,无需安装 · 不需要密钥
  • Strata — 在云端运行,无需安装 · 不需要密钥
  • Jitsu — 在云端运行,无需安装 · 不需要密钥

作者的 README

打开 README

按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。

@tasklite/mcp

A backend and an admin for apps built by AI agents. tasklite.net · docs

Describe a system and get the thing behind it: a project with typed tables and relations, rows, REST endpoints, an API key, and an admin interface the business itself operates afterwards. From Claude Code, Claude Desktop, ChatGPT, Gemini, Cursor or VS Code. Deploy a frontend onto it and hand the whole thing over.

Not the CLI task manager. There is an older, unrelated project also called

TaskLite, ad-si/TaskLite at

tasklite.org, a command-line task manager. This is a

different product from a different author: a hosted backend at

tasklite.net, published as @tasklite/mcp and as net.tasklite/mcp in

the MCP registry.

The 78 tools

78 when installed locally, 73 over the hosted server (the five account tools sign_up connect login disconnect connection_status exist only locally; hosted connections sign in with OAuth). Every tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint, so a client can tell what is safe to run unattended.

AreaTools
Accountsign_up connect login disconnect connection_status list_organizations configure_external_access
Structurecreate_project create_board create_column update_board update_column delete_board delete_column delete_project reorder_columns get_board_schema list_projects list_boards export_project
Dataquery_items create_item update_item set_cell get_cells set_cells_if_unchanged delete_item search fetch
Commentslist_comments add_comment update_comment delete_comment
Filesrequest_file_upload list_uploaded_files revoke_upload_link
Signaturescreate_signature_request list_signature_requests get_signature_request signature_link void_signature_request
Phone systems (PBX)list_telephony_providers get_telephony_connection start_telephony_connection test_telephony_connection configure_telephony_mapping preview_telephony_sync run_telephony_sync disconnect_telephony
Apps and APIbuild_backend create_app publish_app list_apps get_app_spec create_app_endpoint list_app_endpoints update_app_endpoint delete_app_endpoint create_app_api_key configure_app_settings get_email_usage
App users, invites and linkslist_app_users add_app_user set_app_user_role remove_app_user create_app_invite list_app_invites revoke_app_invite check_invite_code link_app_user list_app_user_links unlink_app_user
Roles, policies and historylist_app_roles define_app_role delete_app_role grant_app_role revoke_app_role list_app_role_grants get_policy_identity set_policy_identity get_board_policy set_board_policy delete_board_policy explain_access simulate_request get_item_history
Frontend hostingdeploy_frontend list_deployments get_deployment_files rollback_deployment get_frontend_prompt
Automation and pushcreate_automation update_automation list_automations push_status send_test_push
Apps with two kinds of users

An endpoint's rowLevelSecurity.mode decides which rows a signed-in user reaches: owner (the rows they created), shared (every row, for authorized users), phone (the rows that carry their verified phone) or relation (the rows linked through a relation column to the row that stands for them). A coaching app, coaches and their trainees in one organization, is built from these:

BoardEndpoint security
Coachesmode: "phone", phoneColumn: the phone column. Each coach reads and edits his own row.
Traineesmode: "relation", relationColumn: Trainees.Coach, identityPhoneColumn: Coaches.Phone, allowInvites: true. A coach sees only his trainees and can invite each to her row.
Weigh-ins (coach)mode: "relation", relationColumn: Weigh-ins.Trainee, viaColumn: Trainees.Coach. One more hop: the weigh-ins of all his trainees.
Weigh-ins (trainee)A second endpoint on the same board: mode: "relation", relationColumn: Weigh-ins.Trainee.

A user "is" a row through an invite code (create_app_invite, or minted by a coach inside the app when the endpoint has allowInvites), through link_app_user, or with no link at all when their verified phone or email is written in the row (identityPhoneColumn, identityEmailColumn). configure_external_access with registrationPolicy: "invite" lets new people in only with a code. rowLevelSecurity accepts only the keys the server reads: an unknown key is refused, never dropped.

build_backend is the one to reach for first: it takes a description of a system and creates the project, the boards, their typed columns including the relations between them, sample rows, and a published REST API with a key, in one call, instead of a dozen.

Roles, policies and history

When people in one app may see different things (a manager sees every case, an agent only his own, bookkeeping the money columns), an endpoint uses rowLevelSecurity.mode: "policy" and the board carries a policy: define_app_role and grant_app_role (or set_policy_identity, which reads the roles from an employees board), then set_board_policy with the document, then explain_access and simulate_request to prove it. get_item_history reads who changed which field of a row, from what to what. The tools need a backend with the permissions routes; see docs/app-access.md.

Setup

Install the package (and Claude Code if you don't have it), then add the server by its binary. That avoids a known Windows issue where claude mcp add mis-parses npx -y.

npm install -g @anthropic-ai/claude-code @tasklite/mcp

claude mcp add tasklite -- tasklite-mcp

Add -s user to claude mcp add to make it available in every project (claude mcp add -s user tasklite -- tasklite-mcp); the default scope is the current project only.

Then tell Claude what you want to build. The sign_up tool creates your account, organization, and connection from the conversation (a strong random password is generated locally and never shown; use "forgot password" with your email for web access).

Already have an account? Create a key at TaskLite → Integrations → "Connect Claude Code" and use:

claude mcp add tasklite -e TASKLITE_API_KEY=tl_xxx -- tasklite-mcp
Hosted (no install)

Point any MCP client at the hosted server; there is nothing to install locally:

claude mcp add --transport http tasklite https://mcp.tasklite.net/mcp \

--header "Authorization: Bearer tl_xxx"

The hosted server is stateless: every request carries its own credential, so one endpoint serves every account safely.

Simplest of all: the connector. In Claude (claude.ai or the desktop app), Settings → Connectors → add TaskLite, or add it by address using the URL above. You sign in once over OAuth; there is no key to create or store. Note that the tools appear in a *new* chat, not in the conversation you were already in.

Optional env: TASKLITE_API_URL (default https://api.tasklite.net), TASKLITE_APP_URL (default https://app.tasklite.net).

Other clients

One hosted server, every MCP client. Full setup notes: https://tasklite.net/docs/guides/connector-from-cursor-codex-desktop

  • Cursor: Add to Cursor or put {"mcpServers":{"tasklite":{"url":"https://mcp.tasklite.net/mcp"}}} in .cursor/mcp.json.
  • VS Code: Install in VS Code or .vscode/mcp.json with {"servers":{"tasklite":{"type":"http","url":"https://mcp.tasklite.net/mcp"}}}.
  • ChatGPT: Settings → Connectors (developer mode) → add https://mcp.tasklite.net/mcp. The server implements search and fetch.
  • Gemini CLI: gemini extensions install https://github.com/tasklite-net/tasklite-mcp (this repo ships gemini-extension.json), or add httpUrl + oauth to ~/.gemini/settings.json.
  • OpenAI Responses API / Agents SDK, Gemini API: pass the hosted URL with Authorization: Bearer tl_….

Typical flow (what Claude Code does)

  1. create_project → create_board → create_column × N builds the schema.
  2. create_item / query_items seed and inspect data.
  3. create_app → create_app_endpoint (with exposedColumns + RLS) → create_app_api_key expose the REST surface for your frontend.
  4. get_app_spec / get_frontend_prompt generate the frontend against it.
  5. Every tool returns an adminUrl, the ready-made admin for the end client.

Hosting your frontend

deploy_frontend puts a static frontend on https://{slug}.tasklite.dev. No server, no hosting account, no CI to configure. Hand the site over in one of three ways:

deploy_frontend(appId: "app-xxxxxx", files: [{ path: "index.html", content: "<!doctype html>…" }, { path: "app.js", content: "…" }])

deploy_frontend(appId: "app-xxxxxx", zipUrl: "https://github.com/you/site/releases/download/v1/dist.zip") deploy_frontend(appId: "app-xxxxxx", dir: "./dist")

files is the path from ChatGPT or any hosted client: the assistant writes the page and deploys it in the same turn. zipUrl takes an export from Lovable, Bolt or a GitHub release. dir is for an MCP running on the machine with the build output.

Hosted pages call the app API through the relative path /api/{endpoint}. The hosting proxy attaches the app identity server-side, so the browser never carries an API key. list_deployments shows the versions and rollback_deployment points the live URL back at an earlier one.

Security model

  • The tl_ key is exchanged for a short-lived JWT (POST /public/v1/auth/session); all calls run with the key owner's own permissions, never super-admin.
  • App API keys belong in server-side env vars (Next.js API routes), never in browser code. Frontends hosted on tasklite.dev need no key at all.

Development

npm install

npm run build TASKLITE_API_KEY=tl_xxx TASKLITE_API_URL=http://localhost:3333 node dist/index.js

License

MIT