Oracle WebLogic Application Deployment

Unified capability for managing Oracle WebLogic Server application deployments and shared libraries. Combines the deployment API with monitoring to support the full deploy-verify-manage lifecycle. Used by DevOps engineers and release managers to deploy, redeploy, start, stop, and monitor Java EE applications.

Run with Naftiko OracleWebLogicDeploymentApplicationsLibrariesDevOpsJava EE

What You Can Do

GET
List deployments — List all application deployments
/v1/deployments
POST
Deploy — Deploy an application at runtime
/v1/deployments
GET
Get deployment — Get an application deployment
/v1/deployments/{deploymentName}
DELETE
Undeploy — Undeploy an application
/v1/deployments/{deploymentName}
POST
Redeploy — Redeploy an application
/v1/deployments/{deploymentName}/redeploy
POST
Start application — Start a deployed application
/v1/deployments/{deploymentName}/start
POST
Stop application — Stop a deployed application
/v1/deployments/{deploymentName}/stop
GET
Get deployment metrics — Get deployment metrics and servlet statistics
/v1/deployments/{deploymentName}/metrics
GET
List libraries — List all shared library deployments
/v1/libraries
POST
Create library — Create a shared library deployment
/v1/libraries

MCP Tools

list-deployments

List all application deployments on WebLogic

read-only
get-deployment

Get details for a specific application deployment

read-only
deploy-application

Deploy an application archive to WebLogic at runtime

undeploy-application

Undeploy and remove an application from WebLogic

idempotent
redeploy-application

Redeploy an application (update in-place) on WebLogic

start-application

Start a stopped or prepared application on WebLogic

stop-application

Stop a running application on WebLogic (keeps it deployed)

get-deployment-metrics

Get runtime metrics for a deployed application

read-only
list-all-deployments-monitoring

List all application deployments with their runtime metrics

read-only
list-libraries

List all shared library deployments on WebLogic

read-only
create-library

Deploy a new shared library to WebLogic

delete-library

Remove a shared library from WebLogic

Capability Spec

application-deployment.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Oracle WebLogic Application Deployment
  description: Unified capability for managing Oracle WebLogic Server application deployments and shared libraries. Combines
    the deployment API with monitoring to support the full deploy-verify-manage lifecycle. Used by DevOps engineers and release
    managers to deploy, redeploy, start, stop, and monitor Java EE applications.
  tags:
  - Oracle
  - WebLogic
  - Deployment
  - Applications
  - Libraries
  - DevOps
  - Java EE
  created: '2026-05-03'
  modified: '2026-05-06'
binds:
- namespace: env
  keys:
    WEBLOGIC_ADMIN_USER: WEBLOGIC_ADMIN_USER
    WEBLOGIC_ADMIN_PASSWORD: WEBLOGIC_ADMIN_PASSWORD
capability:
  consumes:
  - type: http
    namespace: weblogic-deployment
    baseUri: https://{host}:7001/management/weblogic/latest/edit/appDeployments
    description: WebLogic Server Deployment Management API
    authentication:
      type: basic
      username: '{{WEBLOGIC_ADMIN_USER}}'
      password: '{{WEBLOGIC_ADMIN_PASSWORD}}'
    resources:
    - name: applications
      path: /deployments
      description: Application deployment management
      operations:
      - name: list-deployments
        method: GET
        description: List all application deployments
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: create-deployment
        method: POST
        description: Create an application deployment
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        body:
          type: json
          data:
            name: '{{tools.name}}'
            sourcePath: '{{tools.sourcePath}}'
            targets: '{{tools.targets}}'
      - name: get-deployment
        method: GET
        description: Get an application deployment
        inputParameters:
        - name: deploymentName
          in: path
          type: string
          required: true
          description: Deployment name
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: update-deployment
        method: POST
        description: Update an application deployment
        inputParameters:
        - name: deploymentName
          in: path
          type: string
          required: true
          description: Deployment name
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: delete-deployment
        method: DELETE
        description: Remove an application deployment
        inputParameters:
        - name: deploymentName
          in: path
          type: string
          required: true
          description: Deployment name
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: deploy
        method: POST
        description: Deploy an application at runtime
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: undeploy
        method: POST
        description: Undeploy an application at runtime
        inputParameters:
        - name: deploymentName
          in: path
          type: string
          required: true
          description: Deployment name
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: redeploy
        method: POST
        description: Redeploy an application
        inputParameters:
        - name: deploymentName
          in: path
          type: string
          required: true
          description: Deployment name
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: start-application
        method: POST
        description: Start a deployed application
        inputParameters:
        - name: deploymentName
          in: path
          type: string
          required: true
          description: Deployment name
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: stop-application
        method: POST
        description: Stop a deployed application
        inputParameters:
        - name: deploymentName
          in: path
          type: string
          required: true
          description: Deployment name
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: libraries
      path: /libraries
      description: Shared library deployment management
      operations:
      - name: list-libraries
        method: GET
        description: List all shared library deployments
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: create-library
        method: POST
        description: Create a shared library deployment
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: delete-library
        method: DELETE
        description: Remove a shared library deployment
        inputParameters:
        - name: libraryName
          in: path
          type: string
          required: true
          description: Library name
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
  - type: http
    namespace: weblogic-monitoring
    baseUri: https://{host}:7001/management/wls/latest
    description: WebLogic Server Monitoring and Diagnostics API
    authentication:
      type: basic
      username: '{{WEBLOGIC_ADMIN_USER}}'
      password: '{{WEBLOGIC_ADMIN_PASSWORD}}'
    resources:
    - name: servers
      path: /servers
      description: Server monitoring information
      operations:
      - name: list-servers
        method: GET
        description: List all monitored servers
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: get-server
        method: GET
        description: Get server monitoring information
        inputParameters:
        - name: serverName
          in: path
          type: string
          required: true
          description: Name of the server
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: get-server-health
        method: GET
        description: Get server health status
        inputParameters:
        - name: serverName
          in: path
          type: string
          required: true
          description: Name of the server
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: get-server-jvm
        method: GET
        description: Get server JVM metrics
        inputParameters:
        - name: serverName
          in: path
          type: string
          required: true
          description: Name of the server
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: get-server-thread-pool
        method: GET
        description: Get server thread pool metrics
        inputParameters:
        - name: serverName
          in: path
          type: string
          required: true
          description: Name of the server
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: data-sources
      path: /datasources
      description: JDBC data source monitoring
      operations:
      - name: list-data-sources
        method: GET
        description: List all data source metrics
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: get-data-source
        method: GET
        description: Get data source metrics
        inputParameters:
        - name: dsName
          in: path
          type: string
          required: true
          description: Data source name
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: test-data-source
        method: POST
        description: Test a data source connection
        inputParameters:
        - name: dsName
          in: path
          type: string
          required: true
          description: Data source name
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: diagnostics
      path: /diagnostics
      description: WebLogic Diagnostic Framework resources
      operations:
      - name: list-wldf-resources
        method: GET
        description: List WLDF system resources
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: query-diagnostic-data
        method: POST
        description: Query diagnostic data
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        body:
          type: json
          data:
            query: '{{tools.query}}'
  exposes:
  - type: rest
    port: 8081
    namespace: weblogic-deployment-workflow-api
    description: Unified REST API for Oracle WebLogic application deployment workflows.
    resources:
    - path: /v1/deployments
      name: deployments
      description: Application deployment lifecycle management
      operations:
      - method: GET
        name: list-deployments
        description: List all application deployments
        call: weblogic-deployment.list-deployments
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: deploy
        description: Deploy an application at runtime
        call: weblogic-deployment.deploy
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/deployments/{deploymentName}
      name: deployment
      operations:
      - method: GET
        name: get-deployment
        description: Get an application deployment
        call: weblogic-deployment.get-deployment
        with:
          deploymentName: rest.deploymentName
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: undeploy
        description: Undeploy an application
        call: weblogic-deployment.undeploy
        with:
          deploymentName: rest.deploymentName
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/deployments/{deploymentName}/redeploy
      name: redeploy
      operations:
      - method: POST
        name: redeploy
        description: Redeploy an application
        call: weblogic-deployment.redeploy
        with:
          deploymentName: rest.deploymentName
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/deployments/{deploymentName}/start
      name: start-deployment
      operations:
      - method: POST
        name: start-application
        description: Start a deployed application
        call: weblogic-deployment.start-application
        with:
          deploymentName: rest.deploymentName
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/deployments/{deploymentName}/stop
      name: stop-deployment
      operations:
      - method: POST
        name: stop-application
        description: Stop a deployed application
        call: weblogic-deployment.stop-application
        with:
          deploymentName: rest.deploymentName
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/deployments/{deploymentName}/metrics
      name: deployment-metrics
      operations:
      - method: GET
        name: get-deployment-metrics
        description: Get deployment metrics and servlet statistics
        call: weblogic-monitoring.get-deployment
        with:
          deploymentName: rest.deploymentName
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/libraries
      name: libraries
      description: Shared library deployment management
      operations:
      - method: GET
        name: list-libraries
        description: List all shared library deployments
        call: weblogic-deployment.list-libraries
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: create-library
        description: Create a shared library deployment
        call: weblogic-deployment.create-library
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    port: 9091
    namespace: weblogic-deployment-mcp
    transport: http
    description: MCP server for AI-assisted Oracle WebLogic application deployment management.
    tools:
    - name: list-deployments
      description: List all application deployments on WebLogic
      hints:
        readOnly: true
        openWorld: true
      call: weblogic-deployment.list-deployments
      outputParameters:
      - type: object
        mapping: $.
    - name: get-deployment
      description: Get details for a specific application deployment
      hints:
        readOnly: true
      call: weblogic-deployment.get-deployment
      with:
        deploymentName: tools.deploymentName
      outputParameters:
      - type: object
        mapping: $.
    - name: deploy-application
      description: Deploy an application archive to WebLogic at runtime
      hints:
        readOnly: false
      call: weblogic-deployment.deploy
      outputParameters:
      - type: object
        mapping: $.
    - name: undeploy-application
      description: Undeploy and remove an application from WebLogic
      hints:
        destructive: true
        idempotent: true
      call: weblogic-deployment.undeploy
      with:
        deploymentName: tools.deploymentName
      outputParameters:
      - type: object
        mapping: $.
    - name: redeploy-application
      description: Redeploy an application (update in-place) on WebLogic
      hints:
        readOnly: false
        idempotent: false
      call: weblogic-deployment.redeploy
      with:
        deploymentName: tools.deploymentName
      outputParameters:
      - type: object
        mapping: $.
    - name: start-application
      description: Start a stopped or prepared application on WebLogic
      hints:
        readOnly: false
      call: weblogic-deployment.start-application
      with:
        deploymentName: tools.deploymentName
      outputParameters:
      - type: object
        mapping: $.
    - name: stop-application
      description: Stop a running application on WebLogic (keeps it deployed)
      hints:
        destructive: false
      call: weblogic-deployment.stop-application
      with:
        deploymentName: tools.deploymentName
      outputParameters:
      - type: object
        mapping: $.
    - name: get-deployment-metrics
      description: Get runtime metrics for a deployed application
      hints:
        readOnly: true
      call: weblogic-monitoring.get-deployment
      with:
        deploymentName: tools.deploymentName
      outputParameters:
      - type: object
        mapping: $.
    - name: list-all-deployments-monitoring
      description: List all application deployments with their runtime metrics
      hints:
        readOnly: true
      call: weblogic-monitoring.list-deployments
      outputParameters:
      - type: object
        mapping: $.
    - name: list-libraries
      description: List all shared library deployments on WebLogic
      hints:
        readOnly: true
      call: weblogic-deployment.list-libraries
      outputParameters:
      - type: object
        mapping: $.
    - name: create-library
      description: Deploy a new shared library to WebLogic
      hints:
        readOnly: false
      call: weblogic-deployment.create-library
      outputParameters:
      - type: object
        mapping: $.
    - name: delete-library
      description: Remove a shared library from WebLogic
      hints:
        destructive: true
      call: weblogic-deployment.delete-library
      with:
        libraryName: tools.libraryName
      outputParameters:
      - type: object
        mapping: $.