Blog

Naftiko Capabilities for MuleSoft Anypoint

·May 4, 2026
Table of contents

MuleSoft Anypoint Platform is Salesforce’s enterprise integration and API management platform. It manages the organizational structure of your integration estate — organizations, environments, and the CloudHub application deployments that run within them. The Naftiko capability set for MuleSoft covers both surfaces: organizational governance through the Accounts API and application lifecycle management through CloudHub v2.

What the Capability Covers

Two workflow capabilities built on shared definitions: Org and Environment Management (discover and manage Anypoint organizations and environments) and Application Deployment Management (deploy, monitor, update, and undeploy CloudHub applications).

MCP Tools Available

Organizations and Environments: list-organizations, get-organization, list-environments, get-environment, create-environment

CloudHub Applications: list-applications, get-application, get-application-status, deploy-application, update-application, delete-application

Capability Specification

naftiko: "1.0.0-alpha1"

info:
  name: MuleSoft CloudHub Application Deployment Management
  description: Deploy, monitor, and manage CloudHub applications across the Anypoint Platform
  version: 1.0.0

capability:
  consumes:
    - namespace: cloudhub
      type: http
      baseUri: https://anypoint.mulesoft.com
      authentication:
        type: bearer
        token: "{{MULESOFT_ACCESS_TOKEN}}"
      resources:
        - name: applications
          path: "/cloudhub/api/v2/applications/{domain}"
          operations:
            - name: listApplications
              method: GET
            - name: createApplication
              method: POST
            - name: updateApplication
              method: PUT
            - name: deleteApplication
              method: DELETE
        - name: application-status
          path: "/cloudhub/api/v2/applications/{domain}/status"
          operations:
            - name: getApplicationStatus
              method: GET

  exposes:
    - type: mcp
      address: "0.0.0.0"
      port: 9113
      namespace: mulesoft-applications
      description: "MuleSoft CloudHub application deployment and lifecycle management"
      tools:
        - name: list-applications
          description: "List all CloudHub applications with their runtime status and configuration"
          hints:
            readOnly: true
          call: cloudhub.listApplications
          outputParameters:
            - type: array
              mapping: "$."
              items:
                type: object

        - name: get-application-status
          description: "Check the current deployment and runtime status of a CloudHub application"
          hints:
            readOnly: true
          call: cloudhub.getApplicationStatus
          inputParameters:
            - name: domain
              type: string
              required: true
              description: "Application domain name"
          outputParameters:
            - type: object
              mapping: "$."

        - name: deploy-application
          description: "Deploy a new Mule application to CloudHub"
          hints:
            readOnly: false
            destructive: false
            idempotent: false
          call: cloudhub.createApplication
          inputParameters:
            - name: body
              type: object
              required: true
              description: "Application deployment configuration including domain, muleVersion, and workers"
          outputParameters:
            - type: object
              mapping: "$."

        - name: update-application
          description: "Update configuration or redeploy a CloudHub application"
          hints:
            readOnly: false
            destructive: false
            idempotent: true
          call: cloudhub.updateApplication
          inputParameters:
            - name: domain
              type: string
              required: true
              description: "Application domain name"
            - name: body
              type: object
              required: true
              description: "Updated application configuration"
          outputParameters:
            - type: object
              mapping: "$."

        - name: delete-application
          description: "Delete and undeploy a CloudHub application permanently"
          hints:
            readOnly: false
            destructive: true
            idempotent: true
          call: cloudhub.deleteApplication
          inputParameters:
            - name: domain
              type: string
              required: true
              description: "Application domain name"
          outputParameters:
            - type: object
              mapping: "$."

Running It

docker pull ghcr.io/naftiko/framework:latest

# Set MULESOFT_ACCESS_TOKEN in your .env file
docker run -p 9113:9113 \
  -v ./capabilities/application-deployment-management.yaml:/app/capability.yaml \
  --env-file .env \
  ghcr.io/naftiko/framework:latest /app/capability.yaml

The get-application-status tool is particularly useful in AI workflows monitoring deployment pipelines — an agent can check application health, identify failed deployments, and trigger redeployments without human coordination. The MuleSoft Anypoint capability set is part of the Naftiko Fleet.