Dust Skills API

Skills

Operations 2

GET /api/v1/w/{wId}/skills List Skills
POST /api/v1/w/{wId}/skills Import Skills from Uploaded Files

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/dust-tt-skills-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

dust-tt-skills-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Dust Agents Skills API
  version: 1.0.2
  description: Manage Dust agent configurations — list, retrieve, update, archive, search, and export agents as YAML.
  contact:
    name: Dust Support
    url: https://docs.dust.tt
  license:
    name: MIT
    url: https://github.com/dust-tt/dust/blob/main/LICENSE
servers:
- url: https://dust.tt
  description: Dust.tt API (us-central1)
- url: https://eu.dust.tt
  description: Dust.tt API (europe-west1)
tags:
- name: Skills
  description: Skills
paths:
  /api/v1/w/{wId}/skills:
    get:
      summary: List Skills
      description: Retrieves the custom skills in the workspace. Active skills are returned by default.
      tags:
      - Skills
      security:
      - BearerAuth: []
      parameters:
      - in: path
        name: wId
        required: true
        description: Unique string identifier for the workspace
        schema:
          type: string
      - in: query
        name: status
        required: false
        description: Filter skills by status. Defaults to active.
        schema:
          type: string
          enum:
          - active
          - archived
          - suggested
      responses:
        '200':
          description: Skills available in the workspace.
          content:
            application/json:
              schema:
                type: object
                properties:
                  skills:
                    type: array
                    items:
                      $ref: '#/components/schemas/Skill'
        '400':
          description: Bad Request. Missing or invalid parameters.
        '401':
          description: Unauthorized. Invalid or missing authentication token.
        '404':
          description: Workspace not found.
        '405':
          description: Method not supported.
    post:
      summary: Import Skills from Uploaded Files
      description: Imports skills from uploaded files or ZIP archives into the workspace.
      tags:
      - Skills
      security:
      - BearerAuth: []
      parameters:
      - in: path
        name: wId
        required: true
        description: Unique string identifier for the workspace
        schema:
          type: string
      requestBody:
        required: true
        content:
          multipart/form-data:
            schema:
              type: object
              required:
              - files
              properties:
                files:
                  type: array
                  items:
                    type: string
                    format: binary
                  description: Skill files or ZIP archives to import.
                names:
                  type: array
                  items:
                    type: string
                  description: Optional skill names to import from the uploaded files.
                onConflict:
                  type: string
                  enum:
                  - error
                  - skip
                  - override
                  description: Conflict handling strategy. Defaults to error.
      responses:
        '200':
          description: Skills import result.
          content:
            application/json:
              schema:
                type: object
                properties:
                  imported:
                    type: array
                    items:
                      $ref: '#/components/schemas/Skill'
                  updated:
                    type: array
                    items:
                      $ref: '#/components/schemas/Skill'
                  skipped:
                    type: array
                    items:
                      type: object
                      properties:
                        name:
                          type: string
                        message:
                          type: string
        '400':
          description: Bad Request. Missing or invalid uploaded files.
        '401':
          description: Unauthorized. Invalid or missing authentication token.
        '404':
          description: Workspace not found.
        '405':
          description: Method not supported.
components:
  schemas:
    MCPServerView:
      type: object
      properties:
        id:
          type: integer
          description: Unique identifier for the MCP server view
          example: 123
        sId:
          type: string
          description: Unique string identifier for the MCP server view
          example: mcp_sv_abc123
        name:
          type:
          - string
          - 'null'
          description: Custom name for the MCP server view (null if not set)
          example: My Custom MCP Server
        description:
          type:
          - string
          - 'null'
          description: Custom description for the MCP server view (null if not set)
          example: This MCP server handles customer data operations
        createdAt:
          type: number
          description: Unix timestamp of when the MCP server view was created
          example: 1625097600
        updatedAt:
          type: number
          description: Unix timestamp of when the MCP server view was last updated
          example: 1625184000
        spaceId:
          type: string
          description: ID of the space containing the MCP server view
          example: spc_xyz789
        serverType:
          type: string
          enum:
          - remote
          - internal
          description: Type of the MCP server
          example: remote
        server:
          type: object
          properties:
            sId:
              type: string
              description: Unique string identifier for the MCP server
              example: mcp_srv_def456
            name:
              type: string
              description: Name of the MCP server
              example: Customer Data Server
            version:
              type: string
              description: Version of the MCP server
              example: 1.0.0
            description:
              type: string
              description: Description of the MCP server
              example: Handles customer data operations and queries
            icon:
              type: string
              description: Icon identifier for the MCP server
              example: database
            authorization:
              type:
              - object
              - 'null'
              properties:
                provider:
                  type: string
                  description: OAuth provider for authorization
                  example: github
                supported_use_cases:
                  type: array
                  items:
                    type: string
                    enum:
                    - platform_actions
                    - personal_actions
                  description: Supported use cases for the authorization
                  example:
                  - platform_actions
                scope:
                  type: string
                  description: OAuth scope required
                  example: repo:read
            tools:
              type: array
              items:
                type: object
                properties:
                  name:
                    type: string
                    description: Name of the tool
                    example: query_customers
                  description:
                    type: string
                    description: Description of what the tool does
                    example: Query customer database for information
                  inputSchema:
                    type: object
                    description: JSON Schema for the tool's input parameters
                    example:
                      type: object
                      properties:
                        customerId:
                          type: string
            availability:
              type: string
              description: Availability status of the MCP server
              example: production
            allowMultipleInstances:
              type: boolean
              description: Whether multiple instances of this server can be created
              example: false
            documentationUrl:
              type:
              - string
              - 'null'
              description: URL to the server's documentation
              example: https://docs.example.com/mcp-server
        oAuthUseCase:
          type:
          - string
          - 'null'
          enum:
          - platform_actions
          - personal_actions
          description: OAuth use case for the MCP server view
          example: platform_actions
        editedByUser:
          type:
          - object
          - 'null'
          description: Information about the user who last edited the MCP server view
          properties:
            editedAt:
              type:
              - number
              - 'null'
              description: Unix timestamp of when the edit occurred
              example: 1625184000
            fullName:
              type:
              - string
              - 'null'
              description: Full name of the editor
              example: John Doe
            imageUrl:
              type:
              - string
              - 'null'
              description: Profile image URL of the editor
              example: https://example.com/profile/johndoe.jpg
    SkillSourceMetadata:
      type: object
      properties:
        repoUrl:
          type: string
          description: URL of the source repository, when applicable
          example: https://github.com/dust-tt/skills
        filePath:
          type: string
          description: Path to the source skill file
          example: support/SKILL.md
    Skill:
      type: object
      properties:
        sId:
          type: string
          description: Unique string identifier for the skill
          example: skill_abc123
        createdAt:
          type:
          - number
          - 'null'
          description: Timestamp of when the skill was created
        updatedAt:
          type:
          - number
          - 'null'
          description: Timestamp of when the skill was last updated
        editedBy:
          type:
          - integer
          - 'null'
          description: Numeric identifier of the last editor
        status:
          type: string
          enum:
          - active
          - archived
          - suggested
          description: Current status of the skill
          example: active
        name:
          type: string
          description: Name of the skill
          example: Customer Support
        agentFacingDescription:
          type: string
          description: Description shown to agents when selecting or using the skill
          example: Use this skill to answer customer support questions.
        userFacingDescription:
          type: string
          description: Description shown to workspace users
          example: Answers support questions with the right workspace context.
        icon:
          type:
          - string
          - 'null'
          description: Icon identifier for the skill
          example: ActionRobotIcon
        source:
          type:
          - string
          - 'null'
          enum:
          - web_app
          - github
          - api
          - local_file
          description: Source used to create or import the skill
        sourceMetadata:
          type:
          - object
          - 'null'
          allOf:
          - $ref: '#/components/schemas/SkillSourceMetadata'
        reinforcement:
          type: string
          enum:
          - auto
          - 'on'
          - 'off'
          description: Reinforcement setting for the skill
        lastReinforcementAnalysisAt:
          type:
          - string
          - 'null'
          description: Timestamp of the last reinforcement analysis, when available
        requestedSpaceIds:
          type: array
          items:
            type: string
          description: Space identifiers the skill needs access to
        fileAttachments:
          type: array
          items:
            type: object
            properties:
              fileId:
                type: string
                description: Unique string identifier for the attached file
              fileName:
                type: string
                description: Name of the attached file
        canWrite:
          type: boolean
          description: Whether the authenticated actor can edit the skill
        isExtendable:
          type: boolean
          description: Whether this skill can be extended by another skill
        isDefault:
          type: boolean
          description: Whether this skill is enabled by default
        extendedSkillId:
          type:
          - string
          - 'null'
          description: Identifier of the extended skill, when applicable
        instructions:
          type:
          - string
          - 'null'
          description: Instructions used by the agent when running the skill
        instructionsHtml:
          type:
          - string
          - 'null'
          description: HTML representation of the skill instructions
        tools:
          type: array
          items:
            $ref: '#/components/schemas/MCPServerView'
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: Your DUST API key is a Bearer token.