Plutio MCP by usefulapi

io.usefulapi由 usefulapi.io 发布官方发布者v1.11.3更新于 Nov 7, 2026

Manage Plutio clients, projects, tasks, time entries and invoices.

发布方自己的服务:Ably MCP by usefulapi

已验证Streamable HTTP可网页运行效率与工作流金融商业与电商

概览

AI 生成的概览

让 AI 助手读写 Plutio 工作区数据,包括客户、项目、任务、工时记录和发票等。

可以做什么
  • 读取工作区设置、人员、公司和自定义字段
  • 列出项目、任务看板、任务分组、任务、状态和工时记录
  • 浏览日历事件、预约页面、笔记、评论、会话和 wiki 页面
  • 列出发票、周期性发票、交易、提案、合同、表单及表单回复
  • 读取文档区块(合同、提案和发票的正文与行项目)
  • 创建人员、公司、项目、任务、工时、评论、事件和草稿发票,并更新任务
适用场景
适合在 Plutio 中工作、希望助手直接回答进行中的项目、逾期任务、未付发票或已记录工时等问题,或在不切换应用的情况下新建任务、记录工时和起草发票的场景。
运行要求
远程 MCP 端点,无需安装包或本地运行时。通过 OAuth 使用 Plutio 账号登录;README 也提到可用 Plutio 的 Client ID、Client Secret 和工作区子域名连接。API 客户端以创建者的权限运行。免费额度为每月 50 次工具调用,付费方案可提高上限。
安装前请注意
写入类工具会创建和修改 Plutio 数据(人员、公司、项目、任务、工时、评论、事件、草稿发票及行项目),执行前应先确认。评论对所有能看到该记录的人可见。该服务器是访问 Plutio 工作区的第三方中转,数据会经过它。付费方案通过 Stripe 结账链接付款,取消后当期不退款。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Plutio MCP by usefulapi,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/io.usefulapi%2Fplutio/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "plutio-by-usefulapi": {
      "type": "http",
      "url": "https://plutio.usefulapi.io/mcp"
    }
  }
}

README

Plutio MCP by usefulapi

Live endpoint: https://plutio.usefulapi.io/mcp

Connect

  • Claude (claude.ai, Desktop): open Customize → Connectors, click + Add → Add custom connector, and paste https://plutio.usefulapi.io/mcp.
  • Claude Code: claude mcp add --transport http plutio https://plutio.usefulapi.io/mcp, then run /mcp to log in.
  • VS Code: Add to VS Code.
  • Cursor and other clients: add the URL as a remote MCP server:
json
{  "mcpServers": {    "plutio": {      "url": "https://plutio.usefulapi.io/mcp"    }  }}

Add only the URL. Do not add an Authorization header or an API key to the client config: the server signs you in with OAuth, and the login page asks for your Plutio credentials.

Step-by-step setup, where to find your credentials, and FAQ: https://usefulapi.io/plutio/

Connect with the Client ID and Client Secret from Settings → API in Plutio, plus your workspace subdomain. The API client uses the access of the person who created it.

Tools

ToolTypeWhat it does
plutio_get_workspacereadGet workspace
plutio_list_peoplereadList people
plutio_list_companiesreadList companies
plutio_list_projectsreadList projects
plutio_list_task_boardsreadList task boards
plutio_list_task_groupsreadList task groups
plutio_list_tasksreadList tasks
plutio_list_statusesreadList statuses
plutio_list_time_entriesreadList time entries
plutio_list_categoriesreadList categories
plutio_list_eventsreadList events
plutio_list_schedulersreadList schedulers
plutio_list_invoicesreadList invoices
plutio_list_invoice_subscriptionsreadList recurring invoices
plutio_list_transactionsreadList transactions
plutio_list_proposalsreadList proposals
plutio_list_contractsreadList contracts
plutio_list_formsreadList forms
plutio_list_form_responsesreadList form responses
plutio_list_notesreadList notes
plutio_list_commentsreadList comments
plutio_list_conversationsreadList conversations
plutio_list_wiki_pagesreadList wiki pages
plutio_list_filesreadList files
plutio_list_foldersreadList folders
plutio_list_custom_fieldsreadList custom fields
plutio_get_document_blocksreadGet document blocks
plutio_create_personwriteCreate person
plutio_create_companywriteCreate company
plutio_create_projectwriteCreate project
plutio_create_taskwriteCreate task
plutio_update_taskwriteUpdate task
plutio_log_timewriteLog time
plutio_create_commentwriteComment on a task
plutio_create_eventwriteCreate event
plutio_create_invoicewriteCreate draft invoice
plutio_add_invoice_itemswriteAdd invoice line items
plutio_usage_statusmetaUsage status (free-tier meter)
plutio_request_featuremetaRequest a missing feature
plutio_upgrademetaUpgrade to Pro or Pro+
plutio_cancel_subscriptionmetaCancel the Pro subscription

read tools are read-only; write tools mutate data (clients should confirm them); meta tools report usage, manage your subscription or send a feature request.

Pricing

PlanPriceLimit
Free$050 tool calls / month
Pro (per workspace)$9/mo or $90/yr (2 months free)Unlimited*

*Pro has a fair use limit of 10,000 tool calls a month on this server. For more, write to [email protected].

Pro covers this server only. Subscribe with plutio_upgrade (it returns a Stripe Checkout link). Cancel any time with plutio_cancel_subscription: Pro continues to the end of the paid period, with no refund for the current period, and running plutio_upgrade before then undoes the cancel. Or write to [email protected].

License

MIT

来源:servers/plutio/README.md,提交 4046075

工具

37

plutio_get_workspace

Get workspace

The Plutio workspace this API client is connected to: name, domain, currency, locale, timezone and settings. GET /businesses.

无需输入参数。

plutio_list_people

List people

People: clients and your own team members (name, role, contactEmails, contactPhones, companies). Returns { count, next_skip, items }; pass next_skip as skip for the next page. Pass id to read one record. Filter with exact-match fields or a MongoDB-style query. GET /people.

输入参数idroleskipsortlimitqueryfilters

plutio_list_companies

List companies

Companies (clients that group people): title, industry, people, contact details. Returns { count, next_skip, items }; pass next_skip as skip for the next page. Pass id to read one record. Filter with exact-match fields or a MongoDB-style query. GET /companies.

输入参数idskipsortlimitqueryfilters

plutio_list_projects

List projects

Projects: name, client, status, dates, budget, billing rate. Returns { count, next_skip, items }; pass next_skip as skip for the next page. Pass id to read one record. Filter with exact-match fields or a MongoDB-style query. GET /projects.

输入参数idskipsortlimitqueryfiltersstatusIdstatusTitle

plutio_list_task_boards

List task boards

Task boards of projects. A project has one or more boards that hold tasks. Returns { count, next_skip, items }; pass next_skip as skip for the next page. Pass id to read one record. Filter with exact-match fields or a MongoDB-style query. GET /task-boards.

输入参数idskipsortlimitqueryfiltersprojectId

plutio_list_task_groups

List task groups

Task groups (columns/lists on a task board). Returns { count, next_skip, items }; pass next_skip as skip for the next page. Pass id to read one record. Filter with exact-match fields or a MongoDB-style query. GET /task-groups.

输入参数idskipsortlimitqueryfilterstaskBoardId

plutio_list_tasks

List tasks

Tasks: title, status (incomplete, completed, overdue), dueDate, assignedTo, projectId, taskBoardId. Returns { count, next_skip, items }; pass next_skip as skip for the next page. Pass id to read one record. Filter with exact-match fields or a MongoDB-style query. GET /tasks.

输入参数idskipsortlimitquerystatusfiltersprojectIdtaskBoardIdtaskGroupId

plutio_list_statuses

List statuses

Custom statuses (for projects and similar records): title, type, entityType. Returns { count, next_skip, items }; pass next_skip as skip for the next page. Pass id to read one record. Filter with exact-match fields or a MongoDB-style query. GET /statuses.

输入参数idskipsortlimitqueryfilters

plutio_list_time_entries

List time entries

Time entries: personId, projectId, taskId, startedAt, stoppedAt, time in seconds, billing amount and rate. Returns { count, next_skip, items }; pass next_skip as skip for the next page. Pass id to read one record. Filter with exact-match fields or a MongoDB-style query. GET /time-tracks.

输入参数idskipsortlimitquerytaskIdfilterspersonIdprojectId

plutio_list_categories

List categories

Categories used to organize records such as time entries and transactions. Returns { count, next_skip, items }; pass next_skip as skip for the next page. Pass id to read one record. Filter with exact-match fields or a MongoDB-style query. GET /categories.

输入参数idskipsortlimitqueryfilters

plutio_list_events

List events

Calendar events: title, startDate, endDate, location, participants. Returns { count, next_skip, items }; pass next_skip as skip for the next page. Pass id to read one record. Filter with exact-match fields or a MongoDB-style query. GET /events.

输入参数idskipsortlimitqueryfilters

plutio_list_schedulers

List schedulers

Scheduling pages (booking links) and their settings. Returns { count, next_skip, items }; pass next_skip as skip for the next page. Pass id to read one record. Filter with exact-match fields or a MongoDB-style query. GET /scheduler.

输入参数idskipsortlimitqueryfilters

plutio_list_invoices

List invoices

Invoices: name, client, status (draft, pending, paid and so on), amount, amountPaid, currency, dueDate, issueDate. Returns { count, next_skip, items }; pass next_skip as skip for the next page. Pass id to read one record. Filter with exact-match fields or a MongoDB-style query. GET /invoices.

输入参数idskipsortlimitquerystatusfilters

plutio_list_invoice_subscriptions

List recurring invoices

Recurring invoice subscriptions: client, schedule, amount. Returns { count, next_skip, items }; pass next_skip as skip for the next page. Pass id to read one record. Filter with exact-match fields or a MongoDB-style query. GET /invoice-subscriptions.

输入参数idskipsortlimitqueryfilters

plutio_list_transactions

List transactions

Payments and expenses: amount, currency, client, invoiceId, status, type, issueDate. Returns { count, next_skip, items }; pass next_skip as skip for the next page. Pass id to read one record. Filter with exact-match fields or a MongoDB-style query. GET /transactions.

输入参数idskipsortlimitqueryfilters

plutio_list_proposals

List proposals

Proposals: name, client, status, amount. The text is in blocks: see plutio_get_document_blocks. Returns { count, next_skip, items }; pass next_skip as skip for the next page. Pass id to read one record. Filter with exact-match fields or a MongoDB-style query. GET /proposals.

输入参数idskipsortlimitqueryfilters

plutio_list_contracts

List contracts

Contracts: name, client, status, signatures. The text is in blocks: see plutio_get_document_blocks. Returns { count, next_skip, items }; pass next_skip as skip for the next page. Pass id to read one record. Filter with exact-match fields or a MongoDB-style query. GET /contracts.

输入参数idskipsortlimitqueryfilters

plutio_list_forms

List forms

Forms (intake forms, questionnaires): name and status. Returns { count, next_skip, items }; pass next_skip as skip for the next page. Pass id to read one record. Filter with exact-match fields or a MongoDB-style query. GET /forms.

输入参数idskipsortlimitqueryfilters

plutio_list_form_responses

List form responses

Submitted responses to forms. Returns { count, next_skip, items }; pass next_skip as skip for the next page. Pass id to read one record. Filter with exact-match fields or a MongoDB-style query. GET /form-responses.

输入参数idskipsortlimitqueryformIdfilters

plutio_list_notes

List notes

Notes: title, descriptionHTML, entityType and entityId of the record they belong to. Returns { count, next_skip, items }; pass next_skip as skip for the next page. Pass id to read one record. Filter with exact-match fields or a MongoDB-style query. GET /notes.

输入参数idskipsortlimitqueryfilters

plutio_list_comments

List comments

Comments on tasks, files and conversations: bodyHTML, createdBy, entityType, entityId. Returns { count, next_skip, items }; pass next_skip as skip for the next page. Pass id to read one record. Filter with exact-match fields or a MongoDB-style query. GET /comments.

输入参数idskipsortlimitqueryfiltersentityIdentityType

plutio_list_conversations

List conversations

Inbox conversations: subject, participants, last message. Returns { count, next_skip, items }; pass next_skip as skip for the next page. Pass id to read one record. Filter with exact-match fields or a MongoDB-style query. GET /conversations.

输入参数idskipsortlimitqueryfilters

plutio_list_wiki_pages

List wiki pages

Pages of the Plutio wiki / knowledge base. Returns { count, next_skip, items }; pass next_skip as skip for the next page. Pass id to read one record. Filter with exact-match fields or a MongoDB-style query. GET /wiki-entities.

输入参数idskipsortlimitqueryfilters

plutio_list_files

List files

File records (name, size, folder, sharing). File contents are not downloaded. Returns { count, next_skip, items }; pass next_skip as skip for the next page. Pass id to read one record. Filter with exact-match fields or a MongoDB-style query. GET /files.

输入参数idskipsortlimitqueryfilters

plutio_list_folders

List folders

File folders. Returns { count, next_skip, items }; pass next_skip as skip for the next page. Pass id to read one record. Filter with exact-match fields or a MongoDB-style query. GET /file-folders.

输入参数idskipsortlimitqueryfilters

plutio_list_custom_fields

List custom fields

Custom field definitions (label, type, which records they apply to). Returns { count, next_skip, items }; pass next_skip as skip for the next page. Pass id to read one record. Filter with exact-match fields or a MongoDB-style query. GET /custom-fields.

输入参数idskipsortlimitqueryfilters

plutio_get_document_blocks

Get document blocks

The content blocks of a contract, proposal or invoice: the written text (textHTML) and, for invoices, the line items. A document record only holds block ids. GET /blocks (entityType and entityId are both required).

输入参数entityId必填entityType必填

plutio_create_person

Create person

WRITE: add a person (a client by default) to the workspace. Returns the new record with its _id. POST /people.

输入参数roleemaillastNamefirstName必填

plutio_create_company

Create company

WRITE: add a company, optionally linking existing people to it. Returns the new record. POST /companies.

输入参数title必填industrypersonIds

plutio_create_project

Create project

WRITE: create a project. Plutio gives it a default status and a first task board (find it with plutio_list_task_boards). Returns the new record. POST /projects.

输入参数name必填dueDateclientIdstartDateclientTypedescriptionHTML

plutio_create_task

Create task

WRITE: add a task to a project's task board. Get taskBoardId from plutio_list_task_boards (projectId filter). New tasks start as incomplete. Returns the new record. POST /tasks.

输入参数title必填dueDateprojectId必填taskBoardId必填taskGroupIddescriptionHTML

plutio_update_task

Update task

WRITE: change a task's title, status (incomplete, completed, overdue), due date or description. Only the fields you pass change. Returns the updated record. PUT /tasks.

输入参数id必填titlestatusdueDatedescriptionHTML

plutio_log_time

Log time

WRITE: record a time entry against a task. projectId must be the task's own project (read the task first). time is the length in seconds (5400 = 1.5 hours). POST /time-tracks.

输入参数time必填taskId必填personId必填projectId必填startedAt必填stoppedAt必填

plutio_create_comment

Comment on a task

WRITE: post a comment on a task, file or conversation. Visible to everyone who can see that record. Returns the new record. POST /comments.

输入参数bodyHTML必填entityId必填entityType必填

plutio_create_event

Create event

WRITE: add a calendar event. No invitations are sent. Returns the new record. POST /events.

输入参数title必填endDateisAllDaystartDate必填descriptionHTML

plutio_create_invoice

Create draft invoice

WRITE: create a DRAFT invoice for a person or company. The client cannot pay it and nothing is emailed. Add line items with plutio_add_invoice_items. Returns the new record. POST /invoices.

输入参数name必填dueDateclientId必填currency必填clientType必填

plutio_add_invoice_items

Add invoice line items

WRITE: put line items on an invoice that has none yet (an invoice made with plutio_create_invoice). Refuses an invoice that already has an items block. Plutio works out line totals, subtotal and total. POST /blocks.

输入参数items必填invoiceId必填

版本历史

11
  1. v1.11.3最新Nov 7, 2026
  2. v1.10.3Nov 5, 2026
  3. v1.10.2Nov 5, 2026
  4. v1.10.1Nov 4, 2026
  5. v1.10.0Nov 3, 2026
  6. v1.9.1Nov 3, 2026
  7. v1.8.0Nov 1, 2026
  8. v1.6.0Oct 31, 2026
  9. v1.5.0Oct 31, 2026
  10. v1.4.2Oct 30, 2026
  11. v1.4.0Oct 30, 2026

评分

已满足适用检查项的 100%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分

其他 Usefulapi 集成