naftiko: 1.0.0-alpha2 info: label: Tesla Motors Owner API — Vehicles description: 'Tesla Motors Owner API — Vehicles. 11 operations. Lead operation: Tesla List all Vehicles. Self-contained Naftiko capability covering one Tesla Motors business surface.' tags: - Tesla Motors - Vehicles created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: TESLA_MOTORS_API_KEY: TESLA_MOTORS_API_KEY capability: consumes: - type: http namespace: owner-vehicles baseUri: https://owner-api.teslamotors.com description: Tesla Motors Owner API — Vehicles business capability. Self-contained, no shared references. resources: - name: api-1-vehicles path: /api/1/vehicles operations: - name: getvehicles method: GET description: Tesla List all Vehicles outputRawFormat: json outputParameters: - name: result type: object value: $. - name: api-1-vehicles-vehicle_id path: /api/1/vehicles/{vehicle_id} operations: - name: getvehicle method: GET description: Tesla Retrieve a vehicle outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: vehicle_id in: path type: string description: The id of the Vehicle. required: true - name: api-1-vehicles-vehicle_id-data_request-charge_state path: /api/1/vehicles/{vehicle_id}/data_request/charge_state operations: - name: getvehiclechargestate method: GET description: Tesla Charge State outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: vehicle_id in: path type: string description: The id of the Vehicle. required: true - name: api-1-vehicles-vehicle_id-data_request-climate_state path: /api/1/vehicles/{vehicle_id}/data_request/climate_state operations: - name: getvehicleclimatestate method: GET description: Tesla Climate Settings outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: vehicle_id in: path type: string description: The id of the Vehicle. required: true - name: api-1-vehicles-vehicle_id-data_request-drive_state path: /api/1/vehicles/{vehicle_id}/data_request/drive_state operations: - name: getvehicledrivestate method: GET description: Tesla Driving and Position outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: vehicle_id in: path type: string description: The id of the Vehicle. required: true - name: api-1-vehicles-vehicle_id-data_request-gui_settings path: /api/1/vehicles/{vehicle_id}/data_request/gui_settings operations: - name: getvehilceguisettings method: GET description: Tesla GUI Settings outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: vehicle_id in: path type: string description: The id of the Vehicle. required: true - name: api-1-vehicles-vehicle_id-data_request-vehicle_config path: /api/1/vehicles/{vehicle_id}/data_request/vehicle_config operations: - name: getvehicleconfig method: GET description: Tesla Vehicle Config outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: vehicle_id in: path type: string description: The id of the Vehicle. required: true - name: api-1-vehicles-vehicle_id-data_request-vehicle_state path: /api/1/vehicles/{vehicle_id}/data_request/vehicle_state operations: - name: getvehiclestate method: GET description: Tesla Vehicle State outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: vehicle_id in: path type: string description: The id of the Vehicle. required: true - name: api-1-vehicles-vehicle_id-mobile_enabled path: /api/1/vehicles/{vehicle_id}/mobile_enabled operations: - name: getvehiclemobileenabled method: GET description: Tesla Mobile Access outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: vehicle_id in: path type: string description: The id of the Vehicle. required: true - name: api-1-vehicles-vehicle_id-nearby_charging_sites path: /api/1/vehicles/{vehicle_id}/nearby_charging_sites operations: - name: nearbychargers method: GET description: Tesla Get Nearby Chargers outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: vehicle_id in: path type: string description: The id of the Vehicle. required: true - name: api-1-vehicles-vehicle_id-vehicle_data path: /api/1/vehicles/{vehicle_id}/vehicle_data operations: - name: getvehicledata method: GET description: Tesla Vehicle Data outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: vehicle_id in: path type: string description: The id of the Vehicle. required: true - name: endpoints in: query type: string exposes: - type: rest namespace: owner-vehicles-rest port: 8080 description: REST adapter for Tesla Motors Owner API — Vehicles. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/api/1/vehicles name: api-1-vehicles description: REST surface for api-1-vehicles. operations: - method: GET name: getvehicles description: Tesla List all Vehicles call: owner-vehicles.getvehicles outputParameters: - type: object mapping: $. - path: /v1/api/1/vehicles/{vehicle-id} name: api-1-vehicles-vehicle-id description: REST surface for api-1-vehicles-vehicle_id. operations: - method: GET name: getvehicle description: Tesla Retrieve a vehicle call: owner-vehicles.getvehicle with: vehicle_id: rest.vehicle_id outputParameters: - type: object mapping: $. - path: /v1/api/1/vehicles/{vehicle-id}/data-request/charge-state name: api-1-vehicles-vehicle-id-data-request-charge-state description: REST surface for api-1-vehicles-vehicle_id-data_request-charge_state. operations: - method: GET name: getvehiclechargestate description: Tesla Charge State call: owner-vehicles.getvehiclechargestate with: vehicle_id: rest.vehicle_id outputParameters: - type: object mapping: $. - path: /v1/api/1/vehicles/{vehicle-id}/data-request/climate-state name: api-1-vehicles-vehicle-id-data-request-climate-state description: REST surface for api-1-vehicles-vehicle_id-data_request-climate_state. operations: - method: GET name: getvehicleclimatestate description: Tesla Climate Settings call: owner-vehicles.getvehicleclimatestate with: vehicle_id: rest.vehicle_id outputParameters: - type: object mapping: $. - path: /v1/api/1/vehicles/{vehicle-id}/data-request/drive-state name: api-1-vehicles-vehicle-id-data-request-drive-state description: REST surface for api-1-vehicles-vehicle_id-data_request-drive_state. operations: - method: GET name: getvehicledrivestate description: Tesla Driving and Position call: owner-vehicles.getvehicledrivestate with: vehicle_id: rest.vehicle_id outputParameters: - type: object mapping: $. - path: /v1/api/1/vehicles/{vehicle-id}/data-request/gui-settings name: api-1-vehicles-vehicle-id-data-request-gui-settings description: REST surface for api-1-vehicles-vehicle_id-data_request-gui_settings. operations: - method: GET name: getvehilceguisettings description: Tesla GUI Settings call: owner-vehicles.getvehilceguisettings with: vehicle_id: rest.vehicle_id outputParameters: - type: object mapping: $. - path: /v1/api/1/vehicles/{vehicle-id}/data-request/vehicle-config name: api-1-vehicles-vehicle-id-data-request-vehicle-config description: REST surface for api-1-vehicles-vehicle_id-data_request-vehicle_config. operations: - method: GET name: getvehicleconfig description: Tesla Vehicle Config call: owner-vehicles.getvehicleconfig with: vehicle_id: rest.vehicle_id outputParameters: - type: object mapping: $. - path: /v1/api/1/vehicles/{vehicle-id}/data-request/vehicle-state name: api-1-vehicles-vehicle-id-data-request-vehicle-state description: REST surface for api-1-vehicles-vehicle_id-data_request-vehicle_state. operations: - method: GET name: getvehiclestate description: Tesla Vehicle State call: owner-vehicles.getvehiclestate with: vehicle_id: rest.vehicle_id outputParameters: - type: object mapping: $. - path: /v1/api/1/vehicles/{vehicle-id}/mobile-enabled name: api-1-vehicles-vehicle-id-mobile-enabled description: REST surface for api-1-vehicles-vehicle_id-mobile_enabled. operations: - method: GET name: getvehiclemobileenabled description: Tesla Mobile Access call: owner-vehicles.getvehiclemobileenabled with: vehicle_id: rest.vehicle_id outputParameters: - type: object mapping: $. - path: /v1/api/1/vehicles/{vehicle-id}/nearby-charging-sites name: api-1-vehicles-vehicle-id-nearby-charging-sites description: REST surface for api-1-vehicles-vehicle_id-nearby_charging_sites. operations: - method: GET name: nearbychargers description: Tesla Get Nearby Chargers call: owner-vehicles.nearbychargers with: vehicle_id: rest.vehicle_id outputParameters: - type: object mapping: $. - path: /v1/api/1/vehicles/{vehicle-id}/vehicle-data name: api-1-vehicles-vehicle-id-vehicle-data description: REST surface for api-1-vehicles-vehicle_id-vehicle_data. operations: - method: GET name: getvehicledata description: Tesla Vehicle Data call: owner-vehicles.getvehicledata with: vehicle_id: rest.vehicle_id endpoints: rest.endpoints outputParameters: - type: object mapping: $. - type: mcp namespace: owner-vehicles-mcp port: 9090 transport: http description: MCP adapter for Tesla Motors Owner API — Vehicles. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: tesla-list-all-vehicles description: Tesla List all Vehicles hints: readOnly: true destructive: false idempotent: true call: owner-vehicles.getvehicles outputParameters: - type: object mapping: $. - name: tesla-retrieve-vehicle description: Tesla Retrieve a vehicle hints: readOnly: true destructive: false idempotent: true call: owner-vehicles.getvehicle with: vehicle_id: tools.vehicle_id outputParameters: - type: object mapping: $. - name: tesla-charge-state description: Tesla Charge State hints: readOnly: true destructive: false idempotent: true call: owner-vehicles.getvehiclechargestate with: vehicle_id: tools.vehicle_id outputParameters: - type: object mapping: $. - name: tesla-climate-settings description: Tesla Climate Settings hints: readOnly: true destructive: false idempotent: true call: owner-vehicles.getvehicleclimatestate with: vehicle_id: tools.vehicle_id outputParameters: - type: object mapping: $. - name: tesla-driving-and-position description: Tesla Driving and Position hints: readOnly: true destructive: false idempotent: true call: owner-vehicles.getvehicledrivestate with: vehicle_id: tools.vehicle_id outputParameters: - type: object mapping: $. - name: tesla-gui-settings description: Tesla GUI Settings hints: readOnly: true destructive: false idempotent: true call: owner-vehicles.getvehilceguisettings with: vehicle_id: tools.vehicle_id outputParameters: - type: object mapping: $. - name: tesla-vehicle-config description: Tesla Vehicle Config hints: readOnly: true destructive: false idempotent: true call: owner-vehicles.getvehicleconfig with: vehicle_id: tools.vehicle_id outputParameters: - type: object mapping: $. - name: tesla-vehicle-state description: Tesla Vehicle State hints: readOnly: true destructive: false idempotent: true call: owner-vehicles.getvehiclestate with: vehicle_id: tools.vehicle_id outputParameters: - type: object mapping: $. - name: tesla-mobile-access description: Tesla Mobile Access hints: readOnly: true destructive: false idempotent: true call: owner-vehicles.getvehiclemobileenabled with: vehicle_id: tools.vehicle_id outputParameters: - type: object mapping: $. - name: tesla-get-nearby-chargers description: Tesla Get Nearby Chargers hints: readOnly: true destructive: false idempotent: true call: owner-vehicles.nearbychargers with: vehicle_id: tools.vehicle_id outputParameters: - type: object mapping: $. - name: tesla-vehicle-data description: Tesla Vehicle Data hints: readOnly: true destructive: false idempotent: true call: owner-vehicles.getvehicledata with: vehicle_id: tools.vehicle_id endpoints: tools.endpoints outputParameters: - type: object mapping: $.