naftiko: 1.0.0-alpha2 info: label: Dokploy API — server description: 'Dokploy API — server. 17 operations. Lead operation: server.create. Self-contained Naftiko capability covering one Dokploy business surface.' tags: - Dokploy - server created: '2026-05-25' modified: '2026-05-25' binds: - namespace: env keys: DOKPLOY_API_KEY: DOKPLOY_API_KEY DOKPLOY_URL: DOKPLOY_URL capability: consumes: - type: http namespace: dokploy-server baseUri: ${DOKPLOY_URL}/api description: Dokploy API — server business capability. Self-contained, no shared references. resources: - name: create path: /server.create operations: - name: server-create method: POST description: server-create outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body required: true - name: one path: /server.one operations: - name: server-one method: GET description: server-one outputRawFormat: json outputParameters: - name: result type: object value: $. - name: getDefaultCommand path: /server.getDefaultCommand operations: - name: server-getDefaultCommand method: GET description: server-getDefaultCommand outputRawFormat: json outputParameters: - name: result type: object value: $. - name: all path: /server.all operations: - name: server-all method: GET description: server-all outputRawFormat: json outputParameters: - name: result type: object value: $. - name: allForPermissions path: /server.allForPermissions operations: - name: server-allForPermissions method: GET description: server-allForPermissions outputRawFormat: json outputParameters: - name: result type: object value: $. - name: count path: /server.count operations: - name: server-count method: GET description: server-count outputRawFormat: json outputParameters: - name: result type: object value: $. - name: withSSHKey path: /server.withSSHKey operations: - name: server-withSSHKey method: GET description: server-withSSHKey outputRawFormat: json outputParameters: - name: result type: object value: $. - name: buildServers path: /server.buildServers operations: - name: server-buildServers method: GET description: server-buildServers outputRawFormat: json outputParameters: - name: result type: object value: $. - name: setup path: /server.setup operations: - name: server-setup method: POST description: server-setup outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body required: true - name: validate path: /server.validate operations: - name: server-validate method: GET description: server-validate outputRawFormat: json outputParameters: - name: result type: object value: $. - name: security path: /server.security operations: - name: server-security method: GET description: server-security outputRawFormat: json outputParameters: - name: result type: object value: $. - name: setupMonitoring path: /server.setupMonitoring operations: - name: server-setupMonitoring method: POST description: server-setupMonitoring outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body required: true - name: remove path: /server.remove operations: - name: server-remove method: POST description: server-remove outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body required: true - name: update path: /server.update operations: - name: server-update method: POST description: server-update outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body required: true - name: publicIp path: /server.publicIp operations: - name: server-publicIp method: GET description: server-publicIp outputRawFormat: json outputParameters: - name: result type: object value: $. - name: getServerTime path: /server.getServerTime operations: - name: server-getServerTime method: GET description: server-getServerTime outputRawFormat: json outputParameters: - name: result type: object value: $. - name: getServerMetrics path: /server.getServerMetrics operations: - name: server-getServerMetrics method: GET description: server-getServerMetrics outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest namespace: dokploy-server-rest port: 8080 description: REST adapter for Dokploy API — server. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/server.create name: create description: REST surface for create. operations: - method: POST name: server-create description: server-create call: dokploy-server.server-create with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/server.one name: one description: REST surface for one. operations: - method: GET name: server-one description: server-one call: dokploy-server.server-one outputParameters: - type: object mapping: $. - path: /v1/server.getDefaultCommand name: getDefaultCommand description: REST surface for getDefaultCommand. operations: - method: GET name: server-getDefaultCommand description: server-getDefaultCommand call: dokploy-server.server-getDefaultCommand outputParameters: - type: object mapping: $. - path: /v1/server.all name: all description: REST surface for all. operations: - method: GET name: server-all description: server-all call: dokploy-server.server-all outputParameters: - type: object mapping: $. - path: /v1/server.allForPermissions name: allForPermissions description: REST surface for allForPermissions. operations: - method: GET name: server-allForPermissions description: server-allForPermissions call: dokploy-server.server-allForPermissions outputParameters: - type: object mapping: $. - path: /v1/server.count name: count description: REST surface for count. operations: - method: GET name: server-count description: server-count call: dokploy-server.server-count outputParameters: - type: object mapping: $. - path: /v1/server.withSSHKey name: withSSHKey description: REST surface for withSSHKey. operations: - method: GET name: server-withSSHKey description: server-withSSHKey call: dokploy-server.server-withSSHKey outputParameters: - type: object mapping: $. - path: /v1/server.buildServers name: buildServers description: REST surface for buildServers. operations: - method: GET name: server-buildServers description: server-buildServers call: dokploy-server.server-buildServers outputParameters: - type: object mapping: $. - path: /v1/server.setup name: setup description: REST surface for setup. operations: - method: POST name: server-setup description: server-setup call: dokploy-server.server-setup with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/server.validate name: validate description: REST surface for validate. operations: - method: GET name: server-validate description: server-validate call: dokploy-server.server-validate outputParameters: - type: object mapping: $. - path: /v1/server.security name: security description: REST surface for security. operations: - method: GET name: server-security description: server-security call: dokploy-server.server-security outputParameters: - type: object mapping: $. - path: /v1/server.setupMonitoring name: setupMonitoring description: REST surface for setupMonitoring. operations: - method: POST name: server-setupMonitoring description: server-setupMonitoring call: dokploy-server.server-setupMonitoring with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/server.remove name: remove description: REST surface for remove. operations: - method: POST name: server-remove description: server-remove call: dokploy-server.server-remove with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/server.update name: update description: REST surface for update. operations: - method: POST name: server-update description: server-update call: dokploy-server.server-update with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/server.publicIp name: publicIp description: REST surface for publicIp. operations: - method: GET name: server-publicIp description: server-publicIp call: dokploy-server.server-publicIp outputParameters: - type: object mapping: $. - path: /v1/server.getServerTime name: getServerTime description: REST surface for getServerTime. operations: - method: GET name: server-getServerTime description: server-getServerTime call: dokploy-server.server-getServerTime outputParameters: - type: object mapping: $. - path: /v1/server.getServerMetrics name: getServerMetrics description: REST surface for getServerMetrics. operations: - method: GET name: server-getServerMetrics description: server-getServerMetrics call: dokploy-server.server-getServerMetrics outputParameters: - type: object mapping: $. - type: mcp namespace: dokploy-server-mcp port: 9090 transport: http description: MCP adapter for Dokploy API — server. One tool per consumed operation, routed inline through this capability’s consumes block. tools: - name: server-create description: server-create hints: readOnly: false destructive: false idempotent: false call: dokploy-server.server-create with: body: tools.body outputParameters: - type: object mapping: $. - name: server-one description: server-one hints: readOnly: true destructive: false idempotent: true call: dokploy-server.server-one outputParameters: - type: object mapping: $. - name: server-getDefaultCommand description: server-getDefaultCommand hints: readOnly: true destructive: false idempotent: true call: dokploy-server.server-getDefaultCommand outputParameters: - type: object mapping: $. - name: server-all description: server-all hints: readOnly: true destructive: false idempotent: true call: dokploy-server.server-all outputParameters: - type: object mapping: $. - name: server-allForPermissions description: server-allForPermissions hints: readOnly: true destructive: false idempotent: true call: dokploy-server.server-allForPermissions outputParameters: - type: object mapping: $. - name: server-count description: server-count hints: readOnly: true destructive: false idempotent: true call: dokploy-server.server-count outputParameters: - type: object mapping: $. - name: server-withSSHKey description: server-withSSHKey hints: readOnly: true destructive: false idempotent: true call: dokploy-server.server-withSSHKey outputParameters: - type: object mapping: $. - name: server-buildServers description: server-buildServers hints: readOnly: true destructive: false idempotent: true call: dokploy-server.server-buildServers outputParameters: - type: object mapping: $. - name: server-setup description: server-setup hints: readOnly: false destructive: false idempotent: false call: dokploy-server.server-setup with: body: tools.body outputParameters: - type: object mapping: $. - name: server-validate description: server-validate hints: readOnly: true destructive: false idempotent: true call: dokploy-server.server-validate outputParameters: - type: object mapping: $. - name: server-security description: server-security hints: readOnly: true destructive: false idempotent: true call: dokploy-server.server-security outputParameters: - type: object mapping: $. - name: server-setupMonitoring description: server-setupMonitoring hints: readOnly: false destructive: false idempotent: false call: dokploy-server.server-setupMonitoring with: body: tools.body outputParameters: - type: object mapping: $. - name: server-remove description: server-remove hints: readOnly: false destructive: false idempotent: false call: dokploy-server.server-remove with: body: tools.body outputParameters: - type: object mapping: $. - name: server-update description: server-update hints: readOnly: false destructive: false idempotent: false call: dokploy-server.server-update with: body: tools.body outputParameters: - type: object mapping: $. - name: server-publicIp description: server-publicIp hints: readOnly: true destructive: false idempotent: true call: dokploy-server.server-publicIp outputParameters: - type: object mapping: $. - name: server-getServerTime description: server-getServerTime hints: readOnly: true destructive: false idempotent: true call: dokploy-server.server-getServerTime outputParameters: - type: object mapping: $. - name: server-getServerMetrics description: server-getServerMetrics hints: readOnly: true destructive: false idempotent: true call: dokploy-server.server-getServerMetrics outputParameters: - type: object mapping: $.