{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "title": "Morpho",
  "description": "Morpho protocol actions for vaults (deposit/withdraw) and Morpho Blue markets (collateral, borrow, repay)",
  "x-icon": "/skills/morpho/morpho.svg",
  "x-tags": [
    "DeFi"
  ],
  "properties": {
    "enabled": {
      "type": "boolean",
      "title": "Enabled",
      "description": "Whether this skill is enabled",
      "default": false
    },
    "states": {
      "type": "object",
      "properties": {
        "morpho_deposit": {
          "type": "string",
          "title": "Vault Deposit",
          "enum": [
            "disabled",
            "public",
            "private"
          ],
          "x-enum-title": [
            "Disabled",
            "Agent Owner + All Users",
            "Agent Owner Only"
          ],
          "description": "Deposit assets into a MetaMorpho Vault",
          "default": "disabled"
        },
        "morpho_withdraw": {
          "type": "string",
          "title": "Vault Withdraw",
          "enum": [
            "disabled",
            "public",
            "private"
          ],
          "x-enum-title": [
            "Disabled",
            "Agent Owner + All Users",
            "Agent Owner Only"
          ],
          "description": "Withdraw assets from a MetaMorpho Vault",
          "default": "disabled"
        },
        "morpho_get_vault_data": {
          "type": "string",
          "title": "Vault Data",
          "enum": [
            "disabled",
            "public",
            "private"
          ],
          "x-enum-title": [
            "Disabled",
            "Agent Owner + All Users",
            "Agent Owner Only"
          ],
          "description": "Get MetaMorpho Vault info (total assets, share price, underlying token)",
          "default": "disabled"
        },
        "morpho_supply_collateral": {
          "type": "string",
          "title": "Supply Collateral",
          "enum": [
            "disabled",
            "public",
            "private"
          ],
          "x-enum-title": [
            "Disabled",
            "Agent Owner + All Users",
            "Agent Owner Only"
          ],
          "description": "Supply collateral to a Morpho Blue market",
          "default": "disabled"
        },
        "morpho_withdraw_collateral": {
          "type": "string",
          "title": "Withdraw Collateral",
          "enum": [
            "disabled",
            "public",
            "private"
          ],
          "x-enum-title": [
            "Disabled",
            "Agent Owner + All Users",
            "Agent Owner Only"
          ],
          "description": "Withdraw collateral from a Morpho Blue market",
          "default": "disabled"
        },
        "morpho_borrow": {
          "type": "string",
          "title": "Borrow",
          "enum": [
            "disabled",
            "public",
            "private"
          ],
          "x-enum-title": [
            "Disabled",
            "Agent Owner + All Users",
            "Agent Owner Only"
          ],
          "description": "Borrow assets from a Morpho Blue market",
          "default": "disabled"
        },
        "morpho_repay": {
          "type": "string",
          "title": "Repay",
          "enum": [
            "disabled",
            "public",
            "private"
          ],
          "x-enum-title": [
            "Disabled",
            "Agent Owner + All Users",
            "Agent Owner Only"
          ],
          "description": "Repay borrowed assets in a Morpho Blue market",
          "default": "disabled"
        },
        "morpho_get_position": {
          "type": "string",
          "title": "Get Position",
          "enum": [
            "disabled",
            "public",
            "private"
          ],
          "x-enum-title": [
            "Disabled",
            "Agent Owner + All Users",
            "Agent Owner Only"
          ],
          "description": "Get user position in a Morpho Blue market",
          "default": "disabled"
        }
      },
      "description": "States for each Morpho skill (disabled, public, or private)"
    }
  },
  "required": [
    "states",
    "enabled"
  ],
  "additionalProperties": true
}
