Workspace MCP
Workspace MCP: Tool reference
Generated Workspace MCP reference with schemas, authorization, mutability, and recovery guidance.
Topline Workspace MCP Tool Reference
Generated from
HOSTED_HARNESS_MCP_TOOL_DEFINITIONSfor/mcp/workspace. Do not edit this file directly. Runnpm run docs:generate.
Topline exposes these 65 hosted Topline Workspace MCP tools. A client only sees tools allowed by its connector token scopes and the user's current capabilities.
platform_connection_check
Complete a one-time Developer Access verification challenge and prove that this authenticated MCP client can call the selected Topline product.
- MCP product: Build, Workspace
- Required OAuth scope: build:
harness:artifact:read, workspace:docs:read - Tool behavior: read-only: no; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"verificationCode": {
"type": "string",
"minLength": 16,
"maxLength": 80,
"description": "One-time code shown in Topline Developer Access."
}
},
"required": [
"verificationCode"
]
}
Output schema
{
"type": "object",
"properties": {
"ok": {
"type": "boolean"
},
"verified": {
"type": "boolean"
},
"product": {
"type": "string",
"enum": [
"build",
"workspace"
]
},
"verifiedAt": {
"type": "string"
}
},
"required": [
"ok",
"verified",
"product",
"verifiedAt"
]
}
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
platform_search_documentation
Search current Topline product guides, external API references, MCP tools, endpoint references, runbooks, and troubleshooting content.
- MCP product: Workspace
- Required OAuth scope:
docs:read - Tool behavior: read-only: yes; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"section": {
"type": "string",
"description": "Optional exact documentation section filter."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 25,
"default": 10
}
},
"required": [
"query"
]
}
Output schema
{
"type": "object",
"properties": {
"query": {
"type": "string"
},
"docs": {
"type": "array",
"items": {
"type": "object"
}
}
},
"required": [
"query",
"docs"
]
}
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.scope_required:docs:read: Reconnect and approve the docs:read scope.
Examples
Search the Build MCP documentation
{
"input": {
"query": "build mcp",
"limit": 5
},
"output": {
"query": "build mcp",
"docs": []
}
}
platform_read_documentation
Read one complete Topline documentation entry by the id returned from platform_search_documentation.
- MCP product: Workspace
- Required OAuth scope:
docs:read - Tool behavior: read-only: yes; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"id": {
"type": "string"
}
},
"required": [
"id"
]
}
Output schema
{
"type": "object",
"properties": {
"doc": {
"type": "object"
}
},
"required": [
"doc"
]
}
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.documentation_not_found: Search documentation again and retry with an id returned by the current catalog.
Examples
Read the hosted Build MCP tool reference
{
"input": {
"id": "generated-build-mcp-tools"
}
}
list_workspaces
List active workspaces the current Topline user can access, or owned archived workspaces for recovery. Results are tenant-bound, alphabetized, and cursor-paginated.
- MCP product: Workspace
- Required OAuth scope:
chat:read - Tool behavior: read-only: yes; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"maxLength": 200,
"description": "Optional case-insensitive name or description filter."
},
"archiveState": {
"type": "string",
"enum": [
"active",
"archived"
],
"default": "active",
"description": "List active workspaces, or owned archived workspaces for recovery."
},
"cursor": {
"type": "string",
"format": "uuid",
"description": "Use nextCursor from the prior page with the same query."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 25
}
}
}
Output schema
{
"type": "object",
"properties": {
"workspaces": {
"type": "array",
"items": {
"type": "object"
}
},
"nextCursor": {
"type": [
"string",
"null"
]
}
},
"required": [
"workspaces",
"nextCursor"
]
}
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
create_workspace
Create a private Topline workspace owned by the current user. Default workspace skills are attached using the same lifecycle as the Topline app.
- MCP product: Workspace
- Required OAuth scope:
workspace:write - Tool behavior: read-only: no; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 1,
"maxLength": 100
},
"description": {
"type": [
"string",
"null"
],
"maxLength": 2000
}
},
"required": [
"name"
]
}
Output schema
{
"type": "object",
"properties": {
"workspace": {
"type": "object"
}
},
"required": [
"workspace"
]
}
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
update_workspace
Rename or update the description of a workspace the current user can edit. View-only and inaccessible workspaces fail closed.
- MCP product: Workspace
- Required OAuth scope:
workspace:write - Tool behavior: read-only: no; destructive: no; idempotent: yes; open-world access: no
Input schema
{
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"format": "uuid"
},
"name": {
"type": "string",
"minLength": 1,
"maxLength": 100
},
"description": {
"type": [
"string",
"null"
],
"maxLength": 2000
}
},
"required": [
"workspaceId"
],
"anyOf": [
{
"required": [
"name"
]
},
{
"required": [
"description"
]
}
]
}
Output schema
{
"type": "object",
"properties": {
"workspace": {
"type": "object"
}
},
"required": [
"workspace"
]
}
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
archive_workspace
Archive an owned workspace so it leaves active navigation while all content remains recoverable.
- MCP product: Workspace
- Required OAuth scope:
workspace:write - Tool behavior: read-only: no; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"format": "uuid"
}
},
"required": [
"workspaceId"
]
}
Output schema
{
"type": "object",
"properties": {
"ok": {
"type": "boolean"
},
"workspace": {
"type": "object"
}
},
"required": [
"ok",
"workspace"
]
}
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
restore_workspace
Restore an owned archived workspace to active navigation.
- MCP product: Workspace
- Required OAuth scope:
workspace:write - Tool behavior: read-only: no; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"format": "uuid"
}
},
"required": [
"workspaceId"
]
}
Output schema
{
"type": "object",
"properties": {
"ok": {
"type": "boolean"
},
"workspace": {
"type": "object"
}
},
"required": [
"ok",
"workspace"
]
}
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
plan_workspace_delete
Inspect every affected category before permanently deleting an owned archived workspace and return a state-bound plan token. This does not mutate the workspace.
- MCP product: Workspace
- Required OAuth scope:
workspace:delete - Tool behavior: read-only: yes; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"format": "uuid"
}
},
"required": [
"workspaceId"
]
}
Output schema
{
"type": "object",
"properties": {
"ok": {
"type": "boolean"
},
"phase": {
"type": "string",
"enum": [
"delete_plan"
]
},
"workspaceId": {
"type": "string"
},
"name": {
"type": "string"
},
"eligible": {
"type": "boolean"
},
"effects": {
"type": "object"
},
"planToken": {
"type": "string"
}
},
"required": [
"ok",
"phase",
"workspaceId",
"name",
"eligible",
"effects",
"planToken"
]
}
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
delete_workspace
Permanently delete an owned archived workspace only when its fresh plan has no content, dependency, or active-work blockers.
- MCP product: Workspace
- Required OAuth scope:
workspace:delete - Tool behavior: read-only: no; destructive: yes; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"format": "uuid"
},
"confirmWorkspaceId": {
"type": "string",
"format": "uuid"
},
"confirmName": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"planToken": {
"type": "string",
"minLength": 64,
"maxLength": 64
}
},
"required": [
"workspaceId",
"confirmWorkspaceId",
"confirmName",
"planToken"
]
}
Output schema
{
"type": "object",
"properties": {
"ok": {
"type": "boolean"
},
"deleted": {
"type": "boolean"
},
"workspaceId": {
"type": "string"
},
"conversationsMoved": {
"type": "integer"
}
},
"required": [
"ok",
"deleted",
"workspaceId",
"conversationsMoved"
]
}
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
search_conversations
Find conversations the current Topline user can access in this tenant. Searches titles and recent visible-message previews; results are bounded and newest first.
- MCP product: Workspace
- Required OAuth scope:
chat:read - Tool behavior: read-only: yes; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"maxLength": 200,
"description": "Optional case-insensitive title or recent-message text."
},
"projectId": {
"type": "string",
"format": "uuid",
"description": "Optional workspace filter."
},
"status": {
"type": "string",
"enum": [
"open",
"archived",
"all"
],
"default": "open"
},
"cursor": {
"type": "string",
"format": "uuid",
"description": "Use nextCursor from the prior page with the same filters."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 25,
"default": 10
}
}
}
Output schema
{
"type": "object",
"properties": {
"conversations": {
"type": "array",
"items": {
"type": "object"
}
},
"nextCursor": {
"type": [
"string",
"null"
]
}
},
"required": [
"conversations",
"nextCursor"
]
}
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
read_conversation
Read a cursor-paginated page of visible messages from one accessible conversation. Returns workspace context, per-message truncation metadata, and no tool payloads or hidden runtime context.
- MCP product: Workspace
- Required OAuth scope:
chat:read - Tool behavior: read-only: yes; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"conversationId": {
"type": "string",
"format": "uuid"
},
"beforeMessageId": {
"type": "string",
"format": "uuid",
"description": "Return messages strictly older than this message id. Use nextBeforeMessageId from the prior page."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 20,
"default": 10
}
},
"required": [
"conversationId"
]
}
Output schema
{
"type": "object",
"properties": {
"conversation": {
"type": "object"
},
"messages": {
"type": "array",
"items": {
"type": "object"
}
},
"truncated": {
"type": "boolean"
},
"nextBeforeMessageId": {
"type": [
"string",
"null"
]
}
},
"required": [
"conversation",
"messages",
"truncated",
"nextBeforeMessageId"
]
}
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
search_conversation_messages
Search user-visible text across an accessible conversation in bounded transcript windows. Results are newest first; use nextBeforeMessageId to continue into older history.
- MCP product: Workspace
- Required OAuth scope:
chat:read - Tool behavior: read-only: yes; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"conversationId": {
"type": "string",
"format": "uuid"
},
"query": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"role": {
"type": "string",
"enum": [
"user",
"assistant",
"system"
]
},
"beforeMessageId": {
"type": "string",
"format": "uuid"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 20,
"default": 10
}
},
"required": [
"conversationId",
"query"
]
}
Output schema
{
"type": "object",
"properties": {
"query": {
"type": "string"
},
"results": {
"type": "array",
"items": {
"type": "object"
}
},
"nextBeforeMessageId": {
"type": [
"string",
"null"
]
},
"searchedMessages": {
"type": "integer"
}
},
"required": [
"query",
"results",
"nextBeforeMessageId",
"searchedMessages"
]
}
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
list_workspace_threads
List accessible threads in a workspace, including participants and active-work state.
- MCP product: Workspace
- Required OAuth scope:
chat:read - Tool behavior: read-only: yes; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"format": "uuid"
}
},
"required": [
"workspaceId"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
create_thread
Create a thread in a writable workspace.
- MCP product: Workspace
- Required OAuth scope:
chat:write - Tool behavior: read-only: no; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"format": "uuid"
},
"title": {
"type": "string",
"maxLength": 100
}
},
"required": [
"workspaceId"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
update_thread
Rename, move, archive, restore, or pin a writable thread.
- MCP product: Workspace
- Required OAuth scope:
chat:write - Tool behavior: read-only: no; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"threadId": {
"type": "string",
"format": "uuid"
},
"title": {
"type": "string",
"minLength": 1,
"maxLength": 100
},
"workspaceId": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"status": {
"type": "string",
"enum": [
"open",
"archived"
]
},
"pinned": {
"type": "boolean"
}
},
"required": [
"threadId"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
plan_thread_delete
Inspect a thread before permanent owner-only deletion and return a state-bound token.
- MCP product: Workspace
- Required OAuth scope:
workspace:content:delete - Tool behavior: read-only: yes; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"threadId": {
"type": "string",
"format": "uuid"
}
},
"required": [
"threadId"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
delete_thread
Permanently delete an owned thread after a fresh delete plan.
- MCP product: Workspace
- Required OAuth scope:
workspace:content:delete - Tool behavior: read-only: no; destructive: yes; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"threadId": {
"type": "string",
"format": "uuid"
},
"confirmThreadId": {
"type": "string",
"format": "uuid"
},
"planToken": {
"type": "string",
"minLength": 64,
"maxLength": 64
}
},
"required": [
"threadId",
"confirmThreadId",
"planToken"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
list_thread_participants
List the owner and participants of an accessible thread.
- MCP product: Workspace
- Required OAuth scope:
chat:read - Tool behavior: read-only: yes; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"threadId": {
"type": "string",
"format": "uuid"
}
},
"required": [
"threadId"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
add_thread_participant
Grant an active tenant user access to an owned thread.
- MCP product: Workspace
- Required OAuth scope:
workspace:access:manage - Tool behavior: read-only: no; destructive: no; idempotent: yes; open-world access: no
Input schema
{
"type": "object",
"properties": {
"threadId": {
"type": "string",
"format": "uuid"
},
"email": {
"type": "string",
"format": "email"
}
},
"required": [
"threadId",
"email"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
remove_thread_participant
Revoke a participant's direct access to an owned thread.
- MCP product: Workspace
- Required OAuth scope:
workspace:access:manage - Tool behavior: read-only: no; destructive: no; idempotent: yes; open-world access: no
Input schema
{
"type": "object",
"properties": {
"threadId": {
"type": "string",
"format": "uuid"
},
"email": {
"type": "string",
"format": "email"
}
},
"required": [
"threadId",
"email"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
list_workspace_items
List documents and artifacts filed in an accessible workspace.
- MCP product: Workspace
- Required OAuth scope:
workspace:content:read - Tool behavior: read-only: yes; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"format": "uuid"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 50
}
},
"required": [
"workspaceId"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
read_workspace_item
Read one accessible workspace document or artifact with secret-shaped strings redacted.
- MCP product: Workspace
- Required OAuth scope:
workspace:content:read - Tool behavior: read-only: yes; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"itemId": {
"type": "string",
"format": "uuid"
}
},
"required": [
"itemId"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
create_workspace_document
Create a Markdown document in an owned workspace.
- MCP product: Workspace
- Required OAuth scope:
workspace:content:write - Tool behavior: read-only: no; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"format": "uuid"
},
"title": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"description": {
"type": [
"string",
"null"
],
"maxLength": 2000
},
"content": {
"type": "string",
"maxLength": 500000
}
},
"required": [
"workspaceId",
"title",
"content"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
update_workspace_item
Rename, describe, move, or update Markdown content on a writable workspace item.
- MCP product: Workspace
- Required OAuth scope:
workspace:content:write - Tool behavior: read-only: no; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"itemId": {
"type": "string",
"format": "uuid"
},
"title": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"description": {
"type": [
"string",
"null"
],
"maxLength": 2000
},
"workspaceId": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"content": {
"type": "string",
"maxLength": 500000
},
"expectedVersion": {
"type": "integer",
"minimum": 1
}
},
"required": [
"itemId"
],
"anyOf": [
{
"required": [
"title"
]
},
{
"required": [
"description"
]
},
{
"required": [
"workspaceId"
]
},
{
"required": [
"content",
"expectedVersion"
]
}
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
plan_workspace_item_delete
Inspect an owned workspace item before permanent deletion and return a state-bound token.
- MCP product: Workspace
- Required OAuth scope:
workspace:content:delete - Tool behavior: read-only: yes; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"itemId": {
"type": "string",
"format": "uuid"
}
},
"required": [
"itemId"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
delete_workspace_item
Permanently delete an owned workspace item after a fresh delete plan.
- MCP product: Workspace
- Required OAuth scope:
workspace:content:delete - Tool behavior: read-only: no; destructive: yes; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"itemId": {
"type": "string",
"format": "uuid"
},
"confirmItemId": {
"type": "string",
"format": "uuid"
},
"planToken": {
"type": "string",
"minLength": 64,
"maxLength": 64
}
},
"required": [
"itemId",
"confirmItemId",
"planToken"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
read_maintenance_doc
Read structured long-lived maintenance guidance for an accessible workspace or artifact.
- MCP product: Workspace
- Required OAuth scope:
workspace:content:read - Tool behavior: read-only: yes; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"resourceType": {
"type": "string",
"enum": [
"workspace",
"artifact"
]
},
"resourceId": {
"type": "string",
"format": "uuid"
}
},
"required": [
"resourceType",
"resourceId"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
update_maintenance_doc
Create or update structured maintenance guidance using optimistic concurrency.
- MCP product: Workspace
- Required OAuth scope:
workspace:content:write - Tool behavior: read-only: no; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"resourceType": {
"type": "string",
"enum": [
"workspace",
"artifact"
]
},
"resourceId": {
"type": "string",
"format": "uuid"
},
"sections": {
"type": "object"
},
"expectedUpdatedAt": {
"type": [
"string",
"null"
],
"format": "date-time"
}
},
"required": [
"resourceType",
"resourceId",
"sections"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
list_workspace_todos
List ordered todos in an accessible workspace.
- MCP product: Workspace
- Required OAuth scope:
workspace:content:read - Tool behavior: read-only: yes; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"format": "uuid"
},
"includeRemoved": {
"type": "boolean",
"default": false
}
},
"required": [
"workspaceId"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
manage_workspace_todo
Create, edit, complete, reorder, remove, or restore a todo in a writable workspace.
- MCP product: Workspace
- Required OAuth scope:
workspace:todo:write - Tool behavior: read-only: no; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"action": {
"type": "string",
"enum": [
"create",
"edit",
"complete",
"reopen",
"reorder",
"remove",
"restore"
]
},
"workspaceId": {
"type": "string",
"format": "uuid"
},
"todoId": {
"type": "string",
"format": "uuid"
},
"text": {
"type": "string",
"minLength": 1,
"maxLength": 2000
},
"beforeId": {
"type": [
"string",
"null"
],
"format": "uuid"
}
},
"required": [
"action",
"workspaceId"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
list_workspace_skills
List available skills and the skills currently bound to a workspace.
- MCP product: Workspace
- Required OAuth scope:
workspace:skills:read - Tool behavior: read-only: yes; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"format": "uuid"
},
"includeInactive": {
"type": "boolean",
"default": false
}
},
"required": [
"workspaceId"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
read_skill
Read an accessible approved skill and its files.
- MCP product: Workspace
- Required OAuth scope:
workspace:skills:read - Tool behavior: read-only: yes; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"skillId": {
"type": "string",
"format": "uuid"
}
},
"required": [
"skillId"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
bind_workspace_skill
Bind an owned active skill to a writable workspace.
- MCP product: Workspace
- Required OAuth scope:
workspace:skills:write - Tool behavior: read-only: no; destructive: no; idempotent: yes; open-world access: no
Input schema
{
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"format": "uuid"
},
"skillId": {
"type": "string",
"format": "uuid"
}
},
"required": [
"workspaceId",
"skillId"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
unbind_workspace_skill
Remove an owned skill binding from a writable workspace.
- MCP product: Workspace
- Required OAuth scope:
workspace:skills:write - Tool behavior: read-only: no; destructive: no; idempotent: yes; open-world access: no
Input schema
{
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"format": "uuid"
},
"skillId": {
"type": "string",
"format": "uuid"
}
},
"required": [
"workspaceId",
"skillId"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
list_workspace_access
List direct access grants for an owned workspace.
- MCP product: Workspace
- Required OAuth scope:
workspace:access:manage - Tool behavior: read-only: yes; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"format": "uuid"
}
},
"required": [
"workspaceId"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
grant_workspace_access
Grant an active tenant user Viewer or Editor access to an owned workspace and its artifacts. New grants default to Viewer.
- MCP product: Workspace
- Required OAuth scope:
workspace:access:manage - Tool behavior: read-only: no; destructive: no; idempotent: yes; open-world access: no
Input schema
{
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"format": "uuid"
},
"email": {
"type": "string",
"format": "email"
},
"role": {
"type": "string",
"enum": [
"viewer",
"editor"
]
}
},
"required": [
"workspaceId",
"email"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
revoke_workspace_access
Revoke a user's direct access to an owned workspace.
- MCP product: Workspace
- Required OAuth scope:
workspace:access:manage - Tool behavior: read-only: no; destructive: no; idempotent: yes; open-world access: no
Input schema
{
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"format": "uuid"
},
"email": {
"type": "string",
"format": "email"
}
},
"required": [
"workspaceId",
"email"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
post_thread_message
Post a human-authored message to an accessible thread for participant and external-agent collaboration. This records the message but does not invoke Topline's internal assistant.
- MCP product: Workspace
- Required OAuth scope:
chat:write - Tool behavior: read-only: no; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"threadId": {
"type": "string",
"format": "uuid"
},
"text": {
"type": "string",
"minLength": 1,
"maxLength": 50000
},
"clientRequestId": {
"type": "string",
"maxLength": 128
}
},
"required": [
"threadId",
"text"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
list_schedules
List the current user's schedules, optionally filtered by artifact.
- MCP product: Workspace
- Required OAuth scope:
schedules:read - Tool behavior: read-only: yes; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"artifactId": {
"type": "string",
"format": "uuid"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 50
}
}
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
read_schedule
Read an owned schedule and its recent run history.
- MCP product: Workspace
- Required OAuth scope:
schedules:read - Tool behavior: read-only: yes; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"scheduleId": {
"type": "string",
"format": "uuid"
},
"runLimit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 20
}
},
"required": [
"scheduleId"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
create_schedule
Create and provision an owned natural-language or approved-endpoint schedule.
- MCP product: Workspace
- Required OAuth scope:
schedules:write - Tool behavior: read-only: no; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"triggerType": {
"type": "string",
"enum": [
"nl_prompt",
"endpoint"
]
},
"cron": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"timezone": {
"type": "string",
"minLength": 1,
"maxLength": 100
},
"promptText": {
"type": "string",
"maxLength": 8000
},
"endpoint": {
"type": "string",
"maxLength": 1000
},
"endpointParams": {
"type": [
"object",
"null"
]
},
"outputStrategy": {
"type": "string",
"enum": [
"new_per_fire",
"existing_thread",
"silent"
]
},
"outputThreadId": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"alertOnFailure": {
"type": "boolean"
},
"enabled": {
"type": "boolean"
}
},
"required": [
"name",
"triggerType",
"cron"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
update_schedule
Update or enable/disable an owned schedule while keeping scheduler state synchronized.
- MCP product: Workspace
- Required OAuth scope:
schedules:write - Tool behavior: read-only: no; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"scheduleId": {
"type": "string",
"format": "uuid"
},
"name": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"cron": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"timezone": {
"type": "string",
"minLength": 1,
"maxLength": 100
},
"promptText": {
"type": [
"string",
"null"
],
"maxLength": 8000
},
"endpoint": {
"type": [
"string",
"null"
],
"maxLength": 1000
},
"endpointParams": {
"type": [
"object",
"null"
]
},
"alertOnFailure": {
"type": "boolean"
},
"enabled": {
"type": "boolean"
}
},
"required": [
"scheduleId"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
delete_schedule
Permanently delete an owned non-manifest schedule and its scheduler job.
- MCP product: Workspace
- Required OAuth scope:
schedules:delete - Tool behavior: read-only: no; destructive: yes; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"scheduleId": {
"type": "string",
"format": "uuid"
},
"confirmScheduleId": {
"type": "string",
"format": "uuid"
}
},
"required": [
"scheduleId",
"confirmScheduleId"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
list_workforce_tasks
List coding/workforce tasks created by the current user.
- MCP product: Workspace
- Required OAuth scope:
workforce:read - Tool behavior: read-only: yes; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"conversationId": {
"type": "string",
"format": "uuid"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 25
}
}
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
read_workforce_task
Read an owned task and cursor-style progress events.
- MCP product: Workspace
- Required OAuth scope:
workforce:read - Tool behavior: read-only: yes; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"taskId": {
"type": "string",
"format": "uuid"
},
"afterSeq": {
"type": "integer",
"minimum": 0,
"default": 0
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 500,
"default": 100
}
},
"required": [
"taskId"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
start_workforce_task
Start a bounded coding-agent task in an owned thread.
- MCP product: Workspace
- Required OAuth scope:
workforce:write - Tool behavior: read-only: no; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"threadId": {
"type": "string",
"format": "uuid"
},
"brief": {
"type": "string",
"minLength": 1,
"maxLength": 20000
},
"artifactId": {
"type": "string",
"format": "uuid"
},
"costCeilingUsd": {
"type": "number",
"minimum": 0,
"maximum": 1000
}
},
"required": [
"threadId",
"brief"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
manage_workforce_task
Cancel, retry, guide, or answer a pending operator question for an owned workforce task.
- MCP product: Workspace
- Required OAuth scope:
workforce:write - Tool behavior: read-only: no; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"action": {
"type": "string",
"enum": [
"cancel",
"retry",
"instruct",
"answer"
]
},
"taskId": {
"type": "string",
"format": "uuid"
},
"message": {
"type": "string",
"minLength": 1,
"maxLength": 20000
},
"promptId": {
"type": "string",
"format": "uuid"
}
},
"required": [
"action",
"taskId"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
write_preference
Create, update, or archive one explicit personal response preference.
- MCP product: Workspace
- Required OAuth scope:
preferences:write - Required capability:
memory.confirm.personal - Tool behavior: read-only: no; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"action": {
"type": "string",
"enum": [
"create",
"update",
"archive"
]
},
"preferenceId": {
"type": "string",
"format": "uuid"
},
"topic": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"body": {
"type": "string",
"minLength": 1,
"maxLength": 10000
},
"expectedUpdatedAt": {
"type": "string",
"format": "date-time"
}
},
"required": [
"action"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.capability_required: ask a Topline administrator to grantmemory.confirm.personal; retrying without that capability will not succeed.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
list_attention
List pending operator questions, active work, and failed schedules that need the current user's attention.
- MCP product: Workspace
- Required OAuth scope:
workforce:read - Tool behavior: read-only: yes; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 25
}
}
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
get_customer_profile_status
Read the tenant-bound Customer Profiles product status, mirror freshness, pricing state, and recent run health. This tool cannot enable, price, or mutate the product.
- MCP product: Workspace
- Required OAuth scope:
customer_profiles:read - Required capability:
customer_profiles.read - Tool behavior: read-only: yes; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {}
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.capability_required: ask a Topline administrator to grantcustomer_profiles.read; retrying without that capability will not succeed.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
get_customer_profile
Read one enabled PestRoutes customer's reusable Topline profile with bounded model-safe recent activity and explicit freshness metadata.
- MCP product: Workspace
- Required OAuth scope:
customer_profiles:read - Required capability:
customer_profiles.read - Tool behavior: read-only: yes; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"customerId": {
"type": "string",
"pattern": "^[0-9]{1,30}quot;
},
"recentHours": {
"type": "integer",
"minimum": 1,
"maximum": 168,
"default": 24
},
"activityLimit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 50
}
},
"required": [
"customerId"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.capability_required: ask a Topline administrator to grantcustomer_profiles.read; retrying without that capability will not succeed.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
get_customer_activity
Read a bounded model-safe window from one enabled customer's Topline-observed history. This is sampled history, not vendor CDC or transactional truth.
- MCP product: Workspace
- Required OAuth scope:
customer_profiles:read - Required capability:
customer_profiles.history.read - Tool behavior: read-only: yes; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"customerId": {
"type": "string",
"pattern": "^[0-9]{1,30}quot;
},
"recentHours": {
"type": "integer",
"minimum": 1,
"maximum": 168,
"default": 24
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 50
}
},
"required": [
"customerId"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.capability_required: ask a Topline administrator to grantcustomer_profiles.history.read; retrying without that capability will not succeed.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
read_preferences
Read the operator's explicit product-managed response preferences. These override inferred AgentCore memory.
- MCP product: Workspace
- Required OAuth scope:
memory:read - Required capability:
memory.read - Tool behavior: read-only: yes; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"default": 20
}
}
}
Output schema
{
"type": "object",
"properties": {
"preferences": {
"type": "array",
"items": {
"type": "object",
"properties": {
"topic": {
"type": "string"
},
"body": {
"type": "string"
}
},
"required": [
"topic",
"body"
]
}
}
},
"required": [
"preferences"
]
}
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.capability_required: ask a Topline administrator to grantmemory.read; retrying without that capability will not succeed.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
search_context
Search permission-filtered Topline company context, including Graphiti-derived relationships with source citations.
- MCP product: Workspace
- Required OAuth scope:
memory:read - Required capability:
memory.read - Tool behavior: read-only: yes; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 1
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 25,
"default": 10
},
"retrieval_mode": {
"type": "string",
"enum": [
"hybrid",
"lexical",
"graph"
],
"default": "hybrid"
},
"as_of": {
"type": "string",
"format": "date-time"
}
},
"required": [
"query"
]
}
Output schema
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"type": "object"
}
}
},
"required": [
"results"
]
}
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.capability_required: ask a Topline administrator to grantmemory.read; retrying without that capability will not succeed.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
fetch_context
Fetch a cited Topline context item after applying current source and actor permissions.
- MCP product: Workspace
- Required OAuth scope:
memory:read - Required capability:
memory.read - Tool behavior: read-only: yes; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1
}
},
"required": [
"id"
]
}
Output schema
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"text": {
"type": "string"
},
"url": {
"type": "string"
},
"sourceType": {
"type": "string"
}
},
"required": [
"id",
"title",
"text",
"url",
"sourceType"
]
}
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.capability_required: ask a Topline administrator to grantmemory.read; retrying without that capability will not succeed.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
lookup_glossary
Look up a company-specific glossary term or abbreviation before guessing what it means.
- MCP product: Workspace
- Required OAuth scope:
glossary:read - Required capability:
glossary.read - Tool behavior: read-only: yes; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"term": {
"type": "string",
"minLength": 1
},
"scope_id": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"include_candidates": {
"type": "boolean",
"default": false
}
},
"required": [
"term"
]
}
Output schema
{
"type": "object",
"properties": {
"lookup": {
"type": "object"
}
},
"required": [
"lookup"
]
}
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.capability_required: ask a Topline administrator to grantglossary.read; retrying without that capability will not succeed.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
search_glossary
Search company glossary entries by term, alias, definition, category, status, or scope.
- MCP product: Workspace
- Required OAuth scope:
glossary:read - Required capability:
glossary.read - Tool behavior: read-only: yes; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"query": {
"type": "string"
},
"status": {
"type": "string",
"enum": [
"active",
"candidate",
"archived"
],
"default": "active"
},
"category": {
"type": "string"
},
"scope_id": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 25
}
}
}
Output schema
{
"type": "object",
"properties": {
"entries": {
"type": "array",
"items": {
"type": "object"
}
}
},
"required": [
"entries"
]
}
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.capability_required: ask a Topline administrator to grantglossary.read; retrying without that capability will not succeed.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
resolve_glossary_terms
Resolve exact glossary matches and likely unknown abbreviations from supplied text or candidate terms.
- MCP product: Workspace
- Required OAuth scope:
glossary:read - Required capability:
glossary.read - Tool behavior: read-only: yes; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"text": {
"type": "string"
},
"candidates": {
"type": "array",
"items": {
"type": "string"
}
},
"scope_id": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"include_candidates": {
"type": "boolean",
"default": false
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 50
}
}
}
Output schema
{
"type": "object",
"properties": {
"recognized": {
"type": "array",
"items": {
"type": "object"
}
},
"ambiguous": {
"type": "array",
"items": {
"type": "object"
}
},
"unknown": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"recognized",
"ambiguous",
"unknown"
]
}
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.capability_required: ask a Topline administrator to grantglossary.read; retrying without that capability will not succeed.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
create_glossary_term
Publish a new company glossary term immediately when the operator explicitly asks for it.
- MCP product: Workspace
- Required OAuth scope:
glossary:write - Required capability:
glossary.approve.scope - Tool behavior: read-only: no; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"term": {
"type": "string",
"minLength": 1
},
"definition": {
"type": "string",
"minLength": 1
},
"aliases": {
"type": "array",
"items": {
"type": "string"
}
},
"category": {
"type": "string"
},
"scope_id": {
"type": [
"string",
"null"
],
"format": "uuid"
}
},
"required": [
"term",
"definition"
]
}
Output schema
{
"type": "object",
"properties": {
"ok": {
"type": "boolean"
},
"entry": {
"type": "object"
}
},
"required": [
"ok",
"entry"
]
}
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.capability_required: ask a Topline administrator to grantglossary.approve.scope; retrying without that capability will not succeed.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
update_glossary_term
Update an existing company glossary term by id when the operator explicitly requests the change.
- MCP product: Workspace
- Required OAuth scope:
glossary:write - Required capability:
glossary.approve.scope - Tool behavior: read-only: no; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1
},
"term": {
"type": "string",
"minLength": 1
},
"definition": {
"type": "string",
"minLength": 1
},
"aliases": {
"type": "array",
"items": {
"type": "string"
}
},
"category": {
"type": "string"
},
"scope_id": {
"type": [
"string",
"null"
],
"format": "uuid"
}
},
"required": [
"id"
],
"anyOf": [
{
"required": [
"term"
]
},
{
"required": [
"definition"
]
},
{
"required": [
"aliases"
]
},
{
"required": [
"category"
]
},
{
"required": [
"scope_id"
]
}
]
}
Output schema
{
"type": "object",
"properties": {
"ok": {
"type": "boolean"
},
"entry": {
"type": "object"
}
},
"required": [
"ok",
"entry"
]
}
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.capability_required: ask a Topline administrator to grantglossary.approve.scope; retrying without that capability will not succeed.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
propose_company_knowledge
Propose cited company knowledge for review. This never auto-publishes and returns a proposal ID for status checks.
- MCP product: Workspace
- Required OAuth scope:
company_knowledge:propose - Required capability:
company_knowledge.propose - Tool behavior: read-only: no; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"title": {
"type": "string",
"minLength": 1,
"maxLength": 500
},
"body": {
"type": "string",
"minLength": 1,
"maxLength": 50000
},
"source_excerpt": {
"type": "string",
"maxLength": 4000
},
"citation_url": {
"type": "string",
"format": "uri",
"pattern": "^https://"
},
"scope_id": {
"type": [
"string",
"null"
],
"format": "uuid"
}
},
"required": [
"title",
"body"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.capability_required: ask a Topline administrator to grantcompany_knowledge.propose; retrying without that capability will not succeed.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
publish_company_knowledge
Submit cited company knowledge for low-cost review and automatic publication only when confidence is high and no conflict or sensitivity is detected.
- MCP product: Workspace
- Required OAuth scope:
company_knowledge:write - Required capability:
company_knowledge.write - Tool behavior: read-only: no; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"title": {
"type": "string",
"minLength": 1,
"maxLength": 500
},
"body": {
"type": "string",
"minLength": 1,
"maxLength": 50000
},
"source_excerpt": {
"type": "string",
"maxLength": 4000
},
"citation_url": {
"type": "string",
"format": "uri",
"pattern": "^https://"
},
"scope_id": {
"type": [
"string",
"null"
],
"format": "uuid"
}
},
"required": [
"title",
"body"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.capability_required: ask a Topline administrator to grantcompany_knowledge.write; retrying without that capability will not succeed.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
company_knowledge_status
Read the current review, confirmation, publication, or archive status of a company knowledge proposal.
- MCP product: Workspace
- Required OAuth scope:
memory:read - Required capability:
memory.read - Tool behavior: read-only: yes; destructive: no; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"proposalId": {
"type": "string",
"format": "uuid"
}
},
"required": [
"proposalId"
]
}
Output schema
{
"type": "object",
"properties": {
"proposal": {
"type": "object"
},
"confirmationUrl": {
"type": [
"string",
"null"
]
}
},
"required": [
"proposal",
"confirmationUrl"
]
}
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.capability_required: ask a Topline administrator to grantmemory.read; retrying without that capability will not succeed.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.
undo_company_knowledge
Archive a published company knowledge item and remove it from retrieval and the company graph.
- MCP product: Workspace
- Required OAuth scope:
company_knowledge:write - Required capability:
company_knowledge.write - Tool behavior: read-only: no; destructive: yes; idempotent: not declared; open-world access: no
Input schema
{
"type": "object",
"properties": {
"proposalId": {
"type": "string",
"format": "uuid"
}
},
"required": [
"proposalId"
]
}
Output schema
No output schema is currently declared by the runtime contract.
Errors and recovery
scope_required: reconnect or reauthorize the client with the required OAuth scope shown above.capability_required: ask a Topline administrator to grantcompany_knowledge.write; retrying without that capability will not succeed.Invalid arguments: correct the request so it matches the input schema before retrying.mcp_tool_timeout: inspect whether the operation completed, then retry only when the operation is safe to repeat.