Documents
Space MCP tools in the Documents scope (documents). Reach these with a wks_live_ key over space-mcp or space-api.
Tools in the documents scope, callable over space-mcp (tools/call) or space-api (REST) with a wks_live_* key that grants documents.
comment_on_document
Scope: documents:write
Leave a comment on a document, the way a person does: pinned to words in it (quote them EXACTLY as written β get_document first), or on the whole document when quote is left out. The comment shows beside the text; the document itself is not changed. mention_user_ids tags people (their ids from list_document_access or list_space_members) β they are told, and someone tagged who can't open the document gets comment access.
| Parameter | Type | Required | Description |
|---|---|---|---|
document_id | string | yes | |
body | string | yes | What you want to say, up to 4000 characters. |
quote | string | The exact words the comment is about. Leave out for the whole document. | |
occurrence | number | When those words appear more than once: which one (1 = first). | |
mention_user_ids | string[] | People to tag. |
create_document
Scope: documents:write
Create a document. content is a TipTap doc JSON ({type:'doc',content:[...]}).
| Parameter | Type | Required | Description |
|---|---|---|---|
title | string | ||
content | object | ||
parent_id | string | ||
icon | string | Single emoji (e.g. 'π') or Lucide icon name (e.g. 'Rocket'). | |
is_folder | boolean |
get_document
Scope: documents:read
Get a document: its content (TipTap JSON) and its details β who created it and when, who edited it last (a person, an agent or an automation), where it sits (folder, parent), the documents inside it, who can open it and at what level, the open comments, and what happened to it lately.
| Parameter | Type | Required | Description |
|---|---|---|---|
document_id | string | yes |
get_shared_note
Scope: documents:read
Read one note shared with this space: the summary, what was said, the questions (who asked, the answer), the to-dos and the full transcript by speaker. transcript:false leaves the transcript out.
| Parameter | Type | Required | Description |
|---|---|---|---|
note_id | string | yes | |
transcript | boolean | Include the full transcript (default true). |
list_document_access
Scope: documents:read
Who can open a document or a folder: the people it is shared with and at what level (Can view / Can comment / Can edit β including shares that come from a folder or a document above it), invitations sent to emails that aren't on Wakato yet, the link, and the space's agents. A share on a folder or a document covers everything inside it.
| Parameter | Type | Required | Description |
|---|---|---|---|
document_id | string | yes | A document's or a folder's id. |
list_document_comments
Scope: documents:read
Read the comments on a document: each thread with the words it is about (quote, or null for the whole document), who wrote what and when. Open threads only unless include_resolved.
| Parameter | Type | Required | Description |
|---|---|---|---|
document_id | string | yes | |
include_resolved | boolean | Also the threads marked done. |
list_documents
Scope: documents:read
List collaborative documents in the space.
list_shared_notes
Scope: documents:read
List notes people shared with this space: recorded meetings, talks and conversations, written up with who said what (title, when, how long, who spoke, the summary). Use it when asked about a meeting, a call, a talk, what someone said, or 'the notes fromβ¦'. query narrows by words in the title or summary.
| Parameter | Type | Required | Description |
|---|---|---|---|
query | string | Words to look for in the title or summary. | |
limit | number | At most this many (default 20, max 50). |
reply_to_document_comment
Scope: documents:write
Answer in a comment thread on a document β where someone asked you. Your answer shows beside the text in the document. A reply reopens a thread that was marked done.
| Parameter | Type | Required | Description |
|---|---|---|---|
thread_id | string | yes | |
body | string | yes | Your answer, up to 4000 characters. |
mention_user_ids | string[] | People to tag. |
resolve_document_comment
Scope: documents:write
Mark a comment thread on a document as done (resolved:false opens it again).
| Parameter | Type | Required | Description |
|---|---|---|---|
thread_id | string | yes | |
resolved | boolean |
share_document
Scope: documents:write
Share a document β or a whole FOLDER, which shares every document in it now and later β with people outside or inside the space: by email (someone not on Wakato gets an invitation email that only opens for that address; someone who is gets it in their Shared with you) or by user_id. role per person: viewer, commenter (the default) or editor; the documents inside a document or folder come with it. The owner confirms every share before anything is sent. Sharing again with a new role changes their level.
| Parameter | Type | Required | Description |
|---|---|---|---|
document_id | string | yes | A document's or a folder's id. |
people | object[] | ||
emails | string[] | Shorthand: addresses, all at role. | |
role | viewer | commenter | editor | The level for anyone without their own (default commenter). | |
message | string | A short note in the email and the notification. |
unshare_document
Scope: documents:write
Take someone's access to a document or folder away, or withdraw an invitation that hasn't been opened: user_id, email or invitation_id (from list_document_access). Access that comes from a folder or a document above is taken off there.
| Parameter | Type | Required | Description |
|---|---|---|---|
document_id | string | yes | |
user_id | string | ||
email | string | ||
invitation_id | string |
update_document
Scope: documents:write
Update a document's title/content/icon, or archive it.
| Parameter | Type | Required | Description |
|---|---|---|---|
document_id | string | yes | |
title | string | ||
content | object | ||
icon | string | Single emoji (e.g. 'π') or Lucide icon name (e.g. 'Rocket'). | |
archived | boolean |