Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
OPENDOCK_TOKENNoA pre-existing JWT token for authentication.
OPENDOCK_API_URLNoThe base URL for the Opendock Neutron API. Defaults to production.https://neutron.opendock.com
OPENDOCK_PASSWORDNoYour Opendock password.
OPENDOCK_USERNAMENoYour Opendock username (email).

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}
prompts
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_versionA

Get the opendock-mcp server version

get_profileA

Get the current authenticated user's profile

list_warehousesB

List warehouses with optional filters and pagination

get_warehouseB

Get details for a specific warehouse

get_warehouse_hoursB

Get hours of operation for a warehouse's docks

create_warehouseB

Create a new warehouse (billable event — implies additional subscription costs)

update_warehouseC

Update a warehouse

delete_warehouseB

Delete a warehouse

list_docksB

List docks with optional filters

get_dockC

Get details for a specific dock

create_dockC

Create a new dock

update_dockC

Update a dock

delete_dockC

Delete a dock

sort_docksB

Save dock sort order

get_dock_availabilityC

Get availability for a specific dock

list_load_typesB

List load types with optional filters

get_load_typeC

Get details for a specific load type

get_load_type_availabilityB

Get available appointment slots for a load type

create_load_typeC

Create a new load type

update_load_typeC

Update a load type

delete_load_typeC

Delete a load type

list_appointmentsA

List and search appointments using NestJSX/Crud query syntax. Supports advanced filtering, field selection, joins, and sorting.

SEARCH (s=): JSON search with operators. When s= is provided, startDate/endDate/status/warehouseId/dockId convenience filters are ignored. Operators: $eq, $ne, $gt, $lt, $gte, $lte, $cont, $contL (case-insensitive contains), $starts, $ends, $in, $notin, $between, $isnull, $notnull Combinators: $and, $or Examples: Scheduled after a date: s='{"$and":[{"status":"Scheduled"},{"start":{"$gt":"2026-03-15T08:00:00.000-07:00"}}]}' Changed since a date: s='{"lastChangedDateTime":{"$gt":"2026-03-15T08:00:00.000Z"}}' Soft-deleted since a date: s='{"$and":[{"lastChangedDateTime":{"$gt":"2026-07-07T00:00:00.000Z"}},{"isActive":false}]}' Has tag "Late": s='{"tags":{"$contL":"Late"}}' Empty tags: s='{"tags":{"$or":{"$isnull":true,"$eq":"{}"}}}'

JOIN: Fetch related data in a single request. Each join is a separate array element. Examples: Get carrier info: join=["user","user.company"] Carrier email + company name only: join=["user||email,companyId","user.company||name"]

FIELDS: Comma-separated list of fields to return. Example: fields="refNumber,start,lastChangedDateTime,status"

SORT: Each sort is "field,direction". Use array for multi-sort. Examples: sort=["start,ASC"] or sort=["start,DESC","status,ASC"]

search_appointmentsA

Free-text search for appointments. Use this when searching by keyword across appointment fields. For structured filtering/querying, use list_appointments instead.

get_appointmentB

Get details for a specific appointment

create_appointmentB

Schedule a new appointment

update_appointmentC

Modify or reschedule an existing appointment

delete_appointmentC

Cancel/delete an appointment

get_public_appointmentA

Get public appointment details (no auth required)

undo_appointment_statusB

Undo the latest status change for an appointment

create_recurring_appointmentsB

Create a recurring appointment series from an existing appointment

delete_recurring_appointmentsA

Delete all recurring appointments in a series (excludes the original)

add_appointment_tagB

Add a tag to an appointment

find_and_book_appointmentA

Find the next available slot for a load type and book it in one step.

Calls the first-available-appointment endpoint to get open slots across all docks and load types, filters to the requested loadTypeId (and optionally a preferred dock), then creates the appointment automatically. Use this instead of manually chaining get_first_available_appointment + create_appointment.

remove_appointment_tagB

Remove a tag from an appointment

list_carriersB

List carriers with optional filters

get_carrierB

Get details for a specific carrier

create_carrierB

Create a new carrier user

update_carrierC

Update a carrier user

get_booked_carriersB

Get carriers that have booked appointments

get_orgA

Get details for an organization

update_orgC

Update an organization

update_favorite_carriersC

Update the list of favorite carriers for an organization

get_audit_logB

Get the audit log for an object (warehouse, dock, appointment, etc.)

list_companiesB

List carrier companies with optional filters and pagination

get_companyA

Get details for a specific carrier company

update_companyC

Update a carrier company

create_companyC

Create a new carrier company

get_settings_metadataB

Get all settings metadata for an entity type

get_setting_metadataA

Get a specific setting metadata entry by entity type and setting key

validate_settings_metadataC

Validate settings for an entity type

get_appointment_volume_by_dateC

Appointment volume by date

get_appointment_volume_by_carrierC

Appointment volume by carrier

get_appointment_volume_by_load_typeB

Appointment volume by load type and week day

get_appointment_volume_by_time_of_dayC

Appointment volume by time of day

get_appointment_volume_by_day_of_weekC

Appointment duration average by dock and day of week

get_appointment_avg_duration_by_load_typeB

Appointment duration average by load type

get_appointment_avg_duration_by_statusC

Appointment duration average by status

get_appointment_avg_duration_by_dock_and_statusC

Appointment duration average by dock and status

get_appointment_count_by_status_for_carrierB

Appointment count by status for current carrier

get_carrier_status_percentagesB

Retrieve carrier insights data with each status percentage

get_appointment_status_timesC

The average time spent in each appointment status

get_first_available_appointmentA

Finds the next available appointment time for each dock and loadtype, starting from the current date and time onward

get_warehouse_insightsD

Retrieve warehouse insights

export_yard_data_excelA

Retrieve file link with the yard data list as XLSX. The link points to an external file.

get_appointment_count_for_carrierC

Appointment count per carrier

get_appointment_count_for_docksC

Appointment count per dock

get_reserve_count_for_userC

Reserve count for user

get_dock_dwell_timeB

Retrieve dock metrics of dwell time by day of week

list_appointment_metricsC

Retrieve an appointment list that matches the criteria described in the request body

export_appointment_metrics_excelC

Retrieve file link with the appointment list as XLSX. The link points to an external file.

get_warehouse_capacity_usageB

Retrieve warehouse dock capacity usage information per warehouse

Prompts

Interactive templates invoked by user choice

NameDescription
book-appointmentGuide for booking a new appointment at a warehouse. Walks through selecting a dock, load type, and available time slot.
daily-scheduleFetch and summarize all appointments at a warehouse for a specific day.
reschedule-appointmentGuide for rescheduling an existing appointment to a new time slot.
carrier-performanceAnalyze carrier performance metrics including appointment volumes, on-time rates, and status breakdowns.

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Pollamin/opendock-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server