> ## Documentation Index
> Fetch the complete documentation index at: https://docs.duvo.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Available MCP Tools

> Complete reference for all tools exposed by the Duvo MCP server.

This is the catalog of tools the [Duvo MCP server](/mcp/duvo-mcp-server) makes available once your host is connected. It exposes every [Public API](../api-reference) endpoint as a tool. Tool names are the OpenAPI `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.

<AccordionGroup>
  <Accordion title="Agents" icon="bot">
    | 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) to another team.                                   |
    | `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.                                                             |
  </Accordion>

  <Accordion title="Agent Folders" icon="folder">
    | 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. |
  </Accordion>

  <Accordion title="Setups" icon="layers">
    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. |
  </Accordion>

  <Accordion title="Runs" icon="play">
    | 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.             |
  </Accordion>

  <Accordion title="Agent Memory" icon="brain-circuit">
    | Tool                   | Description                                     |
    | ---------------------- | ----------------------------------------------- |
    | `listAgentMemoryFiles` | List the memory files an Agent has saved.       |
    | `getAgentMemoryFile`   | Get the contents of a single Agent memory file. |
  </Accordion>

  <Accordion title="Files" icon="file-text">
    | 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.                            |
  </Accordion>

  <Accordion title="Cases and Queues" icon="inbox">
    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.                                    |
    | `listQueueAgents`           | List Agents attached to a queue.                   |
    | `listCases`                 | List cases in a queue.                             |
    | `searchCases`               | Search for cases across queues.                    |
    | `getCase`                   | Get a case by ID.                                  |
    | `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.       |
    | `listCaseRuns`              | List Runs for a specific case.                     |
    | `listCaseRunRecentMessages` | Get recent messages from the latest Run on a case. |
  </Accordion>

  <Accordion title="Case Labels" icon="tags">
    | 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.                |
  </Accordion>

  <Accordion title="Case Triggers" icon="funnel">
    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. |
  </Accordion>

  <Accordion title="Triggers" icon="zap">
    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).

    | Tool                    | Description                                                  |
    | ----------------------- | ------------------------------------------------------------ |
    | `listAgentTriggers`     | List the event triggers you own for an Agent.                |
    | `upsertAgentTrigger`    | Create or update an event trigger for an Agent.              |
    | `listAgentTriggerTypes` | List the available trigger types for an Agent by Connection. |
  </Accordion>

  <Accordion title="Suggestions" icon="lightbulb">
    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. |
    | `consumeAgentSuggestion` | Apply a suggestion to the Agent's draft Setup.     |
    | `rejectAgentSuggestion`  | Dismiss a pending suggestion.                      |
  </Accordion>

  <Accordion title="Connections" icon="plug">
    | 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.                                 |
  </Accordion>

  <Accordion title="Skills" icon="puzzle">
    | 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.                   |
  </Accordion>

  <Accordion title="Schedules" icon="calendar">
    | Tool                 | Description                             |
    | -------------------- | --------------------------------------- |
    | `listAgentSchedules` | List schedules configured for an Agent. |
    | `createSchedule`     | Create a schedule for an Agent.         |
    | `updateSchedule`     | Update an existing schedule.            |
    | `deleteSchedule`     | Delete a schedule.                      |
  </Accordion>

  <Accordion title="Secrets and Logins" icon="key">
    | 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.                    |
  </Accordion>

  <Accordion title="Setup Configuration" icon="sliders-horizontal">
    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.                                     |
  </Accordion>

  <Accordion title="Sandboxes" icon="box">
    | 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.                |
  </Accordion>

  <Accordion title="Team" icon="users">
    | Tool                       | Description                                                                                                                                                    |
    | -------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
    | `listMyTeams`              | List teams the authenticated caller can act on.                                                                                                                |
    | `getTeam`                  | Get your team's details.                                                                                                                                       |
    | `listTeamMembers`          | List members of your team.                                                                                                                                     |
    | `listOrgTeams`             | List all teams in an organization you belong to.                                                                                                               |
    | `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.                                                                                                                                         |
  </Accordion>

  <Accordion title="Process Intelligence" icon="network">
    | Tool                                | Description                                                                                                                                        |
    | ----------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
    | `listClarityProcesses`              | List process captures for your team.                                                                                                               |
    | `listClarityProcessSummaries`       | List cross-process portfolio summaries (summary, SWOT, projected impact, steps).                                                                   |
    | `getClarityProcess`                 | Get a process capture by ID.                                                                                                                       |
    | `getLegacyClarityProcess`           | Get a legacy process capture by ID.                                                                                                                |
    | `getClarityProcessTree`             | Get the process landscape tree.                                                                                                                    |
    | `getClarityProcessLandscape`        | Get the process landscape with nodes and links. Inaccessible processes are returned only as restricted topology using a `Restricted process` stub. |
    | `generateClarityProcessLandscape`   | Generate a process landscape from existing team processes, with optional capture context.                                                          |
    | `listClarityLandscapeCaptures`      | List the organization's eligible process landscape captures.                                                                                       |
    | `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.                                                                                                   |
    | `proposeClarityLandscapeProcess`    | Propose a new process in the process landscape.                                                                                                    |
    | `listClarityExtraCaptureRequests`   | List pending extra capture requests for a process.                                                                                                 |
    | `listClarityProcessSnapshots`       | List snapshots for a process capture.                                                                                                              |
    | `getClarityProcessSnapshot`         | Get a process capture snapshot.                                                                                                                    |
    | `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.                                                                                                 |
  </Accordion>

  <Accordion title="Duvo Pulse" icon="gauge">
    Pulse dashboards are live, agent-generated visualizations of your Duvo data.

    <Note>
      Generation runs in the background — after creating or iterating on a dashboard, poll `getPulseDashboard` until its status is `completed`, then read its rendered HTML.
    </Note>

    | 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 (creator only).                                                                        |
    | `stopPulseDashboardMessage`      | Stop an in-flight generation turn; no-op when nothing is generating (creator only).                                                  |
    | `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 (creator only).                                                                     |
    | `restorePulseDashboardVersion`   | Restore a previous version, making it live again (creator only).                                                                     |
    | `getPulseDashboardVersionHtml`   | Get a specific version's rendered HTML document (creator only).                                                                      |
    | `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).                                                                                 |
  </Accordion>
</AccordionGroup>

## Related

<CardGroup cols={2}>
  <Card title="Connect to the Duvo MCP server" icon="plug" href="/mcp/duvo-mcp-server">
    Set up a host before calling these tools.
  </Card>

  <Card title="Public API Reference" icon="file-text" href="../api-reference">
    Exact request and response shapes for each tool.
  </Card>
</CardGroup>
