> ## Documentation Index
> Fetch the complete documentation index at: https://conductorone-docs-c1-ai-rename-product.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Get

> Get a Virtual MCP Server by ID.



## OpenAPI

````yaml https://spec.speakeasy.com/conductor-one/conductorone/my-source-with-code-samples get /api/v1/virtual_mcp_servers/{id}
openapi: 3.1.0
info:
  description: The C1 API is a HTTP API for managing C1 resources.
  title: C1 API
  version: 0.1.0-alpha
servers:
  - description: The C1 API server for the current tenant.
    url: https://{tenantDomain}.conductor.one
    variables:
      tenantDomain:
        default: example
        description: The domain of the tenant to use for this request.
security:
  - bearerAuth: []
    oauth: []
paths:
  /api/v1/virtual_mcp_servers/{id}:
    get:
      tags:
        - Virtual MCP Servers
      summary: Get
      description: Get a Virtual MCP Server by ID.
      operationId: c1.api.ai_governance.v1.VirtualMCPServerService.Get
      parameters:
        - in: path
          name: id
          required: true
          schema:
            description: Immutable Virtual MCP Server identifier.
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/c1.api.ai_governance.v1.VirtualMCPServerServiceGetResponse
          description: >-
            VirtualMCPServerServiceGetResponse contains the requested Virtual
            MCP Server.
components:
  schemas:
    c1.api.ai_governance.v1.VirtualMCPServerServiceGetResponse:
      description: >-
        VirtualMCPServerServiceGetResponse contains the requested Virtual MCP
        Server.
      properties:
        virtualMcpServer:
          oneOf:
            - $ref: '#/components/schemas/c1.api.ai_governance.v1.VirtualMCPServer'
            - type: 'null'
      title: Virtual Mcp Server Service Get Response
      type: object
      x-speakeasy-name-override: VirtualMCPServerServiceGetResponse
    c1.api.ai_governance.v1.VirtualMCPServer:
      description: >
        VirtualMCPServer is a tenant-managed MCP endpoint backed by one
        composition.


        This message contains a oneof named composition. Only a single field of
        the following list may be set at a time:
          - mappedSource
          - assignedTools
      properties:
        allowPersonalSources:
          description: Permit owner-scoped personal MCP sources on supported compositions.
          type: boolean
        assignedTools:
          oneOf:
            - $ref: >-
                #/components/schemas/c1.api.ai_governance.v1.VirtualMCPAssignedTools
            - type: 'null'
        createdAt:
          format: date-time
          type:
            - string
            - 'null'
        displayName:
          description: Human-readable name shown to administrators and users.
          type: string
        id:
          description: Immutable unique identifier for this Virtual MCP Server.
          type: string
        mappedSource:
          oneOf:
            - $ref: >-
                #/components/schemas/c1.api.ai_governance.v1.VirtualMCPMappedSource
            - type: 'null'
        presentation:
          oneOf:
            - $ref: >-
                #/components/schemas/c1.api.ai_governance.v1.VirtualMCPPresentation
            - type: 'null'
        requireDeviceTrust:
          description: >-
            When true, require an active ConductorOne-managed device in addition
            to
             DPoP. require_device_trust=true requires require_dpop=true.
          type: boolean
        requireDpop:
          description: When true, require DPoP proof-of-possession for OAuth access tokens.
          type: boolean
        slug:
          description: >-
            Current canonical lowercase route segment, unique for the tenant.
            Renaming
             preserves the previous slug as a deprecated alias until it is reused.
          type: string
        state:
          description: Current lifecycle state.
          enum:
            - VIRTUAL_MCP_SERVER_STATE_UNSPECIFIED
            - VIRTUAL_MCP_SERVER_STATE_ACTIVE
            - VIRTUAL_MCP_SERVER_STATE_DISABLED
          type: string
          x-speakeasy-unknown-values: allow
        updatedAt:
          format: date-time
          type:
            - string
            - 'null'
        useEntitlementId:
          description: >-
            Identifier of the governed `use` entitlement for this server. This
            is the
             same immutable identifier as id and is returned for access-profile setup.
          type: string
      title: Virtual Mcp Server
      type: object
      x-speakeasy-name-override: VirtualMCPServer
    c1.api.ai_governance.v1.VirtualMCPAssignedTools:
      description: >-
        VirtualMCPAssignedTools marks a Virtual MCP Server composed from
        selected
         Toolsets and individual tools.
      title: Virtual Mcp Assigned Tools
      type: object
      x-speakeasy-name-override: VirtualMCPAssignedTools
    c1.api.ai_governance.v1.VirtualMCPMappedSource:
      description: VirtualMCPMappedSource identifies one app-scoped MCP source.
      properties:
        appId:
          description: Application that owns the MCP source.
          type: string
        connectorId:
          description: Connector that provides the MCP source within the application.
          type: string
      title: Virtual Mcp Mapped Source
      type: object
      x-speakeasy-name-override: VirtualMCPMappedSource
    c1.api.ai_governance.v1.VirtualMCPPresentation:
      description: >
        VirtualMCPPresentation selects one presentation mode and provides a
        stable
         location for mode-specific settings.

        This message contains a oneof named mode. Only a single field of the
        following list may be set at a time:
          - rawTools
          - codeMode
          - dynamicTools
      properties:
        codeMode:
          oneOf:
            - $ref: >-
                #/components/schemas/c1.api.ai_governance.v1.VirtualMCPCodeModePresentation
            - type: 'null'
        dynamicTools:
          oneOf:
            - $ref: >-
                #/components/schemas/c1.api.ai_governance.v1.VirtualMCPDynamicToolsPresentation
            - type: 'null'
        rawTools:
          oneOf:
            - $ref: >-
                #/components/schemas/c1.api.ai_governance.v1.VirtualMCPRawToolsPresentation
            - type: 'null'
      title: Virtual Mcp Presentation
      type: object
      x-speakeasy-name-override: VirtualMCPPresentation
    c1.api.ai_governance.v1.VirtualMCPCodeModePresentation:
      description: VirtualMCPCodeModePresentation configures code-execution presentation.
      title: Virtual Mcp Code Mode Presentation
      type: object
      x-speakeasy-name-override: VirtualMCPCodeModePresentation
    c1.api.ai_governance.v1.VirtualMCPDynamicToolsPresentation:
      description: >-
        VirtualMCPDynamicToolsPresentation configures a session-specific tool
        registry.
      title: Virtual Mcp Dynamic Tools Presentation
      type: object
      x-speakeasy-name-override: VirtualMCPDynamicToolsPresentation
    c1.api.ai_governance.v1.VirtualMCPRawToolsPresentation:
      description: VirtualMCPRawToolsPresentation configures direct tool presentation.
      title: Virtual Mcp Raw Tools Presentation
      type: object
      x-speakeasy-name-override: VirtualMCPRawToolsPresentation
  securitySchemes:
    bearerAuth:
      scheme: bearer
      type: http
    oauth:
      description: >-
        This API uses OAuth2 with the Client Credential flow.

        Client Credentials must be sent in the BODY, not the headers.

        For an example of how to implement this, refer to the
        [c1TokenSource.Token()](https://github.com/ConductorOne/conductorone-sdk-go/blob/3375fe7c0126d17e7ec4e711693dee7b791023aa/token_source.go#L101-L187)
        function.
      flows:
        clientCredentials:
          scopes: {}
          tokenUrl: /auth/v1/token
      type: oauth2

````