AI connections

MCP tools reference

Every tool the Workspace369 MCP server exposes to connected AI apps, grouped by module, with what it does, the scope and permission it needs, and its Token cost class.

View as Markdown

This is the complete list of tools a connected AI app can call, as published by the Workspace369 MCP server in this release. AI apps read the same list when they connect, so you do not need to configure anything from here. Use it to understand what a prompt can reach, which permissions a member needs, and what a call costs.

How to read this reference

Each row names the tool as the AI app sees it, what it does, and what it needs:

  • Scope is the access you grant the app at sign-in, shown on the sign-in page under the module name. read is the view option; write is view, create, and edit; send is send messages on your behalf.
  • Permission is the Workspace369 permission your role must include, named as the module and the permission within it. "Any member" means membership of the workspace is enough.
  • Cost is the Token class: Read, Write, or Send. Default costs are 1, 5, and 10 Tokens. See How MCP access is controlled and billed.

Tools marked always confirmed in Ask AI show a confirmation card in Ask AI in every mode. A connected app applies its own approval step instead.

Two rules apply everywhere:

  • Members limited to specific clients see only records in their book. A record outside it reads as not found.
  • Amounts on invoices, proposals, and payments are hidden unless the member can view prices.

Workspace

ToolWhat it doesScopePermissionCost
workspace_get_contextReturns the workspace name and plan, your permissions, and the Token balance. Apps usually call it first.workspace:readAny memberRead
workspace_business_summaryCounts only: clients, invoices with the unpaid count and outstanding total, today's scheduled events, and catalog services.workspace:readAny memberRead
batch_applyRuns up to 30 tool calls in one request. Each item is checked and charged on its own, and a failure in one item does not stop the rest. Tools that are always confirmed cannot be placed in a batch.workspace:readAny memberRead, plus each item

Clients and lead sources

ToolWhat it doesScopePermissionCost
clients_searchSearches active clients by name, email, or company, with filters for lead source, business or individual, and tags. Archived clients are excluded.clients:readClients: viewRead
clients_getReturns one client by id, including archived clients, which are flagged.clients:readClients: viewRead
clients_createCreates a client with name, email, phone, company, type, lead source, and one or more addresses. Addresses are verified and stored geocoded when they match.clients:writeClients: addWrite
clients_updateChanges only the fields passed. Updating an email, phone, or address replaces the primary entry; a full address list can be replaced explicitly.clients:writeClients: editWrite
lead_sources_listLists the workspace's lead sources and which one is the default for new clients.clients:readLead sources: viewRead
lead_sources_set_defaultSets the default lead source for clients created afterwards. It cannot create a lead source.clients:writeLead sources: editWrite

Requests

Requests are inbound submissions from intake forms, pages, funnels, and the lead API.

ToolWhat it doesScopePermissionCost
requests_searchLists requests newest first, filtered by status, form, or free text over name, email, phone, and message.requests:readRequests: viewRead
requests_getReturns one request with its full message and the consent the prospect recorded. Internal comments and technical details are never returned.requests:readRequests: viewRead
requests_forms_listLists intake forms so a form id can be shown by name. Forms cannot be created or edited through MCP.requests:readRequests: manage settingsRead
requests_update_statusMarks a request reviewed or archives it. Archiving is final.requests:writeRequests: editWrite
requests_convert_to_clientCreates the client from a request, or links an existing one, and marks the request converted. Needs the Clients scope as well. Can start new-client workflows. Always confirmed in Ask AI.requests:write and clients:writeRequests: convertWrite
requests_respondEmails or texts the prospect. The recipient comes from the request and cannot be changed. Texting a lead without SMS consent must be acknowledged explicitly. Always confirmed in Ask AI.inbox:sendRequests: editSend

Notes

ToolWhat it doesScopePermissionCost
notes_searchLists workspace notes or your personal notes, filtered by text, folder, tag, or client.notes:readNotes: viewRead
notes_getReturns one note. Trashed notes and other people's personal notes are not returned.notes:readNotes: viewRead
notes_createCreates a workspace note or a personal note, optionally in a folder and linked to clients.notes:writeNotes: createWrite
notes_updateChanges a note's title, body, or tags. A new body replaces the whole text.notes:writeNotes: editWrite

Invoices and payments

ToolWhat it doesScopePermissionCost
invoices_searchLists invoices by number, title, client, or PO number, with status and client filters. Each row says whether it is overdue.invoices:readInvoices: viewRead
invoices_getReturns one invoice by id or invoice number, with its line items.invoices:readInvoices: viewRead
invoices_get_defaultsReturns the workspace's invoice defaults: due terms, tax, discount, deposit, and notes applied to every new invoice.invoices:readInvoices: viewRead
invoices_create_draftCreates a draft invoice for a client from catalog items or one-off lines. Totals and tax are calculated by Workspace369. The draft is never sent by this tool.invoices:writeInvoices: createWrite
invoices_update_draftEdits a draft's lines, discount, dates, tax, deposit, project, and notes. Editing a sent invoice requires explicit confirmation because the client's link changes.invoices:writeInvoices: editWrite
invoices_create_from_scheduleCreates a Pending invoice with a pay link for one scheduled job, using the job's client and connected proposal.invoices:writeInvoices: createWrite
invoices_batch_from_schedulesInvoices every uninvoiced job in a date range, up to 30 per call, optionally marking them paid and emailing or texting each client. Always confirmed in Ask AI.invoices:writeInvoices: createSend
invoices_sendEmails or texts the invoice with its view-and-pay link, attaching the PDF on email. Refused for opted-out clients. Always confirmed in Ask AI.invoices:writeInvoices: shareSend
invoice_payments_listLists every payment on one invoice with the total, paid, and remaining amounts.invoices:readInvoices: viewRead
invoice_payments_summarySummarizes received, refunded, net, and remaining amounts and the split by payment method.invoices:readInvoices: viewRead
payments_recordRecords a full or partial payment with a method. This is the only way to mark an invoice paid. Nothing is sent to the client.invoices:writeInvoices: mark paidWrite

Proposals

ToolWhat it doesScopePermissionCost
proposals_searchLists proposals and estimates with their sent, viewed, accepted, and declined history.proposals:readProposals: viewRead
proposals_getReturns one proposal with its line items and which are client-selectable add-ons.proposals:readProposals: viewRead
proposals_get_defaultsReturns the acceptance terms: signature required, deposit required and how much, and expiry. Pass a proposal id for that proposal's own terms.proposals:readProposals: viewRead
proposals_create_draftCreates a draft proposal for a client with optional line items. Never sent by this tool.proposals:writeProposals: createWrite
proposals_update_draftEdits a draft's title, notes, lines, discount, signature and deposit requirements, and expiry. Sent proposals are refused.proposals:writeProposals: editWrite
proposals_update_statusRecords that a sent proposal was accepted or declined outside the system, or recalls it to draft. Does not send anything or create an invoice.proposals:writeProposals: editWrite
proposals_sendEmails the proposal to its client with the acceptance link. Refused for opted-out clients. Always confirmed in Ask AI.proposals:writeProposals: sendSend

Projects

ToolWhat it doesScopePermissionCost
projects_searchLists projects by name or client, with status filters.projects:readProjects: viewRead
projects_getReturns one project.projects:readProjects: viewRead
projects_createCreates a project with status, client, dates, budget, priority, and tags.projects:writeProjects: createWrite
projects_updateChanges name, description, status, budget, priority, or notes. Progress is always derived from task completion.projects:writeProjects: editWrite

Tasks and boards

ToolWhat it doesScopePermissionCost
task_boards_listLists boards with their ordered statuses. Every task lives on a board.tasks:readTasks: viewRead
task_board_schemaReturns a board's statuses, built-in fields, and custom fields with allowed values.tasks:readTasks: viewRead
task_board_tags_listSearches or pages a board's tag catalog.tasks:readTasks: viewRead
tasks_searchLists tasks across boards by title, board, status, priority, assignee, due dates, tags, or starred.tasks:readTasks: viewRead
tasks_getReturns one task in full, including custom fields and subtasks.tasks:readTasks: viewRead
tasks_comments_listReads a task's comments, newest first.tasks:readTasks: viewRead
tasks_createCreates one task on a board with status, priority, tags, assignees, estimate, dates, dependencies, custom fields, and a checklist.tasks:writeTasks: createWrite
tasks_updateChanges only the fields passed. Tags and assignees are replaced as a list.tasks:writeTasks: editWrite
tasks_subtasks_updateAdds checklist items or marks existing ones complete or open.tasks:writeTasks: editWrite
tasks_comment_addAdds a plain-text comment attributed to you. Mentions are not resolved. Nothing is sent to a client.tasks:writeTasks: editWrite
task_boards_createCreates a board with To-do, In Progress, and Done. Cannot rename or reconfigure a board.tasks:writeTasks: manage boardsWrite

Calendar, booking, and reminders

ToolWhat it doesScopePermissionCost
calendar_list_eventsLists events in a date range, optionally for one team member or client. Cancelled events are excluded unless requested.calendar:readCalendar: viewRead
calendar_categories_listLists the calendar categories configured in the workspace.calendar:readCalendar: viewRead
calendar_check_availabilityReports which team members are free on a date from their working hours and that day's events.calendar:readCalendar: viewRead
booking_pages_listLists booking pages with their shareable links. Inactive pages have no link.calendar:readCalendar: viewRead
calendar_create_eventCreates a timed or all-day event with client, category, assignees, services, reminders, and recurrence.calendar:writeCalendar: createWrite
calendar_update_eventMoves or edits an event, adds or clears reminders, or cancels it. Cancelling keeps the record. For a recurring event it can move the series but cannot change the repeat rule.calendar:writeCalendar: editWrite
calendar_events_reschedule_batchMoves a day's client events, or one client's upcoming events, to another date, up to 30 per call. Recurring series and events open in the app are skipped and counted.calendar:writeCalendar: editWrite
reminders_listLists your reminders: upcoming, overdue, completed, or all, personal or workspace.reminders:readAny memberRead
reminders_createCreates a reminder at a time, or a set number of minutes before a calendar event, with recipients, channels, and recurrence.reminders:writeAny memberWrite
reminders_updateChanges a reminder's title, description, time, priority, or channels. Moving the time is how a reminder is snoozed.reminders:writeAny memberWrite
reminders_closeCompletes or cancels a reminder. Completing a recurring reminder closes the whole series.reminders:writeAny memberWrite

Time tracking

ToolWhat it doesScopePermissionCost
time_entries_listLists time entries in a time range. Members limited to specific clients see their own entries and their clients' entries.time_entries:readTime tracking: viewRead
time_entries_searchLists time entries filtered by client, project, task, and billable.time_entries:readTime tracking: viewRead
timesheets_listLists weekly timesheet submissions with status and totals. You see your own unless you can approve timesheets.time_entries:readAny memberRead
time_entries_createLogs a completed entry for yourself with duration, client, project, task, and billable status. Billable entries use the workspace's rate unless one is given.time_entries:writeTime tracking: createWrite
time_entries_updateEdits one of your own entries. Submitted, approved, and period-locked entries are refused.time_entries:writeTime tracking: editWrite

Team

ToolWhat it doesScopePermissionCost
team_members_listLists members with role, invitation status, and working days.team:readAny memberRead
team_members_searchFinds a member by name or email, returning candidates when the match is ambiguous.team:readAny memberRead
team_member_availability_getReturns a member's weekly working hours, or the whole roster's, with the timezone they are in.team:readAny memberRead
team_member_activity_listLists what a member has done recently: the action, the record, and which fields changed, never the values.team:readTeam: view activityRead
team_member_availability_setChanges a member's working hours for the days passed, and their timezone. The member is not notified. Always confirmed in Ask AI.team:writeTeam: edit permissionsWrite

Inbox

ToolWhat it doesScopePermissionCost
search_workspace_messagesFull-text search across email, SMS, and call notes, returning the conversation each match belongs to. Only channels and clients you can access are searched.inbox:readAny member with channel accessRead
inbox_send_messageSends one SMS or email from the workspace inbox, optionally into an existing conversation. Always confirmed in Ask AI.inbox:sendThe channel's send permissionSend
inbox_send_bulkSends one SMS to up to 30 recipients. Recipients who opted out or are blocked are reported as suppressed and not messaged. Always confirmed in Ask AI.inbox:sendAny member with SMS send accessSend

Catalog

ToolWhat it doesScopePermissionCost
products_listLists catalog services and products with pricing. Active items by default; drafts and archived on request.products:readProduct catalog: viewRead
products_createAdds a service or product with a price and price type: flat rate, per hour, per unit, or per area. Duplicate names are refused.products:writeProduct catalog: addWrite
products_updateChanges name, price, price type, description, or active state. Setting inactive moves the item to draft.products:writeProduct catalog: editWrite

Workflows

Workflows appear to AI apps under their stable name, automations.

ToolWhat it doesScopePermissionCost
automations_listLists workflows with trigger, action, on/off state, last run, and whether each one can actually fire and why not.automations:readWorkflows: viewRead
automations_getReturns one workflow's full definition and any definition warnings. Recipient addresses are never returned.automations:readWorkflows: viewRead
automations_runs_listLists runs and their outcomes, including skipped runs and the step that stopped them. Message bodies and addresses are never returned.automations:readWorkflows: viewRead
automations_disableTurns a workflow off. It does not recall follow-ups already queued. There is no tool to turn a workflow on, create one, or edit one. Always confirmed in Ask AI.automations:writeWorkflows: turn on or offWrite

Available to Ask AI only

These tools exist on the server but their scopes are not offered on the sign-in page, so a connected AI app cannot call them in this release. Ask AI can.

ToolWhat it does
knowledge_searchSearches the workspace's AI knowledge base.
media_listLists photos and documents attached to a schedule, invoice, or expense.
media_attachAttaches an already-uploaded workspace file to a schedule, invoice, or expense.
expense_types_listLists expense categories.
expenses_listLists recorded expenses with category, job, project, and period filters.
expenses_createRecords an expense, optionally on a project or job.
expenses_updateCorrects an expense outside a closed accounting period.

Limits

  • List and search tools return 25 results by default and 100 at most per page, with a cursor for the next page. Message search returns at most 50.
  • A batch holds at most 30 items, a bulk text at most 30 recipients, a batch reschedule moves at most 30 events, and batch invoicing creates at most 30 invoices per call. When more work remains, the result says so; nothing is dropped silently.
  • One connection may make 120 calls per minute and a workspace 600.

Was this article useful?

Your answer helps us decide what to clarify next.