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

# Read the PRESERVED manifest MCP section and user tools

> Return the MCP section and user tools of the PRESERVED persisted manifest —
``!ENV ${KEY}`` markers kept intact, so a secret leaf is its placeholder marker,
NEVER the plaintext value.

This door serves ONLY the preserved read: no resolved-view surface exists here, so no
``!ENV`` marker is ever materialized onto the wire. McpTab reads
``/api/manifest/preserved`` and ManifestTab renders the markers directly.



## OpenAPI

````yaml /openapi.json get /api/manifest
openapi: 3.1.0
info:
  description: The operator HTTP surface served under /api/*.
  title: tai42-skeleton API
  version: 14.0.2
servers: []
security: []
paths:
  /api/manifest:
    get:
      tags:
        - manifest
      summary: Read the PRESERVED manifest MCP section and user tools
      description: >-
        Return the MCP section and user tools of the PRESERVED persisted
        manifest —

        ``!ENV ${KEY}`` markers kept intact, so a secret leaf is its placeholder
        marker,

        NEVER the plaintext value.


        This door serves ONLY the preserved read: no resolved-view surface
        exists here, so no

        ``!ENV`` marker is ever materialized onto the wire. McpTab reads

        ``/api/manifest/preserved`` and ManifestTab renders the markers
        directly.
      operationId: get_api_manifest
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  data:
                    $ref: '#/components/schemas/PreservedManifestView'
                required:
                  - data
                type: object
          description: Success.
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Missing or invalid api key.
      security:
        - ApiKeyAuth: []
components:
  schemas:
    PreservedManifestView:
      description: >-
        The PRESERVED persisted manifest's MCP section + user tools. The ``mcp``
        entries

        carry their raw ``!ENV ${KEY}`` markers intact (unresolved config
        entries, NOT a

        resolved ``TaiMCPConfig``), so no secret value ever leaves on the wire.
      properties:
        mcp:
          items:
            additionalProperties: true
            type: object
          title: Mcp
          type: array
        user_tools:
          items:
            type: string
          title: User Tools
          type: array
      required:
        - mcp
        - user_tools
      title: PreservedManifestView
      type: object
    Error:
      properties:
        code:
          description: >-
            Stable machine-readable reason a client keys a dedicated error state
            on, present on refusals that opt in (e.g. a 501 not-configured
            refusal). Optional: absent when the error carries only a
            human-readable message.
          type: string
        error:
          type: string
      required:
        - error
      type: object
  securitySchemes:
    ApiKeyAuth:
      in: header
      name: x-api-key
      type: apiKey

````