Connectors · Logistics & field service
Samsara MCP server for AI agents.
actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to Samsara and the rest of your systems. It gives your agent 410 Samsara actions (223 reads, 143 writes and 44 that wait for a confirmation) and holds the Samsara credential itself, so the agent never does. It paces Samsara's limits and records every call.
100,000 free calls a month. No card, no email, no password: press Start a free sandbox on the next screen and keep the key it shows you.
claude mcp add --transport http actionlake https://connect.actionlake.com/mcpdo { action: "samsara.me.get_organization_info", intent: "check which Samsara account is connected"}# Get information about your organization · read · 1 upstream call- 410actionsin one signed file
- 223readlook, never change
- 143writecreate and update
- 44wait for a yesdestructive, confirmed first
Set up
Connect Samsara in three steps.
- 01
Add actionlake to Claude.
Run the command once in Claude Code; its consent page can create a free sandbox: 100,000 calls a month, no card. In the Claude app, add a custom connector with the URL below and paste your key on the consent page. Creating a new sandbox from the Claude app is not yet tested by us.
https://connect.actionlake.com/mcp - 02
Connect Samsara.
Bearer token. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead. actionlake stores what you paste write-only, sealed under your tenant's key.
access_tokenSamsara API tokenregionYour Samsara region
account { op: "connections.requirements", service: "samsara" } # free: exactly what to paste, and what is found for you - 03
Make the first call. Check before a write.
Ask in plain words; Claude picks the action. Before anything changes,
checkvalidates the call and prices it, for free.do { action: "samsara.me.get_organization_info" }# get information about your organization · read · 1 upstream callcheck { action: "samsara.tags.create_tag", input: { … } }# free: inputs, permissions, cost and confirmations, nothing sent
Samsara at a glance
- Sign-in
- Bearer token. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead.
- You provide
access_token- Setup fields
region- Limits we pace to
- 150 calls a second, per connection
- API covered
- Samsara REST API 2025-10-23 (OpenAPI 3.0.1), at your region's samsara.com address, set when you connect
- Built from
- Samsara's documentation, read 23 October 2026developers.samsara.comdevelopers.samsara.com
- Service file
- Version 1.0.0, signed (Ed25519)
- Cached reads
- 217 of 223 reads, for up to 1 minute; a write clears what it affects
- Shared entities
- 7, so ask can line Samsara up with your other systems
- Data
- Processed and stored in Sydney, Australia. No US region yet
Capabilities
What an AI agent can do in Samsara.
410 actions in 73 areas. Every one carries its effect, so a key can allow the reads and hold the rest.
- 223readlook, never change
- 143writecreate and update
- 44destructivewait for a confirmation
Maintenance
6524 read · 32 write · 9 destructive
[beta] List all maintenance vendors. · [beta] Create a maintenance vendor · [beta] Update a maintenance vendor · [beta] Delete a maintenance vendor
Assets
2114 read · 5 write · 2 destructive
Create a new asset. · List asset location and speed data in an organization. · List all assets. · Update an existing asset.
Drivers
199 read · 9 write · 1 destructive
List all drivers · Create a driver · Retrieve a driver · Update a driver
Industrial
1912 read · 5 write · 2 destructive
Create an asset · [beta] Create a job · Follow a real-time feed of data points for data inputs · List historical data points for data inputs
Vehicles
1713 read · 3 write · 1 destructive
List all vehicles. · Retrieve a vehicle · Update a vehicle · Locations snapshot
Hub
168 read · 6 write · 2 destructive
Create locations in bulk · Create a new plan · [beta] Create a route template for a specific hub · Create orders in bulk
Asset sharing
102 read · 5 write · 3 destructive
[beta] Create a Data Sharing Agreement · [beta] Share assets · [beta] List all Data Sharing Agreements · [beta] List shared assets for an agreement
Equipment
108 read · 2 write · 0 destructive
Get most recent locations for all equipment · Follow feed of equipment locations · Get historical equipment locations · Get most recent stats for all equipment
65 more areas · 233 actions
- Reports 10
- Ridership 10
- Trailers 10
- Functions 8
- Places 7
- Qualification records 7
- Documents 6
- Form submissions 6
- Hos 6
- Routes 6
- Sensors 6
- Tags 6
- Addresses 5
- Alerts 5
- Attributes 5
- Contacts 5
- Dvirs 5
- Functions storage 5
- Orders 5
- Preferred stations 5
- Safety events 5
- Settings 5
- Users 5
- Webhooks 5
- Defects 4
- Driver vehicle assignments 4
- Gateways 4
- Ground intelligence 4
- Issues 4
- Live shares 4
- Readings 4
- Safety scores 4
- Training assignments 4
- Cameras 3
- Carrier proposed assignments 3
- Coaching 3
- Driver trailer assignments 3
- Installer 3
- Agent studio 2
- Carb CTC 2
- Driver efficiency 2
- Ifta detail 2
- Machines 2
- Messages 2
- Trips 2
- Aemp 1
- Defect types 1
- Detections 1
- Devices 1
- Dispatch 1
- Document types 1
- Form templates 1
- Fuel purchase 1
- Hos authentication logs 1
- Hubs 1
- Idling 1
- Locations 1
- Me 1
- Qualification types 1
- Route events 1
- Speeding intervals 1
- Tachograph 1
- Tachograph live data 1
- Training courses 1
- User roles 1
Top actions
The Samsara API, shaped for agents.
The ids your agent types, what each does, and the one name it shares with other systems. 46 of Samsara's 50 action names are shared with at least one other connector, so an agent learns them once.
| Action | What it does | Effect | Same name in |
|---|---|---|---|
samsara.tags.list_tagsList all tags | List all tags. | read | crm.tag.list65 connectors |
samsara.addresses.list_addressesList all addresses | List all addresses. | read | crm.location.list48 connectors |
samsara.users.list_usersList all users | List all users. | read | identity.user.list474 connectors |
samsara.vehicles.list_vehiclesList all vehicles. | List all vehicles. | read | asset.asset.list42 connectors |
samsara.tags.create_tagCreate a tag | Create a tag. | write | crm.tag.create49 connectors |
samsara.addresses.create_addressCreate an address | Create an address. | write | crm.location.create41 connectors |
samsara.drivers.list_driversList all drivers | List all drivers. | read | hr.employee.list61 connectors |
samsara.contacts.list_contactsList all contacts | List all contacts. | read | crm.contact.list177 connectors |
samsara.users.create_userCreate a user | Create a user. | write | identity.user.create262 connectors |
samsara.contacts.create_contactCreate a contact | Create a contact. | write | crm.contact.create161 connectors |
samsara.user_roles.list_user_rolesList all user roles | List all user roles. | read | identity.role.list184 connectors |
samsara.tags.delete_tagDelete a tag | Delete a tag. | destructive | crm.tag.delete44 connectors |
Try it
Prompts to paste into Claude.
Each one names the Samsara actions it will call, so you know what it reads and what it changes before you send it.
- Readread
List everyone in Samsara with their department and start date.
calls
samsara.drivers.list_drivers - Writewrite
Create a tag in Samsara. Show me exactly what you will send before you save it.
calls
samsara.tags.create_tag
Governance for Samsara
Destructive actions wait for a yes.
44 Samsara actions are destructive. The first 10:
- Delete a tag
samsara.tags.delete_tag - Delete an address
samsara.addresses.delete_address - Delete a user
samsara.users.delete_user - Delete a contact
samsara.contacts.delete_contact - [beta] Delete a maintenance vendor
samsara.maintenance.delete_vendor - Delete a webhook with the given ID
samsara.webhooks.delete_webhook - Delete document
samsara.documents.delete_document - [beta] Delete a purchase order
samsara.maintenance.delete_purchase_order - Delete an existing asset.
samsara.assets.delete_asset - Delete a route.
samsara.routes.delete_route
A destructive action runs only with confirm: true. Under the human policy the agent cannot confirm for itself: the run stops until a named person approves, in the console or from a signed link in an email. The cap on a key is refused before the call is sent, never after.
Delete a tag?
intent: the user asked me to delete a tag
account { op: "keys.create", name: "samsara-agent", allowed_actions: ["samsara.*"], cap_calls: 2000, confirm_policy: "human_for_writes", approval_rules: [ { match: "samsara.tags.delete_tag", approver: "[email protected]" }, { match: "samsara.addresses.delete_address", approver: "[email protected]" }, { match: "samsara.users.delete_user", approver: "[email protected]" } ]}Cost
What Samsara costs on actionlake.
Every Samsara action is one upstream call, the only thing actionlake bills. Searching, check, cost, account and any call Samsara refused with 401, 403, 429 or a 5xx are free. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.
- 1upstream call per actionall 410 Samsara actions
- 410actions pageeach page of a long list is one call
- 217reads can be cacheda cache hit costs nothing
- 100,000calls a month, freepaid plans from US$49 a month for 250,000
Action index
Every Samsara action.
410 actions by area: the id your agent calls, what it does, and its effect.
Maintenance65
samsara.maintenance.create_vendor[beta] Create a maintenance vendorwritesamsara.maintenance.delete_vendor[beta] Delete a maintenance vendordestructivesamsara.maintenance.list_maintenance_vendors[beta] List all maintenance vendors.readsamsara.maintenance.update_vendor[beta] Update a maintenance vendorwritesamsara.maintenance.create_maintenance_estimate[beta] Create a maintenance estimatewritesamsara.maintenance.create_maintenance_estimate_attachment[beta] Attach a file to an estimatewrite- and 59 more in this area
Assets21
samsara.assets.create_assetCreate a new asset.writesamsara.assets.get_location_and_speedList asset location and speed data in an organization.readsamsara.assets.list_assetsList all assets.readsamsara.assets.update_assetUpdate an existing asset.writesamsara.assets.create_asset_assignment[beta] Create an asset assignment.writesamsara.assets.delete_assetDelete an existing asset.destructive- and 15 more in this area
Drivers19
samsara.drivers.create_driverCreate a driverwritesamsara.drivers.get_driverRetrieve a driverreadsamsara.drivers.list_driversList all driversreadsamsara.drivers.update_driverUpdate a driverwritesamsara.drivers.create_auth_tokenCreate auth token for a driverwritesamsara.drivers.create_driver_auth_token[preview] Create auth token for a driverwrite- and 13 more in this area
Industrial19
samsara.industrial.create_industrial_assetCreate an assetwritesamsara.industrial.create_job[beta] Create a jobwritesamsara.industrial.get_data_input_data_feedFollow a real-time feed of data points for data inputsreadsamsara.industrial.get_data_input_data_historyList historical data points for data inputsreadsamsara.industrial.delete_industrial_assetDelete an existing assetdestructivesamsara.industrial.delete_job[beta] Deletes an existing jobdestructive- and 13 more in this area
Vehicles17
samsara.vehicles.get_vehicleRetrieve a vehiclereadsamsara.vehicles.get_vehicle_locationsLocations snapshotreadsamsara.vehicles.list_vehiclesList all vehicles.readsamsara.vehicles.update_vehicleUpdate a vehiclewritesamsara.vehicles.get_engine_immobilizer_states[beta] Get engine immobilizer statesreadsamsara.vehicles.get_vehicle_locations_feedLocations feedread- and 11 more in this area
Hub16
samsara.hub.create_hub_locationsCreate locations in bulkwritesamsara.hub.create_hub_planCreate a new planwritesamsara.hub.create_hub_route_template[beta] Create a route template for a specific hubwritesamsara.hub.create_plan_ordersCreate orders in bulkwritesamsara.hub.delete_hub_route_template[beta] Delete a route templatedestructivesamsara.hub.delete_plan_orders[beta] Delete orders from a plandestructive- and 10 more in this area
Asset sharing10
samsara.asset_sharing.create_asset_sharing_agreement[beta] Create a Data Sharing Agreementwritesamsara.asset_sharing.create_shared_assets_batch[beta] Share assetswritesamsara.asset_sharing.list_asset_sharing_agreements[beta] List all Data Sharing Agreementsreadsamsara.asset_sharing.list_shared_assets[beta] List shared assets for an agreementreadsamsara.asset_sharing.accept_asset_sharing_agreement[beta] Accept a Data Sharing Agreementwritesamsara.asset_sharing.cancel_asset_sharing_agreement[beta] Cancel a Data Sharing Agreementdestructive- and 4 more in this area
Equipment10
samsara.equipment.get_equipment_locationsGet most recent locations for all equipmentreadsamsara.equipment.get_equipment_locations_feedFollow feed of equipment locationsreadsamsara.equipment.get_equipment_locations_historyGet historical equipment locationsreadsamsara.equipment.get_equipment_statsGet most recent stats for all equipmentreadsamsara.equipment.get_equipmentRetrieve a unit of equipmentreadsamsara.equipment.get_equipment_stats_feedFollow a feed of equipment statsread- and 4 more in this area
Reports10
samsara.reports.create_report_run[beta] Create a custom report runwritesamsara.reports.get_datasets[beta] Get custom report datasetsreadsamsara.reports.get_fuel_energy_driver_reportsGet fuel and energy efficiency driver reports.readsamsara.reports.get_fuel_energy_vehicle_reportsGet fuel and energy efficiency vehicle reports.readsamsara.reports.get_ifta_jurisdiction_reportsGet IFTA jurisdiction reports.readsamsara.reports.get_ifta_vehicle_reportsGet IFTA vehicle reports.read- and 4 more in this area
Ridership10
samsara.ridership.create_ridership_passenger[beta] Create a ridership passenger.writesamsara.ridership.create_ridership_route_setup[beta] Create a ridership route setup.writesamsara.ridership.list_ridership_passengers[beta] List ridership passengers.readsamsara.ridership.list_ridership_route_setups[beta] List ridership route setups.readsamsara.ridership.delete_ridership_passenger[beta] Delete a ridership passenger.destructivesamsara.ridership.delete_ridership_route_setup[beta] Delete a ridership route setup.destructive- and 4 more in this area
Trailers10
samsara.trailers.create_trailerCreates a new trailer assetwritesamsara.trailers.get_trailer_stats_feedGet trailer stats feedreadsamsara.trailers.get_trailer_stats_historyGet trailer stats historyreadsamsara.trailers.get_trailer_stats_snapshotGet trailer statsreadsamsara.trailers.delete_trailerDelete a trailerdestructivesamsara.trailers.get_trailerRetrieve a trailerread- and 4 more in this area
Functions8
samsara.functions.create_function[beta] Create a Function.writesamsara.functions.deploy_function[beta] Deploy a Function.writesamsara.functions.get_function_logs[beta] Get Function logs.readsamsara.functions.start_function_run[beta] Start a Function run.writesamsara.functions.delete_function[beta] Delete a Function.destructivesamsara.functions.get_function[beta] Get a Function.read- and 2 more in this area
Places7
samsara.places.get_place_deletions[beta] Poll place deletionsreadsamsara.places.get_place_geocode[beta] Forward geocode an addressreadsamsara.places.get_place_geofence[beta] Look up geofence suggestionsreadsamsara.places.get_places[beta] List or batch-get placesreadsamsara.places.delete_place[beta] Delete a placedestructivesamsara.places.patch_place[beta] Update a placewrite- and 1 more in this area
Qualification records7
samsara.qualification_records.archive_qualification_record[beta] Archive a qualification record.writesamsara.qualification_records.get_qualification_records[beta] Get a list of specified qualification records.readsamsara.qualification_records.get_qualification_records_stream[beta] Get a stream of filtered qualification records.readsamsara.qualification_records.post_qualification_record[beta] Create a qualification record.writesamsara.qualification_records.delete_qualification_record[beta] Delete a qualification record.destructivesamsara.qualification_records.patch_qualification_record[beta] Update a qualification record.write- and 1 more in this area
Documents6
samsara.documents.delete_documentDelete documentdestructivesamsara.documents.get_documentFetch documentreadsamsara.documents.get_documentsFetch all documentsreadsamsara.documents.post_documentCreate documentwritesamsara.documents.generate_document_pdfCreate a document PDFwritesamsara.documents.get_document_pdfQuery a document PDFread
Form submissions6
samsara.form_submissions.get_form_submissionsGet a list of specified form submissions.readsamsara.form_submissions.get_form_submissions_streamGet a stream of filtered form submissions.readsamsara.form_submissions.post_form_submissionCreate a form submission.writesamsara.form_submissions.post_form_submissions_pdf_exportsCreate a PDF export for an existing form submission.writesamsara.form_submissions.get_form_submissions_pdf_exportsReturn a PDF export that has already been generated for a form submission.readsamsara.form_submissions.patch_form_submissionUpdate a single form submission.write
Hos6
samsara.hos.get_hos_clocksGet HOS clocksreadsamsara.hos.get_hos_daily_logsGet all driver HOS daily logsreadsamsara.hos.get_hos_logsGet HOS logsreadsamsara.hos.get_hos_violationsGet all driver HOS violationsreadsamsara.hos.get_hos_eld_events[beta] Get driver HOS ELD eventsreadsamsara.hos.update_shipping_docsUpdate the shippingDocs field of an existing assignment.write
Routes6
samsara.routes.create_routeCreate a routewritesamsara.routes.fetch_routeFetch a routereadsamsara.routes.fetch_routesFetch all routesreadsamsara.routes.get_routes_feedGet route updatesreadsamsara.routes.delete_routeDelete a route.destructivesamsara.routes.patch_routeUpdate a routewrite
Sensors6
samsara.sensors.v1_get_sensorsGet all sensorsreadsamsara.sensors.v1_get_sensors_cargoGet cargo statusreadsamsara.sensors.v1_get_sensors_doorGet door statusreadsamsara.sensors.v1_get_sensors_historyGet sensor historyreadsamsara.sensors.v1_get_sensors_humidityGet humidityreadsamsara.sensors.v1_get_sensors_temperatureGet temperatureread
Tags6
samsara.tags.create_tagCreate a tagwritesamsara.tags.get_tagRetrieve a tagreadsamsara.tags.list_tagsList all tagsreadsamsara.tags.patch_tagUpdate a tagwritesamsara.tags.replace_tagUpdate a tagwritesamsara.tags.delete_tagDelete a tagdestructive
Addresses5
samsara.addresses.create_addressCreate an addresswritesamsara.addresses.get_addressRetrieve an addressreadsamsara.addresses.list_addressesList all addressesreadsamsara.addresses.update_addressUpdate an addresswritesamsara.addresses.delete_addressDelete an addressdestructive
Alerts5
samsara.alerts.get_configurationsGet Alert Configurations.readsamsara.alerts.get_incidentsGet Alert Incidents.readsamsara.alerts.patch_configurationsUpdate alert configurations.writesamsara.alerts.post_configurationsCreate alert configurations.writesamsara.alerts.delete_configurationsDelete alert configurations.destructive
Attributes5
samsara.attributes.create_attributeCreate an attributewritesamsara.attributes.get_attributeRetrieve an attributereadsamsara.attributes.get_attributes_by_entity_typeList all attributes by entity typereadsamsara.attributes.update_attributeUpdate an attributewritesamsara.attributes.delete_attributeDeleting an attributedestructive
Contacts5
samsara.contacts.create_contactCreate a contactwritesamsara.contacts.get_contactRetrieve a contactreadsamsara.contacts.list_contactsList all contactsreadsamsara.contacts.update_contactUpdate a contactwritesamsara.contacts.delete_contactDelete a contactdestructive
Dvirs5
samsara.dvirs.create_dvirCreate a mechanic DVIRwritesamsara.dvirs.get_dvirGet a single DVIR by ID.readsamsara.dvirs.get_dvirsStream DVIRsreadsamsara.dvirs.update_dvirResolve a DVIRwritesamsara.dvirs.get_dvir_history[legacy] Get all DVIRsread
Functions storage5
samsara.functions_storage.create_function_storage_file[beta] Create a Functions storage file.writesamsara.functions_storage.get_function_storage_file[beta] Get a Functions storage file.readsamsara.functions_storage.list_functions_storage_files[beta] List Functions storage files.readsamsara.functions_storage.update_function_storage_file[beta] Update a Functions storage file.writesamsara.functions_storage.delete_function_storage_file[beta] Delete a Functions storage file.destructive
Orders5
samsara.orders.delete_order[preview] Delete an orderdestructivesamsara.orders.get_order_deletions[preview] Get order deletionsreadsamsara.orders.get_orders[preview] Get ordersreadsamsara.orders.get_orders_stream[preview] Stream ordersreadsamsara.orders.post_orders_batch[preview] Upsert orderswrite
Preferred stations5
samsara.preferred_stations.get_preferred_stationGet a preferred fuel station.readsamsara.preferred_stations.list_preferred_stationsList preferred fuel stations.readsamsara.preferred_stations.patch_preferred_stationUpdate a preferred fuel station.writesamsara.preferred_stations.post_preferred_stationCreate a preferred fuel station.writesamsara.preferred_stations.delete_preferred_stationDelete a preferred fuel station.destructive
Safety events5
samsara.safety_events.get_safety_activity_event_feed[legacy] Fetches safety activity event feedreadsamsara.safety_events.get_safety_events[legacy] List all safety events.readsamsara.safety_events.get_safety_events_v2Get Safety Eventsreadsamsara.safety_events.get_safety_events_v2_streamGet Safety Events Streamreadsamsara.safety_events.patch_safety_events_v2_batch[beta] Update Safety Eventswrite
Settings5
samsara.settings.get_compliance_settingsGet compliance settingsreadsamsara.settings.get_driver_app_settingsGet driver app settingsreadsamsara.settings.get_safety_settingsGet safety settingsreadsamsara.settings.patch_compliance_settingsUpdate compliance settingswritesamsara.settings.patch_driver_app_settingsUpdate driver app settingswrite
Users5
samsara.users.create_userCreate a userwritesamsara.users.get_userRetrieve a userreadsamsara.users.list_usersList all usersreadsamsara.users.update_userUpdate a userwritesamsara.users.delete_userDelete a userdestructive
Webhooks5
samsara.webhooks.get_webhookRetrieve a webhook with given IDreadsamsara.webhooks.list_webhooksList all webhooks belonging to a specific org.readsamsara.webhooks.patch_webhookUpdate a specific webhook's information.writesamsara.webhooks.post_webhooksCreate a webhookwritesamsara.webhooks.delete_webhookDelete a webhook with the given IDdestructive
Defects4
samsara.defects.get_defectGet a single DVIR defect by ID.readsamsara.defects.get_dvir_defects[legacy] Get all defectsreadsamsara.defects.stream_defectsStream DVIR defects.readsamsara.defects.update_dvir_defectUpdate a defectwrite
Driver vehicle assignments4
samsara.driver_vehicle_assignments.create_driver_vehicle_assignmentCreate a new driver-vehicle assignmentwritesamsara.driver_vehicle_assignments.delete_driver_vehicle_assignmentsDelete API generated driver-vehicle assignmentsdestructivesamsara.driver_vehicle_assignments.get_driver_vehicle_assignmentsGet all driver-vehicle assignmentsreadsamsara.driver_vehicle_assignments.update_driver_vehicle_assignmentUpdate API generated driver-vehicle assignmentswrite
Gateways4
samsara.gateways.delete_gatewayDeactivate a gatewaydestructivesamsara.gateways.get_gatewaysList all gatewaysreadsamsara.gateways.pair_gateways[beta] Pair gateways to deviceswritesamsara.gateways.post_gatewayActivate a new gatewaywrite
Ground intelligence4
samsara.ground_intelligence.create_watchpoint[beta] Create a watchpointwritesamsara.ground_intelligence.list_issues[beta] List Ground Intelligence issuesreadsamsara.ground_intelligence.update_ground_intelligence_issue[beta] Update a Ground Intelligence issuewritesamsara.ground_intelligence.update_watchpoint[beta] Update a watchpointwrite
Issues4
samsara.issues.get_issuesGet a list of specified issues.readsamsara.issues.get_issues_streamGet a stream of filtered issues.readsamsara.issues.patch_issueUpdate a single issue.writesamsara.issues.post_issueCreate a single issue.write
Live shares4
samsara.live_shares.create_live_sharing_linkCreate Live Sharing Linkwritesamsara.live_shares.delete_live_sharing_linkDelete non-expired Live Sharing Linkdestructivesamsara.live_shares.get_live_sharing_linksGet Live Sharing Linksreadsamsara.live_shares.update_live_sharing_linkUpdate non-expired Live Sharing Linkwrite
Readings4
samsara.readings.get_readings_historyGet Readings History and Feedreadsamsara.readings.get_readings_snapshotGet Readings Snapshotreadsamsara.readings.list_readings_definitionsGet Readings Definitionsreadsamsara.readings.post_readings[beta] Ingest Readingswrite
Safety scores4
samsara.safety_scores.get_driver_safety_scoresGet driver scoresreadsamsara.safety_scores.get_tag_group_safety_scoresGet tags combined scorereadsamsara.safety_scores.get_tag_safety_scoresGet tag scoresreadsamsara.safety_scores.get_vehicle_safety_scoresGet vehicle scoresread
Training assignments4
samsara.training_assignments.delete_training_assignmentsDelete training assignments.destructivesamsara.training_assignments.get_training_assignments_streamGet a stream of filtered training assignments.readsamsara.training_assignments.patch_training_assignmentsUpdate training assignments.writesamsara.training_assignments.post_training_assignmentsCreate training assignments.write
Cameras3
samsara.cameras.get_media_retrievalGet details for a media retrieval requestreadsamsara.cameras.list_uploaded_mediaList uploaded media by time range.readsamsara.cameras.post_media_retrievalCreate a media retrieval requestwrite
Carrier proposed assignments3
samsara.carrier_proposed_assignments.create_carrier_proposed_assignmentCreate an assignmentwritesamsara.carrier_proposed_assignments.delete_carrier_proposed_assignmentDelete an assignmentdestructivesamsara.carrier_proposed_assignments.list_carrier_proposed_assignmentsRetrieve assignmentsread
Coaching3
samsara.coaching.get_coaching_sessionsGet coaching sessions.readsamsara.coaching.get_driver_coach_assignmentGet driver coach assignments.readsamsara.coaching.put_driver_coach_assignmentPut driver coach assignments.write
Driver trailer assignments3
samsara.driver_trailer_assignments.create_driver_trailer_assignmentCreate a new driver-trailer assignmentwritesamsara.driver_trailer_assignments.get_driver_trailer_assignmentsGet currently active driver-trailer assignments for driver.readsamsara.driver_trailer_assignments.update_driver_trailer_assignmentUpdate an existing driver-trailer assignment.write
Installer3
samsara.installer.get_fleet_installer_photo_uploads[beta] List fleet installer photo uploads.readsamsara.installer.post_fleet_installer_photo_upload[beta] Create a fleet installer photo upload.writesamsara.installer.post_fleet_installer_photo_upload_complete[beta] Complete a fleet installer photo upload.write
Agent studio2
samsara.agent_studio.get_voice_sessions[beta] Get voice agent session detailsreadsamsara.agent_studio.get_voice_sessions_stream[beta] Stream voice agent session summariesread
Carb CTC2
samsara.carb_ctc.list_carb_ctc_vehicle_historyList CARB CTC vehicle collection historyreadsamsara.carb_ctc.list_carb_ctc_vehiclesList CARB CTC enrolled vehiclesread
Driver efficiency2
samsara.driver_efficiency.get_driver_efficiency_by_drivers[legacy] Get Driver efficiency data grouped by drivers.readsamsara.driver_efficiency.get_driver_efficiency_by_vehicles[legacy] Get Driver efficiency data grouped by vehicles.read
Ifta detail2
samsara.ifta_detail.create_ifta_detail_jobCreate a job to generate csv files of IFTA mileage segments.writesamsara.ifta_detail.get_ifta_detail_jobGet information about an existing IFTA detail job.read
Machines2
samsara.machines.v1_get_machinesGet machinesreadsamsara.machines.v1_get_machines_historyGet machine historyread
Messages2
samsara.messages.v1_create_messagesSend a message to a list of driver ids.writesamsara.messages.v1_get_messagesGet all messages.read
Trips2
samsara.trips.get_tripsGet Trips Streamreadsamsara.trips.v1_get_fleet_tripsGet vehicle tripsread
Aemp1
samsara.aemp.get_aemp_equipment_list[beta] Get a list of AEMP equipmentread
Defect types1
samsara.defect_types.get_defect_typesGet DVIR defect types.read
Detections1
samsara.detections.get_detections[beta] Returns a list of all detections in an organization.read
Devices1
samsara.devices.get_devices[beta] List devices.read
Dispatch1
samsara.dispatch.v1_delete_dispatch_route_by_idDelete a routedestructive
Document types1
samsara.document_types.get_document_typesFetch document typesread
Form templates1
samsara.form_templates.get_form_templatesGet a list of form templates.read
Fuel purchase1
samsara.fuel_purchase.post_fuel_purchaseCreate a fuel purchase transaction.write
Hos authentication logs1
samsara.hos_authentication_logs.v1_get_fleet_hos_authentication_logsGet HOS signin and signoutread
Hubs1
samsara.hubs.list_hubsList all hubs for the organizationread
Idling1
samsara.idling.get_idling_eventsGet idling events.read
Locations1
samsara.locations.get_fleet_locations/fleet/locationsread
Me1
samsara.me.get_organization_infoGet information about your organizationread
Qualification types1
samsara.qualification_types.get_qualification_types[beta] Get a list of qualification types.read
Route events1
samsara.route_events.get_route_events_streamGet route events streamread
Speeding intervals1
samsara.speeding_intervals.get_speeding_intervalsGet Speeding Intervalsread
Tachograph1
samsara.tachograph.post_tachograph_file_upload[beta] Create a tachograph file upload.write
Tachograph live data1
samsara.tachograph_live_data.list_tachograph_live_data[beta] List tachograph live dataread
Training courses1
samsara.training_courses.get_training_coursesGet a list of filtered training courses.read
User roles1
samsara.user_roles.list_user_rolesList all user rolesread
This index shows a sample of each area. All 410 actions, with their inputs and prices, are in the catalogue, which a free sandbox key can search.
Questions
The Samsara MCP server, answered.
Is there a Samsara MCP server for Claude?
Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 410 Samsara actions across maintenance, assets, drivers and industrial, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by Samsara.
What do I need to connect Samsara?
Samsara API token. Plus your region. The free call account { op: "connections.requirements", service: "samsara" } lists exactly what to paste.
Can an AI agent delete or change things in Samsara?
Only if its key allows it, and only with an explicit confirmation. 44 Samsara actions are destructive, including delete a tag, delete an address and delete a user. Each runs only with confirm: true. Under the human confirm policy, or an approval rule on the key, the run waits until a named person approves it.
Will an AI agent use up my Samsara API limit?
actionlake paces every call to the limits in the Samsara service file: 150 calls a second per connection. Repeated reads are answered from cache (217 Samsara actions can be), which never reaches Samsara.
What does a Samsara action cost?
One upstream call, the only unit actionlake bills. A list that pages bills one call per page (410 Samsara actions page). Cache hits, searches, dry runs and calls Samsara refused with 401, 403, 429 or a 5xx are free. The Free plan includes 100,000 calls a month with no card. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.
Which Samsara API does it cover?
The Samsara REST API 2025-10-23 (OpenAPI 3.0.1) at your region's samsara.com address, set when you connect. It is built from Samsara's documentation as read on 23 October 2026. 410 actions in 73 areas, each one in the signed service file (version 1.0.0).
Does actionlake keep my Samsara data, and where?
actionlake processes and stores data in Sydney, Australia; there is no US region yet. Reads may be cached for up to 1 minute, and a write clears the reads it affects. Each run's request and response is kept, sealed, for your plan's trace window: 1 day on Free, 3 days on Starter, 7 days on Pro, 14 days on Team, 30 days on Business and 30 days on Enterprise. Your Samsara credential is sealed under your tenant's key, never logged and never returned. Your traffic is not used to train models.
Which AI clients can use it?
Claude Code, tested by us end to end, and the Claude app as a custom connector, tested by us with an existing key. Other MCP clients that support remote servers over Streamable HTTP (MCP revisions 2025-06-18 and 2025-11-25) and OAuth dynamic client registration, or a bearer header, should connect the same way; we have not tested them. Or plain REST, under the same action names.
Give your agent Samsara today.
Start free - 100,000 calls/month, no card. No signup. Hard caps on every key. Cached answers are free.