operationId values — camelCase, stable identifiers. Renaming a value is a breaking change, so names only change in major releases.
New Public API endpoints automatically become MCP tools on the next deploy. There is no separate registration step.
Agents
Agents
| Tool | Description |
|---|---|
listAgents | List Agents for your team. |
createAgent | Create a new Agent. |
getAgent | Get an Agent by ID. |
updateAgent | Update an Agent’s display name or delivery settings. |
deleteAgent | Delete an Agent. Active Runs are interrupted, and its schedules and Case Triggers are removed. |
moveAgent | Move an Agent (and its connected workspace, including its Memory) to another team. Refused if the destination team has archived Memory for the Agent or one of its Queues. |
duplicateAgent | Duplicate an Agent into a new “Copy of …” Agent. Choose what to carry over with the include flags — Connections, Queue, Skills and Files, Logins and Secrets, plugins, and AOP are copied by default. Memory can only be copied from the Duvo app, so include_memory: true is rejected here. |
getEvalScores | Get aggregate evaluation scores for an Agent’s Runs since a given time. |
getEvalRubrics | List the platform and Agent-specific evaluation rubrics for a build. |
createEvalRubric | Add one custom evaluation rubric to a build (max 5 per revision). |
replaceEvalRubrics | Replace a build’s entire custom evaluation rubric set (max 5). |
updateEvalRubric | Edit a custom evaluation rubric’s title or description. |
deleteEvalRubric | Remove a custom evaluation rubric. |
Agent Folders
Agent Folders
| Tool | Description |
|---|---|
listAgentFolders | List folders for organizing Agents. |
createAgentFolder | Create a new folder. |
updateAgentFolder | Rename or update a folder. |
deleteAgentFolder | Delete a folder. |
moveAgentsToFolder | Move one or more Agents into a folder. |
Setups
Setups
A Setup is a versioned configuration of an Agent — its AOP, Connections, and other settings.
| Tool | Description |
|---|---|
listAgentRevisions | List Setups for an Agent. |
getRevision | Get a Setup by ID. |
createRevision | Create a new Setup for an existing Agent. |
updateRevision | Update a Setup’s name or AOP. |
promoteRevision | Promote a Setup to active, making it the one used for new Runs. |
generateRevision | Start generating draft changes; returns the builder Run and target build IDs. |
getBuilderRun | Read generation progress, pending questions, warnings and the review checkpoint. |
resumeBuilderRun | Supply the user’s answers to pending generation questions. |
cancelBuilderRun | Cancel generation without promising to revert saved draft content. |
acceptRevisionGeneration | Keep the reviewed draft changes using the observed attempt ID and start time; does not activate them. |
declineRevisionGeneration | Restore the reviewed attempt’s checkpoint; does not activate a build. |
Runs
Runs
| Tool | Description |
|---|---|
listRuns | List Runs for your team. |
startRun | Start a new Run on an Agent. |
getRun | Get a Run’s current status and details. |
listRunMessages | List all messages exchanged during a Run. |
postRunMessage | Send a message to an active Run. |
respondToHumanRequest | Respond to a human-in-the-loop request from an active Run. |
stopRun | Stop an active Run. |
getRunEvaluation | Get the latest evaluation for a completed Run. |
Agent Memory
Agent Memory
| Tool | Description |
|---|---|
listAgentMemoryFiles | List the memory files an Agent has saved. |
getAgentMemoryFile | Get the contents of a single Agent memory file. |
Files
Files
| Tool | Description |
|---|---|
listFiles | List Files for your team. |
createFileUploadUrl | Generate a signed URL to upload a new file to team storage. |
getFileContent | Get the text content of a file. |
updateFileContent | Update the text content of a file. |
getFileDownloadUrl | Generate a signed download URL for a file. |
renameFile | Rename a file. |
deleteFile | Delete a file from team storage. |
Cases and Queues
Cases and Queues
Cases are individual work items routed through an Agent. Queues group related cases.
| Tool | Description |
|---|---|
listQueues | List queues for your team. |
createQueue | Create a new queue. |
getQueue | Get a queue by ID. |
updateQueue | Update a queue’s name or settings. |
deleteQueue | Delete a queue. |
getQueueJsonSchema | Get the case schema a queue validates new cases against. |
createQueueJsonSchema | Declare a queue’s first case schema by hand. |
replaceQueueJsonSchema | Replace a queue’s case schema with a new version. |
attachQueueJsonSchema | Put a queue on an existing case schema, so both queues share one. |
detachQueueJsonSchema | Stop validating new cases on a queue. |
updateQueueJsonSchemaSettings | Require typed cases on a queue, and freeze or unfreeze its schema. |
listQueueAgents | List Agents attached to a queue. |
getBatchQueueStats | Get case status counts for up to 100 queues in one call. |
listCases | List cases in a queue. |
searchCases | Search for cases across queues. |
exportCases | Export a queue’s cases as JSON or a CSV file. |
getCase | Get a case by ID. |
updateCase | Edit a case’s title or data. |
createCases | Create new cases in a queue. |
deleteCase | Delete a case. |
bulkReprocessCases | Re-process a batch of cases on a chosen Agent. |
bulkUpdateCaseStatus | Update the status of multiple cases at once. |
bulkUpdateCasePriority | Set the priority of multiple cases at once. |
listCaseRuns | List Runs for a specific case. |
listCaseRunRecentMessages | Get recent messages from the latest Run on a case. |
getCaseQueueEvalRubrics | List a queue’s active case-level evaluation rubrics. |
createCaseQueueEvalRubric | Add one case-level evaluation rubric to a queue’s current version (max 12). |
replaceCaseQueueEvalRubrics | Replace a queue’s entire case-level rubric set (max 12). |
updateCaseQueueEvalRubric | Edit a case-level evaluation rubric’s title or description. |
deleteCaseQueueEvalRubric | Remove a case-level evaluation rubric. |
listQueueAggregations | List a typed queue’s saved aggregation definitions. |
createQueueAggregation | Save a Cube-style aggregation definition over a queue’s case data. |
evaluateQueueAggregation | Evaluate an aggregation against current data without saving it. |
getQueueAggregationResult | Read an aggregation definition’s cached result. |
refreshQueueAggregation | Force a fresh recompute of an aggregation definition. |
deleteQueueAggregation | Soft-delete an aggregation definition. |
Case Attachments
Case Attachments
Files attached to a case. Uploading is a three-step flow: mint an upload URL, PUT the bytes to it, then finalize so the file becomes visible on the case.
| Tool | Description |
|---|---|
listCaseAttachments | List the files attached to a case, including failed uploads. |
createCaseAttachmentUploadUrl | Mint a signed URL for uploading a file to a case. |
finalizeCaseAttachment | Confirm an uploaded file so it becomes visible on the case. |
getCaseAttachmentDownloadUrl | Mint a short-lived signed URL to download a case file. |
deleteCaseAttachment | Remove a file from a case. |
Case Labels
Case Labels
| Tool | Description |
|---|---|
listQueueLabels | List labels defined in a queue. |
createQueueLabel | Create a new label in a queue. |
updateQueueLabel | Update a queue label’s name or color. |
deleteQueueLabel | Delete a queue label. |
listCaseLabels | List labels currently assigned to a case. |
assignCaseLabels | Assign one or more labels to a case. |
unlinkCaseLabels | Remove labels from a case. |
Case Triggers
Case Triggers
Case triggers automatically route new cases to a queue based on matching rules.
| Tool | Description |
|---|---|
listAgentCaseTriggers | List case triggers for an Agent. |
createAgentCaseTrigger | Create a new case trigger. |
getAgentCaseTrigger | Get a case trigger by ID. |
updateAgentCaseTrigger | Update a case trigger’s rules or settings. |
deleteAgentCaseTrigger | Delete a case trigger. |
previewAgentCaseTriggerConflicts | Preview conflicts before saving a case trigger. |
Triggers
Triggers
Event triggers start a Run automatically when an external event fires (for example, an email arrives, a Linear issue is created, or a file changes in Google Drive).
Slack channel triggers have their own tools: an Agent can watch many channels at once, so each channel is a separate trigger rather than one trigger per Connection.
| Tool | Description |
|---|---|
listAgentTriggers | List the event triggers you own for an Agent. |
upsertAgentTrigger | Create or update an event trigger for an Agent. |
deleteAgentTrigger | Delete an event trigger and its filter config. Upsert with enabled: false to pause. |
listAgentTriggerTypes | List the available trigger types for an Agent by Connection. |
| Tool | Description |
|---|---|
listAgentSlackBoundWorkspaces | List the Slack workspaces connected to an Agent revision you can watch. |
listAgentSlackTriggers | List the Slack channel triggers you own for an Agent. |
createAgentSlackTrigger | Watch a Slack channel — optionally only messages containing given keywords. |
updateSlackTrigger | Change a Slack channel trigger’s channel or keywords, or pause and resume it. |
deleteSlackTrigger | Delete a Slack channel trigger. |
Suggestions
Suggestions
Duvo proposes improvements to an Agent based on its past Runs — for example, adding, removing, or replacing a Connection. These tools manage the suggestions inbox.
| Tool | Description |
|---|---|
listAgentSuggestions | List an Agent’s pending or historical suggestions. |
getAgentSuggestion | Fetch a single suggestion, including the progress of an AOP change being applied. |
consumeAgentSuggestion | Apply a suggestion to the Agent’s draft Setup. |
rejectAgentSuggestion | Dismiss a pending suggestion. |
Connections
Connections
| Tool | Description |
|---|---|
listIntegrations | List available connection types for your team. |
listConnections | List your team’s authorized Connections. |
getConnection | Get a Connection by ID. |
createConnection | Create a new Connection. |
updateConnection | Update a Connection’s settings. |
deleteConnection | Remove a Connection. |
getConnectionCredentials | Get credentials for a Connection. |
createCustomIntegration | Register a custom MCP server as a Connection type. |
deleteCustomIntegration | Remove a custom MCP server Connection type. |
probeMcpServer | Test connectivity to an MCP server URL. |
startNativeOAuth | Start an OAuth flow for a native provider (Gmail, Google Sheets, Outlook, etc.) and return an authorization URL. |
authorizeMcpOAuth | Start an OAuth flow for a remote MCP server using Dynamic Client Registration and return an authorization URL. |
checkMcpOAuth | Probe an MCP server URL to discover whether it supports OAuth Dynamic Client Registration. |
listPluginCatalog | List built-in plugins that can be referenced by name in a Setup’s plugins array. |
Skills
Skills
| Tool | Description |
|---|---|
listSkills | List Skills for your team. |
listSystemSkills | List system-wide Skills available to all teams. |
createSkill | Create a new Skill. |
listSkillFiles | List files in a Skill. |
getSkillFileContent | Get the content of a Skill file. |
updateSkillFile | Update the content of a Skill file. |
downloadSkill | Download a Skill as an archive. |
deleteSkill | Delete a Skill. |
listSkillAssignments | List Agents that use a Skill. |
updateSkillFile, open a draft, edit the draft’s files, then activate it — the
previous version stays intact and can be re-activated later.| Tool | Description |
|---|---|
listSkillRevisions | List a Skill’s version history. |
createSkillRevision | Open (or resume) a draft version of a Skill. |
listSkillRevisionFiles | List files in a Skill version. |
getSkillRevisionFileContent | Get the content of a file in a Skill version. |
updateSkillRevisionFile | Update a file in a draft or active Skill version. |
promoteSkillRevision | Make a Skill version the active one. |
updateSkillRevision | Rename a Skill version or change its description. |
deleteSkillRevision | Delete a draft or past Skill version. |
Schedules
Schedules
| Tool | Description |
|---|---|
listAgentSchedules | List the schedules you own on an Agent. |
listAllAgentSchedules | List every member’s schedules on an Agent, with who created each one (elevated team role). |
createSchedule | Create a schedule for an Agent. |
updateSchedule | Update an existing schedule. |
deleteSchedule | Delete a schedule. |
Secrets and Logins
Secrets and Logins
| Tool | Description |
|---|---|
listSecrets | List stored secrets for your team. |
createSecret | Create a new stored secret. |
getSecret | Get a secret by ID. |
updateSecret | Update a secret. |
deleteSecret | Delete a secret. |
listCredentials | List stored Logins for your team. |
createCredential | Create a new Login. |
getCredential | Get a Login by ID. |
updateCredential | Update a Login. |
deleteCredential | Delete a Login. |
Setup Configuration
Setup Configuration
These tools attach Connections, Logins, and Secrets to a specific Setup.
| Tool | Description |
|---|---|
listRevisionIntegrations | List Connections attached to a Setup. |
attachRevisionIntegrations | Attach one or more Connections to a Setup. |
removeRevisionIntegration | Remove a Connection from a Setup. |
listRevisionIntegrationConnections | List Connection instances for an integration slot on a Setup. |
pinRevisionIntegrationConnection | Pin a specific Connection to an integration slot on a Setup. |
unpinRevisionIntegrationConnection | Unpin a Connection from an integration slot on a Setup. |
listRevisionIntegrationQueues | List queues configured for an integration slot on a Setup. |
replaceRevisionIntegrationQueues | Replace the queues configured for an integration slot on a Setup. |
getRevisionCaseQueueSetup | Check that a Setup’s case-queue slots each point at a queue. |
listRevisionLogins | List Logins attached to a Setup. |
attachRevisionLogin | Attach a Login to a Setup. |
detachRevisionLogin | Remove a Login from a Setup. |
listRevisionSecrets | List Secrets attached to a Setup. |
attachRevisionSecret | Attach a Secret to a Setup. |
detachRevisionSecret | Remove a Secret from a Setup. |
Sandboxes
Sandboxes
| Tool | Description |
|---|---|
createSandbox | Create a new sandbox environment. |
createSandboxUploadUrl | Generate a signed URL to upload files to a sandbox. |
listSandboxFiles | List files in a sandbox directory. |
uploadSandboxFile | Upload a file directly to a sandbox. |
Team
Team
| Tool | Description |
|---|---|
listMyTeams | List teams the authenticated caller can act on. |
getTeam | Get your team’s details. |
listTeamMembers | List members of your team. |
updateTeamMemberRole | Change the team role of a member who has already joined. Requires the Manager role or above; only an Owner can grant or remove the Owner role, and the last remaining Owner cannot be demoted. Prompts for confirmation. |
removeTeamMember | Remove a member from a team, or leave a team yourself. Removing someone else requires the Superadmin role or above; any member can remove themselves. The last remaining Owner cannot be removed. Prompts for confirmation. |
listOrgTeams | List all teams in an organization you belong to. |
listOrgAgents | List every Agent across all teams in an organization, with its team, the state of its most recent Run and the state of its schedules. Requires an organization Admin, Executive, or Owner role, and an API key scoped to all teams you can access — a key pinned to a single team is rejected. |
listOrgRuns | List Runs across all teams in an organization, filtered by status, Agent, team, source, evaluation issues and time. Returns the last 7 days unless a time bound is given. Requires an organization Admin, Executive, or Owner role, and an API key scoped to all teams you can access — a key pinned to a single team is rejected. |
createOrgTeam | Create a new team in an organization you administer. Requires an organization Admin, Executive, or Owner role. |
inviteOrgMember | Invite a person to an organization you administer, optionally assigning them to one of its teams. Requires an organization Admin, Executive, or Owner role. You cannot grant a role higher than your own. |
listMyOrganizations | List the organizations you belong to, with your role and member count in each. Use it to check for an organization admin role before calling org-scoped tools. |
getOrgInsightsHeadline | Get org-wide headline run KPIs (totals, success rate, active agents and users) across all teams in an organization. Requires an organization admin role. |
getOrgInsightsMetrics | Get per-team run/assignment/schedule metrics across an organization. Requires an organization admin role. |
getOrgInsightsUsageChart | Get org-wide run volume over time (scheduled vs on-demand) at day/week/month granularity. Requires an organization admin role. |
getProfile | Get your user profile. |
Invites
Invites
Inviting requires the Manager role or above on the team; revoking a team invitation requires
Superadmin or above. Creating an invitation does not email anyone — call
Accepting or declining an invitation is not exposed as a tool: both are matched against the
signed-in person’s verified email address, so they only work from the Duvo web app.
sendTeamInviteEmail with the returned id, or use bulkCreateTeamInvites, which creates and
emails in one step.| Tool | Description |
|---|---|
listTeamInvites | List a team’s pending invitations. Available on /v2/mcp only. Pass processId to list the pending invitations for one Clarity process instead. |
createTeamInvite | Invite one person to a team. Pass processId to invite them to a Clarity process instead of the whole team (requires the team:clarity-member role). Does not send email. |
bulkCreateTeamInvites | Invite up to 50 people at once, emailing each invitation. Email addresses are matched case-insensitively, so repeats within one request are collapsed. Returns invited / skipped / failed counts; skipped means already on the team, already invited, or a collapsed repeat. |
updateTeamInvite | Change the role on a pending invitation. Accepted or declined invitations are rejected. |
sendTeamInviteEmail | Email an invitation to its recipient — for one created by createTeamInvite, or to resend. |
deleteTeamInvite | Revoke an invitation so its link and email stop working. Accepts a team invitation or a Clarity process invitation. |
getTeamInviteLink | Get the team’s shareable invite link — the one URL anyone can use to join. |
createTeamInviteLink | Create or regenerate that link. Regenerating invalidates the previous URL. |
deleteTeamInviteLink | Delete the shareable link. Per-person invitations are unaffected. |
Notifications
Notifications
Notification tools require the Notification Center feature and return a not-found error when it is not enabled for the team.
| Tool | Description |
|---|---|
listNotifications | List notifications for the authenticated user, filterable by type, severity, unread, or important. |
getNotification | Get a single notification by ID. |
getNotificationCounts | Get notification counts broken down by type. |
getUnreadNotificationCount | Get the number of unread notifications. |
markNotificationRead | Mark a notification as read. |
markAllNotificationsRead | Mark all notifications as read. |
dismissNotification | Dismiss an important notification, unpinning it from the Important section. |
deleteReadNotifications | Delete all read notifications. Asks for confirmation before it runs. |
deleteAllNotifications | Delete all notifications. Asks for confirmation before it runs. |
deleteReadNotifications and deleteAllNotifications permanently delete notifications and cannot be undone. Both are flagged as needing your approval, so a host that supports permission prompts asks you to confirm every call before the tool runs.Process Intelligence
Process Intelligence
Clarity v2 snapshot tools keep their existing names and endpoints. On backends supporting plural exceptions, save tools accept either
Ask Duvo applies the same team, process, and organization permissions as the
web app. Organization tools therefore work only when the represented user has
the required organization role. Live browser recording, audio/media transport,
upload ingestion callbacks, and other session-bound internals are not tools.
For free-form artifact edits, Ask Duvo uses its reviewed patch-draft workflow;
the lower-level Artifact Chat send-message and patch-decision routes remain CLI
and web-app surfaces instead of raw MCP tools.
exceptions arrays or the older exception/handling pair on each step and return V2 arrays. Mixing both shapes on one step is invalid. Arrays preserve exception IDs, handling, and frequency. Refresh your client’s tool schemas and support both response versions before using the upgraded backend; tool results contain the endpoint response as JSON text.| Tool | Description |
|---|---|
listClarityProcesses | List process captures for your team. |
listClarityProcessSummaries | List cross-process portfolio summaries (summary, SWOT, projected impact, steps). |
createClarityProcess | Create a Clarity process for the current team. |
updateClarityProcess | Update a process name, guidance, visibility, or completion status. |
duplicateClarityProcess | Duplicate a process and its durable content. |
deleteClarityProcess | Soft-delete a process from normal product views when no capture analysis is running. |
getClarityProcess | Get a process capture by ID. |
getClarityCapture | Get one capture with full transcript. |
getLegacyClarityProcess | Get a legacy process capture by ID. |
getClarityProcessTree | Get the process landscape tree. |
getClarityProcessLandscape | Get the process landscape with nodes and links. Inaccessible folder rows and names are omitted. Restricted-only branches are summarized with a hidden-process count, and an anonymous Restricted process bridge row appears only when needed to preserve visible topology. Organization-wide generation status and eligible input counts are included only for organization Owners and Executives. |
getClarityHierarchyPeople | Get the people on every process in the landscape in one request, with their role, invitation status, and capture count. |
generateClarityProcessLandscape | Generate a process landscape from existing team processes, with optional capture context. |
listClarityLandscapeCaptures | List the organization’s Process Landscape captures. Excluded captures and their reasons can be included for quality audits. |
createClarityLandscapeNode | Create an area node in the process landscape. |
updateClarityLandscapeNode | Rename a landscape node or update its owner label. |
deleteClarityLandscapeNode | Delete a landscape node and its subtree. |
setClarityLandscapeNodePlacement | Move a landscape node and confirm its placement. |
setClarityLandscapePriorities | Set or clear heatmap priorities on landscape nodes in one batch (organization admin+). |
proposeClarityLandscapeProcess | Propose a new process in the process landscape. |
createClarityProcessNode | File an existing process into an area of the process landscape. |
reorderClarityLandscapeAreas | Reorder a complete sibling group of areas (organization admin+). |
acceptClarityLandscapeNode | Accept a proposed area into the active process landscape (organization admin+). |
declineClarityLandscapeNode | Reject a proposed node. Proposed descendants are removed; real processes underneath move to Unsorted. |
assignClarityLandscapeNodeTeam | Set a process’s owning team, accepting a proposal or moving an existing process (organization admin+). |
listClarityLandscapeNodePeople | List the people involved in one landscape process. |
addClarityLandscapeNodePerson | Add a placeholder or invite a person to a landscape process. |
updateClarityLandscapeNodePerson | Change or clear a person’s role in a landscape process. |
removeClarityLandscapeNodePerson | Remove a person and revoke the process access granted when they were added. |
batchAddClarityLandscapeNodePeople | Add people across several process nodes in one bounded batch. |
organizeClarityProcessLandscape | Start a background pass across the whole Process Landscape that files eligible Unsorted processes; changes appear progressively. |
acceptClarityTeamAssignmentSuggestion | Accept a pending owning-team suggestion. |
dismissClarityTeamAssignmentSuggestion | Dismiss a pending owning-team suggestion. |
acceptClarityCaptureSuggestion | Accept a pending capture suggestion and create its capture request. |
dismissClarityCaptureSuggestion | Dismiss a pending capture suggestion. |
assignClarityLandscapeCaptureRequest | Assign or unassign an open landscape capture request. |
listClarityExtraCaptureRequests | List pending extra capture requests for a process. |
assignClarityExtraCaptureRequest | Assign or unassign a pending extra capture request to a team member. |
listClarityProcessSnapshots | List snapshots for a process capture. |
getClarityProcessSnapshot | Get a process capture snapshot. |
listClarityStepFrames | Get one representative screenshare frame per current-process step, with short-lived signed URLs; window (1-5) adds neighbouring frames as candidates; size=thumb returns 768px copies. |
generateClarityProcessSnapshot | Start current-process or automation proposal generation. |
stopClarityProcessSnapshot | Stop an in-progress snapshot generation. |
saveClarityProcessSnapshot | Save edited snapshot content. |
promoteClarityProcessSnapshot | Promote a snapshot to live. |
revertClarityProcessSnapshot | Delete a non-required snapshot version. |
postprocessClaritySnapshot | Re-run derived snapshot post-processing when no generation is active for the process. |
buildClarityAutomation | Build an Automation from the latest proposal, reusing the same run when retried for that proposal. |
createClarityArtifactImportUploadUrl | Create an upload URL for a supported process artifact. |
completeClarityArtifactImport | Complete an uploaded artifact import. |
listClarityProcessLinks | List process-to-process links in Clarity. Edges touching inaccessible processes are omitted. |
createClarityProcessLink | Create a process-to-process link in Clarity. |
updateClarityProcessLink | Update a process-to-process link in Clarity. |
deleteClarityProcessLink | Delete a process-to-process link in Clarity. |
listClarityProcessLabels | List your organization’s process tags with usage counts. |
createClarityProcessLabel | Create a process tag in your organization. |
updateClarityProcessLabel | Rename or recolor a process tag. |
deleteClarityProcessLabel | Delete a process tag from every process using it. |
listClarityProcessAssignedLabels | List the tags assigned to a process. |
assignClarityProcessLabels | Assign tags to a process (existing or new). |
unlinkClarityProcessLabels | Remove tags from a process. |
listAvailableClarityProcessLabels | List the organization tags available to a process. |
listClarityFolders | List process-library folders for the current team. |
createClarityFolder | Create a process-library folder. |
updateClarityFolder | Rename a process-library folder. |
deleteClarityFolder | Delete a folder and move its processes to Unfiled. |
reorderClarityFolders | Replace the complete folder display order. |
setupClarityFoldersFromLandscape | Create missing folders linked to Process Landscape groups. |
moveClarityProcessesToFolder | Move processes into a folder or back to Unfiled. |
fileSuggestedClarityProcesses | File visible Unfiled processes into linked suggested folders. |
createClarityGuidance | Create automation guidance for a process. |
updateClarityGuidance | Replace automation guidance for a process. |
getClarityTeamSettings | Get Clarity settings for the current team. |
updateClarityTeamSettings | Update team, company, language, and report settings. |
getClarityProcessSharing | Get a completed process’s public-sharing state. |
updateClarityProcessSharing | Enable or disable public sharing and proposal inclusion. |
listClarityProcessMembers | List users with accepted access to a process, plus pending invites. |
removeClarityProcessMember | Revoke a user’s accepted process access. |
deleteClarityCapture | Delete a process capture. |
createClarityDocumentUploadUrl | Create a signed upload for a process document capture. |
completeClarityDocumentUpload | Complete an uploaded process document capture. |
createClarityImageUploadUrl | Create a signed upload for a PNG, JPEG, or WebP image capture. |
completeClarityImageUpload | Complete an uploaded image capture and start background parsing. |
createClarityVideoUploadUrl | Create a signed upload for a process video capture. |
completeClarityVideoUpload | Complete an uploaded process video capture. |
inviteClarityMeetingNotetaker | Invite the Clarity notetaker to a supported meeting. |
listClarityOrganizationInterviews | List organization and team interview captures across an organization. |
getClarityOrganizationInterview | Get an organization interview and its transcript. |
inviteClarityOrganizationNotetaker | Invite the notetaker to an organization meeting. |
finalizeClarityOrganizationInterview | Finalize a recording organization interview. |
updateClarityOrganizationInterview | Rename an organization interview. |
deleteClarityOrganizationInterview | Delete an organization interview. |
createClarityOrganizationDocumentUploadUrl | Create a signed organization-document upload. |
completeClarityOrganizationDocumentUpload | Complete an organization document interview. |
listClarityLandscapeNodeInterviews | List interviews linked to a Process Landscape node. |
deleteClarityLandscapeNodeInterview | Delete an interview linked to a Process Landscape node. |
listClarityTeamInterviews | List interview captures for the current team. |
deleteClarityTeamInterview | Delete a team-level interview capture. |
createClarityTeamDocumentUploadUrl | Create a signed team-document upload. |
completeClarityTeamDocumentUpload | Complete a team document interview. |
getClarityProcessInviteLink | Read active interview invite-link metadata. |
createClarityInviteLink | Create or regenerate an interview invite link. |
deleteClarityProcessInviteLink | Revoke a process’s active interview invite link. |
getClarityProcessJoinInfo | Inspect an interview invite without accepting it. |
acceptClarityProcessJoin | Accept an interview invite as its matching user. |
startClarityExport | Start a SAP Signavio export from BPMN XML. |
listActiveClarityExports | List active exports for the current team and user. |
getClarityExport | Get an accessible export by ID. |
getClarityPortfolioIntelligence | Read the team’s operating model. Requires the Manager role or above, or an organization Admin role. |
generateClarityPortfolioIntelligence | Start operating-model generation. Requires the Manager role or above, or an organization Admin role. |
upgradeClarityProcess | Upgrade an eligible legacy process to Clarity v2. |
listClarityArtifactChatConversations | List Artifact Chat conversations for a snapshot kind. |
getClarityArtifactChatMessages | Get messages in an Artifact Chat conversation. |
stopClarityArtifactChatConversation | Stop an in-flight Artifact Chat reply. |
deleteClarityArtifactChatConversation | Delete an open or working Artifact Chat conversation. |
Duvo Pulse
Duvo Pulse
Pulse dashboards are live, agent-generated visualizations of your Duvo data.
Generation runs in the background — after creating or iterating on a dashboard, poll
getPulseDashboard until its status is completed, then read its rendered HTML.| Tool | Description |
|---|---|
listPulseDashboards | List your Pulse dashboards (your own, or those shared with you). |
createPulseDashboard | Create a dashboard from a natural-language prompt. Generation is asynchronous. |
getPulseDashboard | Get a dashboard’s metadata and generation status. |
getPulseDashboardHtml | Get a dashboard’s rendered HTML document. |
getPulseDashboardPdf | Render a dashboard to a PDF document (with its live data). |
exportPulseDashboardHtml | Render a dashboard to a self-contained static HTML snapshot (data baked in). |
sendPulseDashboardMessage | Send an instruction to iterate on a dashboard (requires edit access). Can carry attachments the agent will read. |
createPulseDashboardAttachmentUploadUrl | Get a presigned URL to upload a file (e.g. an HTML dashboard to reproduce, or a screenshot to match) into a dashboard’s sandbox, then reference it from sendPulseDashboardMessage. Up to 25 MB per file and 5 files per message (requires edit access). |
getPulseDashboardAttachmentDownloadUrl | Get a short-lived URL to download a file attached to a dashboard message (requires edit access). |
stopPulseDashboardMessage | Stop an in-flight generation turn; no-op when nothing is generating (requires edit access). |
refreshPulseDashboard | Refresh a dashboard’s Connection-sourced data in place, keeping the layout unchanged. Runs in the background (requires edit access). |
updatePulseDashboard | Rename a dashboard (creator only). |
duplicatePulseDashboard | Duplicate a dashboard into a new idle clone (creator only). |
movePulseDashboard | Move a dashboard to another team, keeping only its latest version (Manager+ on both teams; supports dry-run preview). |
publishPulseDashboard | Share a dashboard with your team (view or edit access), or revert it to private (creator only). |
deletePulseDashboard | Delete a dashboard (creator only). |
listPulseDashboardVersions | List a dashboard’s version history, newest first (requires edit access). |
restorePulseDashboardVersion | Restore a previous version, making it live again (requires edit access). |
getPulseDashboardVersionHtml | Get a specific version’s rendered HTML document (requires edit access). |
listPulseDashboardMessages | List a dashboard’s chat transcript (requires edit access). |
answerPulseDashboardQuestion | Answer a pending question from the dashboard agent and resume the run (requires edit access). |
listPulseDashboardConnections | List the connections attached to a dashboard (creator only). |
attachPulseDashboardConnection | Attach one of your connections to a dashboard (creator only). |
detachPulseDashboardConnection | Detach a connection from a dashboard (creator only). |
listPulseDashboardComments | List a dashboard’s comment threads with their replies (anyone who can view it). |
createPulseDashboardComment | Leave a comment, optionally pinned to an element of the dashboard (anyone who can view it). |
createPulseDashboardCommentReply | Reply to a comment thread (anyone who can view it). |
setPulseDashboardCommentResolution | Mark a thread complete, or reopen it (anyone who can view it). |
deletePulseDashboardComment | Delete your own comment or reply; the dashboard’s creator can delete anyone’s. |
Related
Connect to the Duvo MCP server
Set up a host before calling these tools.
Public API Reference
Exact request and response shapes for each tool.