Oracle Cloud Networking API — VCNs

Oracle Cloud Networking API — VCNs. 5 operations. Lead operation: Oracle Cloud List VCNs. Self-contained Naftiko capability covering one Oracle Cloud business surface.

Run with Naftiko Oracle CloudVCNs

What You Can Do

GET
Listvcns — Oracle Cloud List VCNs
/v1/vcns
POST
Createvcn — Oracle Cloud Create VCN
/v1/vcns
GET
Getvcn — Oracle Cloud Get VCN
/v1/vcns/{vcnid}
PUT
Updatevcn — Oracle Cloud Update VCN
/v1/vcns/{vcnid}
DELETE
Deletevcn — Oracle Cloud Delete VCN
/v1/vcns/{vcnid}

MCP Tools

oracle-cloud-list-vcns

Oracle Cloud List VCNs

read-only idempotent
oracle-cloud-create-vcn

Oracle Cloud Create VCN

oracle-cloud-get-vcn

Oracle Cloud Get VCN

read-only idempotent
oracle-cloud-update-vcn

Oracle Cloud Update VCN

idempotent
oracle-cloud-delete-vcn

Oracle Cloud Delete VCN

idempotent

Capability Spec

networking-vcns.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Oracle Cloud Networking API — VCNs
  description: 'Oracle Cloud Networking API — VCNs. 5 operations. Lead operation: Oracle Cloud List VCNs. Self-contained Naftiko
    capability covering one Oracle Cloud business surface.'
  tags:
  - Oracle Cloud
  - VCNs
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    ORACLE_CLOUD_API_KEY: ORACLE_CLOUD_API_KEY
capability:
  consumes:
  - type: http
    namespace: networking-vcns
    baseUri: https://iaas.{region}.oraclecloud.com/20160918
    description: Oracle Cloud Networking API — VCNs business capability. Self-contained, no shared references.
    resources:
    - name: vcns
      path: /vcns
      operations:
      - name: listvcns
        method: GET
        description: Oracle Cloud List VCNs
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: compartmentId
          in: query
          type: string
          description: The OCID of the compartment.
          required: true
        - name: limit
          in: query
          type: integer
          description: Maximum number of items to return.
        - name: page
          in: query
          type: string
          description: Pagination token.
      - name: createvcn
        method: POST
        description: Oracle Cloud Create VCN
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: vcns-vcnId
      path: /vcns/{vcnId}
      operations:
      - name: getvcn
        method: GET
        description: Oracle Cloud Get VCN
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: vcnId
          in: path
          type: string
          description: The OCID of the VCN.
          required: true
      - name: updatevcn
        method: PUT
        description: Oracle Cloud Update VCN
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: vcnId
          in: path
          type: string
          description: The OCID of the VCN.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: deletevcn
        method: DELETE
        description: Oracle Cloud Delete VCN
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: vcnId
          in: path
          type: string
          description: The OCID of the VCN.
          required: true
    authentication:
      type: bearer
      token: '{{env.ORACLE_CLOUD_API_KEY}}'
  exposes:
  - type: rest
    namespace: networking-vcns-rest
    port: 8080
    description: REST adapter for Oracle Cloud Networking API — VCNs. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1/vcns
      name: vcns
      description: REST surface for vcns.
      operations:
      - method: GET
        name: listvcns
        description: Oracle Cloud List VCNs
        call: networking-vcns.listvcns
        with:
          compartmentId: rest.compartmentId
          limit: rest.limit
          page: rest.page
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createvcn
        description: Oracle Cloud Create VCN
        call: networking-vcns.createvcn
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/vcns/{vcnid}
      name: vcns-vcnid
      description: REST surface for vcns-vcnId.
      operations:
      - method: GET
        name: getvcn
        description: Oracle Cloud Get VCN
        call: networking-vcns.getvcn
        with:
          vcnId: rest.vcnId
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: updatevcn
        description: Oracle Cloud Update VCN
        call: networking-vcns.updatevcn
        with:
          vcnId: rest.vcnId
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deletevcn
        description: Oracle Cloud Delete VCN
        call: networking-vcns.deletevcn
        with:
          vcnId: rest.vcnId
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: networking-vcns-mcp
    port: 9090
    transport: http
    description: MCP adapter for Oracle Cloud Networking API — VCNs. One tool per consumed operation, routed inline through
      this capability's consumes block.
    tools:
    - name: oracle-cloud-list-vcns
      description: Oracle Cloud List VCNs
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: networking-vcns.listvcns
      with:
        compartmentId: tools.compartmentId
        limit: tools.limit
        page: tools.page
      outputParameters:
      - type: object
        mapping: $.
    - name: oracle-cloud-create-vcn
      description: Oracle Cloud Create VCN
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: networking-vcns.createvcn
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: oracle-cloud-get-vcn
      description: Oracle Cloud Get VCN
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: networking-vcns.getvcn
      with:
        vcnId: tools.vcnId
      outputParameters:
      - type: object
        mapping: $.
    - name: oracle-cloud-update-vcn
      description: Oracle Cloud Update VCN
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: networking-vcns.updatevcn
      with:
        vcnId: tools.vcnId
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: oracle-cloud-delete-vcn
      description: Oracle Cloud Delete VCN
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: networking-vcns.deletevcn
      with:
        vcnId: tools.vcnId
      outputParameters:
      - type: object
        mapping: $.