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

> ## Agent Instructions
> Melso product MCP: https://melso.ai/api/mcp (OAuth; one company per grant). REST: https://melso.ai. Documentation-search MCP: https://docs.melso.ai/mcp. The docs search server does not act on customer accounts.
>
> Use the live tool schema and respect company membership. Ask the person to authorize the exact fiscal document version in the signed-in app. A professional prepares and files included returns after authorization; AI does not file alone. A prepared file or approval receipt is not evidence of filing. Never claim completion from an accepted Task or Run. Keep credentials out of chat and logs. Agents features are internal or by private invitation.

# Replace task mcp servers

> A workspace owner or admin (browser session or personal access token) or a workspace API key of the Task's workspace, who can also edit the Task with `PUT /api/tasks/{id}`. Other members get 403 `{error:"only workspace owners, admins and API keys can set Task MCP servers",code:"task_mcp_servers_forbidden"}`, also for `[]`. Run tokens get 403, including a Run of this Task.

Request: `{mcp_servers:McpServerInput[]}` (required) replaces the Task's whole set; `[]` removes every server. At most 10 servers. The JSON body is limited to 1 MiB and the sealed set to 64 KiB.

Response: `{mcp_servers:McpServerSummary[]}`: the new set, without header or env values.

Status: 200; 400 `{error:string,code:"task_mcp_servers_invalid"}`; 403 `code: "task_mcp_servers_forbidden"` for anyone but a workspace owner, admin or API key, or a Run token (`code: "isolated_task_scope"` for a Run of an isolated Task); 413 body over 1 MiB or set over 64 KiB sealed; 503 Secrets unavailable. Authentication and resource-access errors follow [Overview](/api-reference/errors).



## OpenAPI

````yaml /api-reference/openapi.json put /api/tasks/{id}/mcp-servers
openapi: 3.1.0
info:
  title: Melso API
  version: '2026-10-12'
  description: >-
    Customer integration contracts for Melso. Agents access is internal or by
    private invitation. Fiscal approval remains in the authenticated app.
  contact:
    name: Melso
    url: https://melso.ai/en
servers:
  - url: https://melso.ai
    description: Production API origin
security: []
tags:
  - name: Areas
    description: >-
      <Info>Melso Agents is available only internally or by private invitation.
      Agents-specific features require existing access. For the autónomo fiscal
      service, see [Get started](/essentials/quickstart).</Info>


      Areas operations available within the caller's documented permissions.
  - name: Artifacts
    description: >-
      <Info>Melso Agents is available only internally or by private invitation.
      Agents-specific features require existing access. For the autónomo fiscal
      service, see [Get started](/essentials/quickstart).</Info>


      Artifacts operations available within the caller's documented permissions.
  - name: Authentication
    description: >-
      <Info>Melso Agents is available only internally or by private invitation.
      Agents-specific features require existing access. For the autónomo fiscal
      service, see [Get started](/essentials/quickstart).</Info>


      Authentication operations available within the caller's documented
      permissions.
  - name: Automations
    description: >-
      <Info>Melso Agents is available only internally or by private invitation.
      Agents-specific features require existing access. For the autónomo fiscal
      service, see [Get started](/essentials/quickstart).</Info>


      Automations operations available within the caller's documented
      permissions.
  - name: Companies
    description: >-
      <Info>Melso Agents is available only internally or by private invitation.
      Agents-specific features require existing access. For the autónomo fiscal
      service, see [Get started](/essentials/quickstart).</Info>


      Companies operations available within the caller's documented permissions.
  - name: Execution funding
    description: >-
      <Info>Melso Agents is available only internally or by private invitation.
      Agents-specific features require existing access. For the autónomo fiscal
      service, see [Get started](/essentials/quickstart).</Info>


      Execution funding operations available within the caller's documented
      permissions.
  - name: Files
    description: >-
      <Info>Melso Agents is available only internally or by private invitation.
      Agents-specific features require existing access. For the autónomo fiscal
      service, see [Get started](/essentials/quickstart).</Info>


      Files operations available within the caller's documented permissions.
  - name: GitHub
    description: >-
      <Info>Melso Agents is available only internally or by private invitation.
      Agents-specific features require existing access. For the autónomo fiscal
      service, see [Get started](/essentials/quickstart).</Info>


      GitHub operations available within the caller's documented permissions.
  - name: Interactions
    description: >-
      <Info>Melso Agents is available only internally or by private invitation.
      Agents-specific features require existing access. For the autónomo fiscal
      service, see [Get started](/essentials/quickstart).</Info>


      Interactions operations available within the caller's documented
      permissions.
  - name: Knowledge
    description: >-
      <Info>Melso Agents is available only internally or by private invitation.
      Agents-specific features require existing access. For the autónomo fiscal
      service, see [Get started](/essentials/quickstart).</Info>


      Knowledge operations available within the caller's documented permissions.
  - name: MCP
    description: MCP operations available within the caller's documented permissions.
  - name: Messages
    description: >-
      <Info>Melso Agents is available only internally or by private invitation.
      Agents-specific features require existing access. For the autónomo fiscal
      service, see [Get started](/essentials/quickstart).</Info>


      Messages operations available within the caller's documented permissions.
  - name: OAuth
    description: OAuth operations available within the caller's documented permissions.
  - name: Private network
    description: >-
      <Info>Melso Agents is available only internally or by private invitation.
      Agents-specific features require existing access. For the autónomo fiscal
      service, see [Get started](/essentials/quickstart).</Info>


      Private network operations available within the caller's documented
      permissions.
  - name: Runs
    description: >-
      <Info>Melso Agents is available only internally or by private invitation.
      Agents-specific features require existing access. For the autónomo fiscal
      service, see [Get started](/essentials/quickstart).</Info>


      Runs operations available within the caller's documented permissions.
  - name: Skills
    description: >-
      <Info>Melso Agents is available only internally or by private invitation.
      Agents-specific features require existing access. For the autónomo fiscal
      service, see [Get started](/essentials/quickstart).</Info>


      Skills operations available within the caller's documented permissions.
  - name: Tasks
    description: >-
      <Info>Melso Agents is available only internally or by private invitation.
      Agents-specific features require existing access. For the autónomo fiscal
      service, see [Get started](/essentials/quickstart).</Info>


      Tasks operations available within the caller's documented permissions.
  - name: Vault
    description: >-
      <Info>Melso Agents is available only internally or by private invitation.
      Agents-specific features require existing access. For the autónomo fiscal
      service, see [Get started](/essentials/quickstart).</Info>


      Vault operations available within the caller's documented permissions.
  - name: Webhooks
    description: >-
      <Info>Melso Agents is available only internally or by private invitation.
      Agents-specific features require existing access. For the autónomo fiscal
      service, see [Get started](/essentials/quickstart).</Info>


      Webhooks operations available within the caller's documented permissions.
paths:
  /api/tasks/{id}/mcp-servers:
    put:
      tags:
        - Tasks
      summary: Replace task mcp servers
      description: >-
        A workspace owner or admin (browser session or personal access token) or
        a workspace API key of the Task's workspace, who can also edit the Task
        with `PUT /api/tasks/{id}`. Other members get 403 `{error:"only
        workspace owners, admins and API keys can set Task MCP
        servers",code:"task_mcp_servers_forbidden"}`, also for `[]`. Run tokens
        get 403, including a Run of this Task.


        Request: `{mcp_servers:McpServerInput[]}` (required) replaces the Task's
        whole set; `[]` removes every server. At most 10 servers. The JSON body
        is limited to 1 MiB and the sealed set to 64 KiB.


        Response: `{mcp_servers:McpServerSummary[]}`: the new set, without
        header or env values.


        Status: 200; 400 `{error:string,code:"task_mcp_servers_invalid"}`; 403
        `code: "task_mcp_servers_forbidden"` for anyone but a workspace owner,
        admin or API key, or a Run token (`code: "isolated_task_scope"` for a
        Run of an isolated Task); 413 body over 1 MiB or set over 64 KiB sealed;
        503 Secrets unavailable. Authentication and resource-access errors
        follow [Overview](/api-reference/errors).
      operationId: replaceTaskMcpServers
      parameters:
        - name: id
          in: path
          required: true
          description: id from the corresponding authorized response.
          schema:
            type: string
        - name: X-Workspace-ID
          in: header
          required: false
          description: >-
            Company UUID for a personal token on company-scoped operations. A
            company API key already binds its company.
          schema:
            type: string
            format: uuid
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/replaceTaskMcpServersRequestInput'
      responses:
        '200':
          description: >-
            `{mcp_servers:McpServerSummary[]}`: the new set, without header or
            env values.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/taskMcpServersResponse'
        '400':
          description: Invalid request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Authentication required.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: Credential, company or resource access denied.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Resource unavailable to this caller.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '413':
          description: Request failed; see the operation contract for the condition.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '429':
          description: Rate limited; respect Retry-After when present.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '503':
          description: Request failed; see the operation contract for the condition.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - bearerAuth: []
components:
  schemas:
    replaceTaskMcpServersRequestInput:
      type: object
      properties:
        mcp_servers:
          $ref: '#/components/schemas/McpServerInputsInput'
    taskMcpServersResponse:
      type: object
      properties:
        mcp_servers:
          type: array
          items:
            $ref: '#/components/schemas/McpServerSummary'
      required:
        - mcp_servers
    Error:
      type: object
      properties:
        error:
          type: string
        code:
          type: string
      required:
        - error
      additionalProperties: true
    McpServerInputsInput:
      type: array
      items:
        $ref: '#/components/schemas/McpServerInputInput'
      maxItems: 10
      description: >-
        At most 10 servers with unique, non-reserved names. Each server uses
        exactly one of a remote HTTPS url or a stdio command. headers belong to
        remote servers; args and env belong to stdio servers. The encrypted set
        is limited to 64 KiB; the server rejects a larger sealed set with HTTP
        413. This encrypted-size limit cannot be measured as JSON character
        count. Header and environment values are write-only; GET returns
        McpServerSummary objects.
    McpServerSummary:
      type: object
      properties:
        name:
          type: string
        transport:
          type: string
          enum:
            - http
            - stdio
        url:
          type: string
        header_names:
          type: array
          items:
            type: string
        command:
          type: string
        args:
          type: array
          items:
            type: string
        env_names:
          type: array
          items:
            type: string
      required:
        - name
        - transport
    McpServerInputInput:
      type: object
      properties:
        name:
          type: string
          pattern: ^[a-z0-9][a-z0-9-]{0,62}$
        url:
          type: string
        headers:
          type: object
          additionalProperties:
            type: string
        command:
          type: string
        args:
          type: array
          items:
            type: string
        env:
          type: object
          additionalProperties:
            type: string
      required:
        - name
      additionalProperties: false
      description: >-
        Remote input: name, url and optional headers. Stdio input: name, command
        and optional args and env. Exactly one nonempty url or command is
        required. Unknown fields are rejected; transport-specific fields are
        validated by the server.
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        Company API key (mwk_) or personal access token (mel_). A PAT requires
        X-Workspace-ID on company-scoped routes. An API key implies its own
        company.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.