MCP server
The platform exposes an MCP server so agents can read and write workspace and wiki data on a member’s behalf.
Endpoint: {tools.endpoint} (Streamable HTTP)
Scopes determine which tools exist
Section titled “Scopes determine which tools exist”This is the most consequential behaviour to understand before integrating, and it is not apparent
from a tools/list call.
Tools are registered conditionally on the scopes in the grant. A tool not covered by the token
is not returned as forbidden; it is not registered, and therefore does not appear in the tool list.
An agent holding only workspaces:read is presented with three tools and no indication that others
exist.
tools/list therefore returns the subset available to the caller, not the catalogue. The full
catalogue follows.
Tool catalogue
Section titled “Tool catalogue”| Tool | Required scope | Description |
|---|---|---|
archive_workspace_deliverable | workspaces:write | Archive a deliverable — hides it from the default task list without deleting it. |
create_wiki_comment | spaces:write | Post a comment on a wiki page, or reply to an existing thread by passing its root |
create_wiki_page | spaces:write | Create a wiki page. `content` is a ProseMirror/TipTap document object; omit it to |
create_wiki_row | spaces:write | Create a row in a wiki database. `data` is keyed by COLUMN ID (not column name) — |
create_wiki_rows | spaces:write | Create MANY rows in a wiki database in a single call — use this instead of repeated |
create_workspace_deliverable | workspaces:write | Create a deliverable (a task) in a workspace. Assignees must be members of that |
delete_wiki_page | spaces:write | Move a wiki page to the trash. This also trashes all of its descendant pages. |
delete_wiki_row | spaces:write | Delete a row from a wiki database. Soft delete — the row is removed from all reads |
delete_wiki_rows | spaces:write | Delete MANY rows from a wiki database in a single call — the counterpart to |
get_deliverable_progress | workspaces:read | Get a progress breakdown of all deliverables in a workspace, grouped by status |
get_or_create_wiki_row_page | spaces:write | Get the wiki page attached to a database row, creating it on first call. A row holds |
get_wiki_database | spaces:read | Get a wiki database schema (columns + views) plus a PAGE of its rows. Rows are capped |
get_wiki_page_backlinks | spaces:read | Find what references a wiki page: other pages linking to it, database rows whose |
get_wiki_page_comments | spaces:read | Read the comment threads on a wiki page: each root with its replies, who wrote them, |
get_wiki_page_history | spaces:read | List a page's saved versions, newest first — id, title, optional label and when. |
get_workspace_summary | workspaces:read | Get a combined summary of a workspace: details, health metrics, and role breakdown |
resolve_wiki_comment | spaces:write | Mark a comment thread resolved, or reopen it. Only a ROOT comment can be resolved — |
restore_wiki_page_version | spaces:write | Restore a page to one of its saved versions, listed by get_wiki_page_history. This is |
search_wiki | spaces:read | Search wiki page titles/content and database rows across your accessible spaces |
search_workspaces | workspaces:read | Search accessible workspaces by title or filter by status/mode |
set_wiki_row_relation | spaces:write | Set which rows of another database a row links to, through a DB↔DB relation column. |
update_wiki_page | spaces:write | Update a wiki page. Only the fields you pass are changed. Content edits are |
update_wiki_row | spaces:write | Update cells of a wiki database row. This is a PARTIAL patch — only the column ids |
update_workspace_deliverable | workspaces:write | Update a deliverable. Pass `status` to move it through the workflow (this is the |
Scope summary
Section titled “Scope summary”| Scope | Grants |
|---|---|
workspaces:read |
Workspace resources and search |
workspaces:write |
Creating and updating deliverables |
spaces:read |
Wiki spaces, pages and databases |
spaces:write |
Creating and updating wiki pages, rows and comments |
Read scopes are additive and independent; a write scope does not imply its read scope, so request both.
Writing to wiki databases
Section titled “Writing to wiki databases”Row data is keyed by column ID, not column name. Read the schema with get_wiki_database
first. When adding more than a couple of rows use create_wiki_rows to send up to 50 at once —
the endpoint is rate limited per minute, and batching is the difference between an import that
completes and one that is throttled part-way.
Database and column structure cannot be changed through MCP: no create, alter or drop of databases, columns or views.
Something wrong on this page? Report it