naftiko: 1.0.0-alpha2 info: label: Samsara Safety and Compliance description: Safety and compliance workflow combining Samsara safety events, driver coaching, Hours of Service (HOS/ELD) compliance logs, DVIR inspections, and maintenance tracking. Designed for safety managers and compliance officers to monitor driver behavior, enforce regulatory HOS requirements, and track vehicle inspection status. tags: - Compliance - DVIR - ELD - Hours Of Service - Inspection - Maintenance - Safety - Samsara created: '2026-05-02' modified: '2026-05-06' binds: - namespace: env keys: SAMSARA_API_TOKEN: SAMSARA_API_TOKEN capability: consumes: - type: http namespace: samsara baseUri: https://api.samsara.com description: Samsara connected operations platform REST API authentication: type: bearer token: '{{SAMSARA_API_TOKEN}}' resources: - name: addresses path: /addresses description: Manage addresses and geofence locations in the organization operations: - name: list-addresses method: GET description: List All Addresses in the organization inputParameters: - name: limit in: query type: integer required: false description: Max objects returned (max 512) - name: after in: query type: string required: false description: Cursor for next page of results - name: tagIds in: query type: array required: false description: Filter by tag IDs outputRawFormat: json outputParameters: - name: result type: object value: $. - name: create-address method: POST description: Create an Address in the organization outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: name: '{{tools.name}}' formattedAddress: '{{tools.formattedAddress}}' geofence: '{{tools.geofence}}' - name: get-address method: GET description: Retrieve an Address by ID inputParameters: - name: id in: path type: string required: true description: Unique identifier for the address outputRawFormat: json outputParameters: - name: result type: object value: $. - name: vehicles path: /fleet/vehicles description: Manage and retrieve vehicle data and diagnostics operations: - name: list-vehicles method: GET description: List All Vehicles in the organization inputParameters: - name: limit in: query type: integer required: false description: Max results returned - name: after in: query type: string required: false description: Pagination cursor - name: tagIds in: query type: array required: false description: Filter by tag IDs outputRawFormat: json outputParameters: - name: result type: object value: $. - name: get-vehicle method: GET description: Retrieve a Vehicle by ID inputParameters: - name: id in: path type: string required: true description: Vehicle ID outputRawFormat: json outputParameters: - name: result type: object value: $. - name: drivers path: /fleet/drivers description: Manage drivers and driver profiles operations: - name: list-drivers method: GET description: List All Drivers inputParameters: - name: limit in: query type: integer required: false description: Max results - name: after in: query type: string required: false description: Pagination cursor - name: driverActivationStatus in: query type: string required: false description: Filter by activation status (active/deactivated) outputRawFormat: json outputParameters: - name: result type: object value: $. - name: get-driver method: GET description: Retrieve a Driver by ID inputParameters: - name: id in: path type: string required: true description: Driver ID or external ID outputRawFormat: json outputParameters: - name: result type: object value: $. - name: create-driver method: POST description: Create a Driver outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: name: '{{tools.name}}' username: '{{tools.username}}' licenseNumber: '{{tools.licenseNumber}}' - name: routes path: /fleet/routes description: Create and manage dispatch routes operations: - name: list-routes method: GET description: List All Routes inputParameters: - name: limit in: query type: integer required: false description: Max results - name: after in: query type: string required: false description: Pagination cursor outputRawFormat: json outputParameters: - name: result type: object value: $. - name: create-route method: POST description: Create a Route outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: name: '{{tools.name}}' driverId: '{{tools.driverId}}' stops: '{{tools.stops}}' - name: safety-events path: /fleet/safety/events description: Retrieve driver safety events and scores operations: - name: list-safety-events method: GET description: List Safety Events inputParameters: - name: startTime in: query type: string required: true description: Start time in RFC 3339 format - name: endTime in: query type: string required: true description: End time in RFC 3339 format - name: driverIds in: query type: array required: false description: Filter by driver IDs outputRawFormat: json outputParameters: - name: result type: object value: $. - name: dvirs path: /fleet/maintenance/dvirs description: Manage Driver Vehicle Inspection Reports (DVIRs) operations: - name: list-dvirs method: GET description: List All DVIRs inputParameters: - name: limit in: query type: integer required: false description: Max results - name: after in: query type: string required: false description: Pagination cursor outputRawFormat: json outputParameters: - name: result type: object value: $. - name: create-dvir method: POST description: Create a DVIR outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: vehicleId: '{{tools.vehicleId}}' inspectionType: '{{tools.inspectionType}}' defects: '{{tools.defects}}' - name: hos-logs path: /fleet/hos/logs description: Retrieve Hours of Service (HOS) ELD logs for compliance operations: - name: list-hos-logs method: GET description: List HOS Logs for ELD Compliance inputParameters: - name: startTime in: query type: string required: true description: Start time RFC 3339 - name: endTime in: query type: string required: true description: End time RFC 3339 - name: driverIds in: query type: array required: false description: Filter by driver IDs outputRawFormat: json outputParameters: - name: result type: object value: $. - name: vehicle-locations path: /fleet/vehicles/locations description: Retrieve real-time and historical vehicle GPS locations operations: - name: get-vehicle-locations method: GET description: Get Vehicle Locations Feed inputParameters: - name: after in: query type: string required: false description: Pagination cursor - name: vehicleIds in: query type: array required: false description: Filter by vehicle IDs outputRawFormat: json outputParameters: - name: result type: object value: $. - name: assets path: /assets description: Manage non-powered assets such as trailers and equipment operations: - name: list-assets method: GET description: List All Assets inputParameters: - name: limit in: query type: integer required: false description: Max results - name: after in: query type: string required: false description: Pagination cursor outputRawFormat: json outputParameters: - name: result type: object value: $. - name: tags path: /tags description: Manage organizational tags for grouping vehicles, drivers, and assets operations: - name: list-tags method: GET description: List All Tags outputRawFormat: json outputParameters: - name: result type: object value: $. - name: create-tag method: POST description: Create a Tag outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: name: '{{tools.name}}' - name: webhooks path: /webhooks description: Manage webhook subscriptions for real-time event notifications operations: - name: list-webhooks method: GET description: List All Webhooks outputRawFormat: json outputParameters: - name: result type: object value: $. - name: create-webhook method: POST description: Create a Webhook outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: name: '{{tools.name}}' url: '{{tools.url}}' eventTypes: '{{tools.eventTypes}}' exposes: - type: rest port: 8081 namespace: safety-compliance-api description: Unified REST API for driver safety monitoring and regulatory compliance. resources: - path: /v1/safety-events name: safety-events description: Driver safety event monitoring and scoring operations: - method: GET name: list-safety-events description: List safety events for a time range call: samsara.list-safety-events with: startTime: rest.startTime endTime: rest.endTime driverIds: rest.driverIds outputParameters: - type: object mapping: $. - path: /v1/dvirs name: dvirs description: Driver Vehicle Inspection Reports (DVIR) operations: - method: GET name: list-dvirs description: List all DVIR inspection reports call: samsara.list-dvirs with: limit: rest.limit after: rest.after outputParameters: - type: object mapping: $. - method: POST name: create-dvir description: Submit a DVIR inspection report call: samsara.create-dvir with: vehicleId: rest.vehicleId inspectionType: rest.inspectionType defects: rest.defects outputParameters: - type: object mapping: $. - path: /v1/hos-logs name: hos-logs description: Hours of Service ELD compliance logs operations: - method: GET name: list-hos-logs description: List HOS logs for ELD compliance call: samsara.list-hos-logs with: startTime: rest.startTime endTime: rest.endTime driverIds: rest.driverIds outputParameters: - type: object mapping: $. - type: mcp port: 9081 namespace: safety-compliance-mcp transport: http description: MCP server for AI-assisted safety analysis and compliance monitoring. tools: - name: list-safety-events description: List driver safety events including harsh braking, speeding, and camera events for a time range hints: readOnly: true openWorld: false call: samsara.list-safety-events with: startTime: tools.startTime endTime: tools.endTime driverIds: tools.driverIds outputParameters: - type: object mapping: $. - name: list-dvirs description: List all DVIR vehicle inspection reports hints: readOnly: true openWorld: true call: samsara.list-dvirs with: limit: tools.limit after: tools.after outputParameters: - type: object mapping: $. - name: create-dvir description: Submit a Driver Vehicle Inspection Report (DVIR) with defects hints: readOnly: false destructive: false idempotent: false call: samsara.create-dvir with: vehicleId: tools.vehicleId inspectionType: tools.inspectionType defects: tools.defects outputParameters: - type: object mapping: $. - name: list-hos-logs description: List Hours of Service ELD logs for regulatory compliance reporting hints: readOnly: true openWorld: false call: samsara.list-hos-logs with: startTime: tools.startTime endTime: tools.endTime driverIds: tools.driverIds outputParameters: - type: object mapping: $.