DOCK TOOLS

64 tools from the Dock MCP Server, categorised by risk level.

READ 28 tools
Read address_book List the agents you can message: every agent signed by your owner, each with its address and live status. E... Read append_doc_section Append a chunk of Markdown to the END of a workspace's doc body. Designed for crons + ingest agents that pr... Read evaluate_formula Evaluate a formula expression against an actual Dock workspace's columns + rows, server-side, returning the... Read get_billing Get the caller's org billing summary: current plan (free, pro, or scale), active counts and caps for every ... Read get_comment_thread Fetch a single comment with its replies + reactions in one round trip. Pass any comment id in the thread (r... Read get_doc Read a workspace's doc (TipTap rich-text) body. Format is negotiable via `format`: `markdown` (default — Co... Read get_file Fetch metadata + a download URL for a single file by id. The `download_url` field is a direct Vercel Blob U... Read get_html Read an HTML surface's body. HTML surfaces (Surface.kind="html") store mockup or full-page content as three... Read get_recent_events Get recent activity events for a workspace. Who did what, when. Useful for understanding what's happened si... Read get_row Fetch a single row by id without listing the full table. Useful when a cue payload carries a row id and the... Read get_workspace Get details about a specific workspace by its slug, including columns of its primary table surface, member ... Read get_workspace_schema Return a table surface's column definitions so an agent knows what keys create_row/update_row will accept. ... Read list_api_keys List API keys. Agent callers see only the key they're authenticated with (a one-row response: id, prefix, l... Read list_comments List comments in a workspace. Filter by `target_type` (row, cell, doc_range, html_element, surface, workspa... Read list_files List the folder + file children of a Files surface (kind='files'). Folders sorted first by position then na... Read list_recent_files List the 50 most recently updated files in a Files surface, sorted by `updatedAt` descending. Flat surface-... Read list_rows List rows in a workspace's table surface. Returns rows with their data (a JSON object of column-name to val... Read list_sheet_functions List the Dock Sheets formula functions an agent can use in a cell carrier. Returns the canonical name, sign... Read list_surfaces List the surfaces (tabs) inside a workspace. A workspace can hold any combination of `table` (rows + column... Read list_webhooks List webhook endpoints registered on an org. Returns each webhook's id, url, subscribed events, active flag... Read list_workspace_members List principals with explicit access to a workspace. Returns users (id, name, email; email visible only whe... Read list_workspaces List all workspaces the authenticated principal has access to. Returns workspace name (slug), mode (the def... Read request_limit_increase Ask Dock to raise a plan limit (agents, workspaces, rows, or other). We record the signal on the admin side... Read rotate_webhook_secret Mint a fresh signing secret for a webhook. The new `secret` is returned exactly once; copy it to the receiv... Read search Search across everything the caller can already touch: workspace names, row cell values, and doc sections/p... Read validate_doc_markdown Pre-flight check on markdown BEFORE writing it via update_doc / append_doc_section. Returns { ok, errors, w... Read validate_formula Parse-check a formula expression server-side without writing anything. Returns { ok, error?, rewrittenFormu... Read validate_html Pre-flight check on html / css / js BEFORE writing via update_html. Returns { ok, errors, warnings, parsed ...
WRITE 23 tools
Write add_column Append a single column to a workspace's table schema. Position is auto-computed as next-after-max so the co... Write add_comment Post a new comment on any target in a workspace: a row, a cell, a doc text range, an html element, an entir... Write create_row Append a new row to a workspace's table surface. The data field is a JSON object with column-name keys. Sta... Write create_support_ticket File a support ticket. Mirrors to a GitHub issue in Dock's support repo and shows up in the user's dashboar... Write create_surface Create a new surface (tab) inside a workspace. `kind` picks `table`, `doc`, or `html`. Optional `slug` (low... Write create_webhook Register a new webhook endpoint on an org. The URL must be public (loopback / private ranges / cloud metada... Write create_workspace Create a new workspace in the caller's org. Works for both user and agent callers; agent-created workspaces... Write downgrade_plan Schedule a downgrade to Free at the end of the current billing period. The org keeps its current plan (Pro ... Write move_rows Atomically move N rows from their current sheet(s) to a target sheet inside the same workspace. Use for pro... Write react_to_comment Add or remove an emoji reaction to a comment. Reactions are per-principal: each (commentId, principalId, em... Write reply_to_comment Convenience wrapper around `add_comment` for the common reply case. Pass the parent comment id and the body... Write resolve_comment Mark a comment thread resolved. Idempotent: calling on an already-resolved thread returns the existing `res... Write send_message Send a direct message to another agent or human in the messaging substrate. Wires through cue.dock.svc, the... Write unresolve_comment Re-open a previously-resolved comment thread. Idempotent on already-unresolved comments. Fires `comment.unr... Write update_doc Replace a workspace's doc body. Takes EITHER TipTap JSON (`content`) OR Markdown (`markdown`): pass markdow... Write update_doc_section Replace a single section of a workspace's doc body, identified by its heading text. The targeted edit compl... Write update_html Write an HTML surface's body. Pass any of `html` / `css` / `js`; omitted fields stay unchanged. Pass empty ... Write update_row Update specific fields of an existing row. Only the fields provided in `data` are updated; others are prese... Write update_surface Rename, reslug, reorder, OR replace the column schema of a surface. Pass any subset of `name`, `new_surface... Write update_webhook Toggle a webhook's `active` flag on or off. Inactive webhooks are skipped at delivery time (no retry queue,... Write update_workspace Rename a workspace, change its slug, switch its default-view mode, or flip its visibility (private | org | ... Write update_workspace_member Change an existing workspace member's role. Editor role required to caller. Owner-tier transitions (promoti... Write upgrade_plan Move the caller's org to Pro ($19/mo flat, 10 agents, 20 members, 200 workspaces, 5k rows per workspace) or...
DESTRUCTIVE 13 tools
Destructive delete_file Soft-delete a file by id. Moves to a 30-day trash window before the cleanup cron hard-deletes + refunds the... Destructive delete_row Permanently delete a row from a workspace. This action cannot be undone. Destructive delete_surface Archive a surface (soft-delete). Rows + doc body are preserved for restore. Idempotent: calling on an alrea... Destructive delete_webhook Permanently delete a webhook endpoint. The URL stops receiving events immediately and the secret is destroy... Destructive delete_workspace Archive a workspace. Soft-delete: rows, doc body, and activity history are preserved, and the workspace can... Destructive remove_workspace_member Remove a workspace member. Editor role required; owner-tier removals require an owner caller. Sole-owner re... Destructive request_revoke_agent_key Ask the human owner to revoke ANOTHER agent's active API key (sibling agent). The MCP `revoke_api_key` tool... Destructive request_rotate_agent_key Ask the human owner to rotate ANOTHER agent's active API key (mint a new one + revoke the old). Same shape ... Destructive revoke_api_key Revoke an API key (soft-delete via `revokedAt`). Subsequent requests with the key return 401. Agents may re... Destructive revoke_file_share Soft-revoke a share token minted via `share_file`. The public `/share/files/<token>` URL stops resolving im... Destructive rotate_api_key Atomically mint a new API key with the same agent / workspace / scopes / name and revoke the old one. Retur... Destructive share_file Mint a public share token for a file. Returns a `url` of the form `https://trydock.ai/share/files/<token>` ... Destructive share_workspace Invite a human (by email) to a workspace at a specified role. If the email already belongs to a Dock user t...
How many tools does the Dock MCP server have? +

The Dock MCP server exposes 64 tools across 3 categories: Read, Write, Destructive.

How do I enforce policies on Dock tools? +

Route the Dock server through the PolicyLayer gateway. Define allow, deny, or approval rules per tool in the dashboard — they are enforced on every call before it reaches the server.

What risk categories do Dock tools fall into? +

Dock tools are categorised as Read (28), Write (23), Destructive (13). Each category has a recommended default policy.

Let agents act without letting them run wild.

Route your MCP servers through PolicyLayer and every tool call is checked against your policy before it runs — allow, deny, or require approval. Per-identity grants. Full audit log. Live in minutes.

Free to start. No card required.

4,600+ MCP servers and 31,000+ tools scanned and risk-classified.

// GET IN TOUCH

Have a question or want to learn more? Send us a message.

Message sent.

We'll get back to you soon.