machship-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PORT | No | HTTP port when TRANSPORT=http | 3000 |
| TRANSPORT | No | Transport type: stdio or http | stdio |
| MACHSHIP_API_URL | No | API base URL | https://live.machship.com |
| MACHSHIP_API_TOKEN | Yes | Machship Bearer token |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| machship_pingA | Determines the current user's login status and retrieves session properties from Machship. Use this to verify authentication is working and to get the current user/company context. Returns: session info including user details, company ID, and permissions. |
| machship_get_attachmentB | Downloads raw attachment file bytes from Machship by attachment ID. Returns base64-encoded file content. Args:
|
| machship_get_attachment_pod_reportA | Downloads a Proof of Delivery (POD) report that includes attachment and consignment details. Args:
|
| machship_get_attachments_by_consignment_idsA | Downloads attachments for up to 40 consignments in bulk (returned as zip). Args:
|
| machship_upload_attachmentsC | Uploads one or more attachments to Machship. Args:
|
| machship_get_carrier_invoicesB | Returns basic carrier invoice information (max 100 records per call). Args:
|
| machship_get_carrier_invoice_entriesA | Gets carrier invoice line entries with optional status filtering. Args:
|
| machship_update_reprice_consignmentA | Updates consignment items on a carrier invoice entry and triggers repricing. Use for reconciling carrier invoice discrepancies. Args:
|
| machship_attempt_auto_reconciliationC | Attempts automatic reconciliation of carrier invoices based on configured carrier thresholds. Args:
|
| machship_upload_commercial_invoiceA | Uploads one or more commercial invoice files for a consignment (for international shipments). Files are provided as base64-encoded content. Args:
|
| machship_get_companiesA | Returns all companies accessible to the authenticated user. Args:
Returns: Array of company objects, each containing: { "id": number, // Company ID — use this in other tool calls "name": string, // Display name of the company "isActive": boolean, // Whether the company is active "parentCompanyId": number | null } Examples:
Error Handling:
|
| machship_get_company_carriersA | Returns all available carriers, carrier accounts, and freight services for a company. Call this before creating consignments or quotes to discover which services and accounts are available. Args:
Returns: Array of carrier objects with nested accounts and services, each containing: { "carrierId": number, "carrierName": string, "accounts": [ { "accountId": number, "accountName": string, "services": [{ "serviceId": number, "serviceName": string }] } ] } Examples:
|
| machship_get_itemB | Returns a single saved item (product/SKU) with its dimensions by ID. Args:
|
| machship_get_itemsA | Returns a paginated list of saved items for a company (max 200 per request). Args:
|
| machship_get_item_by_skuA | Returns a saved item matching the given SKU for a company. Args:
|
| machship_get_item_complexA | Returns a single complex item (with detailed dimensions/packaging data) by ID. Args:
|
| machship_get_items_complexA | Returns a paginated list of complex items for a company (max 200 per request). Args:
|
| machship_get_item_complex_by_skuB | Returns a complex item (detailed dimensions) by SKU for a company. Args:
|
| machship_create_item_complexA | Creates a new complex item (product/SKU with detailed packaging info) for a company. Args:
|
| machship_delete_itemA | Deletes a saved item from a company. This action is irreversible. Args:
|
| machship_get_items_by_skusA | Returns a list of saved items matching any of the supplied SKUs (standard items only, max 100 SKUs). SKUs that don't match any item are silently omitted — compare returned Sku values against your input to detect misses. Args:
|
| machship_get_company_locationA | Returns details for a single company location (warehouse, store, depot). Args:
|
| machship_get_company_locationsA | Returns all locations (warehouses, stores, depots) for a given company. Args:
|
| machship_create_company_locationB | Creates a new company location (warehouse, store, depot pickup point). Args:
|
| machship_edit_company_locationC | Edits an existing company location. Args:
|
| machship_get_permanent_pickupsB | Gets all permanent scheduled pickups configured for a company location. Args:
|
| machship_add_permanent_pickupsB | Adds permanent scheduled pickups to a company location. Args:
|
| machship_get_consignmentA | Returns full details for a single consignment by ID. Args:
|
| machship_get_consignments_by_idsA | Returns details for multiple consignments by their IDs (max 100 per request). Args:
|
| machship_get_consignments_by_reference1A | Finds consignments by their Reference 1 field (order number, etc). Max 10 per request. Args:
|
| machship_get_consignments_by_reference2A | Finds consignments by their Reference 2 field. Max 10 per request. Args:
|
| machship_get_consignments_by_carrier_idA | Finds consignments by carrier's own consignment/tracking ID. Max 10 per request. Args:
|
| machship_get_consignment_statusesA | Returns tracking/delivery statuses for a batch of consignments, with optional date filter. Args:
|
| machship_update_consignment_statusesB | Manually updates tracking statuses for consignments (e.g. mark as delivered). Args:
|
| machship_get_unmanifested_consignmentsA | Returns consignments that have been created but not yet manifested (booked with carrier). Args:
|
| machship_get_active_consignmentsA | Returns all active (in-transit) consignments for a company. Args:
|
| machship_get_all_consignmentsA | Returns all consignments for a company with date range and status filtering. Args:
|
| machship_get_recent_consignmentsA | Returns consignments created or updated within a UTC date range. Ideal for sync/polling workflows. Args:
|
| machship_get_completed_consignmentsA | Returns completed (delivered) consignments within a date range (max 2000 results). Args:
|
| machship_create_consignmentB | Creates a new unmanifested consignment in Machship. This is the core operation for booking freight. Args:
|
| machship_create_consignment_with_complex_itemsB | Creates a consignment using complex item definitions (with detailed packaging/dangerous goods data). Args:
|
| machship_create_consignment_existing_itemsA | Creates a consignment using previously saved company items (by item ID / SKU). Args:
|
| machship_edit_consignmentA | Edits an existing unmanifested (not yet booked) consignment. Cannot edit manifested consignments. Args:
|
| machship_delete_consignmentsA | Deletes multiple unmanifested consignments. Cannot delete manifested consignments. Args:
|
| machship_search_consignmentsB | Searches consignments by reference numbers (Reference 1, Reference 2, or carrier IDs). Args:
|
| machship_get_consignment_creation_settingsA | Returns settings and defaults needed for creating consignments for a company (required fields, defaults, etc.). Args:
|
| machship_get_consignment_attachmentsA | Returns attachment metadata (not file contents) for a consignment. Args:
|
| machship_update_despatch_datesA | Updates despatch dates and estimated time of arrival (ETA) for a set of consignments. Args:
|
| machship_get_consignment_by_pending_idA | Get consignment details (if it exists) using a pending consignment ID that has been transformed (linked) into a consignment. Args:
|
| machship_get_consignment_for_cloneA | Get the details of an existing consignment in a format that can be passed directly to the createConsignmentWithComplexItems endpoint to create a copy. Args:
|
| machship_get_unmanifested_consignment_for_editA | Get an unmanifested consignment in the same format required to perform an update via the editUnmanifestedConsignment endpoint. Args:
|
| machship_get_consignments_by_pending_idsA | Get consignment details for multiple consignments using Pending Consignment IDs as the lookup. Maximum of 100 consignments per request. Args:
|
| machship_group_consignments_for_consolidationA | Automatically groups consignments into consolidation groups based on options (carrier, route, etc.). Returns groups without actually consolidating — preview step before consolidation. Args:
|
| machship_perform_consolidationB | Consolidates a set of consignments into consolidated shipments. This merges multiple consignments into fewer shipment units for carrier efficiency. Args:
|
| machship_group_and_perform_consolidationA | Groups and consolidates consignments in a single operation (combines grouping + performing). Args:
|
| machship_get_custom_schemasA | Returns all custom schemas defined in the Machship organisation. Custom schemas extend Machship entities with additional fields. |
| machship_get_custom_schemaB | Returns a specific custom schema by its DotNet class ID. Args:
|
| machship_create_custom_schemaA | Creates a new custom schema to extend Machship entities with additional fields. Args:
|
| machship_update_custom_schemaB | Updates an existing custom schema by its DotNet class ID. Args:
|
| machship_delete_custom_schemaA | Deletes a custom schema by its DotNet class ID. This is irreversible. Args:
|
| machship_get_posted_invoicesA | Returns posted financial invoices within an optional date range (max 100 per call). Args:
|
| machship_get_invoice_by_document_numberA | Returns a specific financial invoice by document number, with optional PDF download. Args:
|
| machship_get_identitiesA | Get all identities owned by an organisation, with details on which companies they are linked to. Requires administrator access to the organisation. Args:
|
| machship_get_identityB | Get the identity with the given ID. Args:
|
| machship_get_available_rolesA | Get all roles that are available to assign to users of a certain company. Args:
|
| machship_create_identitiesA | Create identities in MachShip and assign companies and roles. All identities must belong to the same identityProvider and organisation. Requires administrator access. Args:
|
| machship_update_identityA | Updates properties on an identity. All fields except password are required; omitted fields are set to null. Args:
|
| machship_delete_identitiesA | Delete the identities with the given IDs. This action is irreversible. Args:
|
| machship_disable_identitiesA | Disable the identities with the given IDs, preventing them from logging in. Args:
|
| machship_reenable_identitiesA | Re-enable previously disabled identities, restoring login access. Args:
|
| machship_link_identities_to_companiesB | Assign companies and roles to identities to give them access to the system. Requires administrator access. Args:
|
| machship_unlink_identities_from_companiesA | Remove company access from identities. Each entry specifies an identity and the company to revoke access from. Args:
|
| machship_return_identity_public_keysA | Get the public keys of the supplied identities. These keys can be used by a linked organisation to grant those identities access to companies in their organisation. Requires administrator access. Args:
|
| machship_get_identity_providerB | Get a specific identity provider by ID. Args:
|
| machship_get_identity_providers_for_companyC | Get all identity providers associated with a specific company. Args:
|
| machship_get_identity_providers_for_logged_userA | Returns all identity providers for the current user's organisation. No parameters required. |
| machship_get_identity_providers_for_organisationA | Returns all identity providers for the specified organisation. Args:
|
| machship_get_consignment_label_pdfB | Returns the consignment label as a PDF (base64 or file bytes). Args:
|
| machship_get_item_label_pdfA | Returns item/package labels for a consignment as a PDF. Args:
|
| machship_get_item_labels_zipA | Gets item labels as a zip file for up to 40 consignments. Args:
|
| machship_get_manifest_label_pdfA | Returns the manifest document as a PDF by manifest ID. Args:
|
| machship_get_manifest_label_pdf_by_consignmentB | Returns the manifest PDF for the manifest associated with a given consignment. Args:
|
| machship_get_commercial_invoice_pdfA | Returns the commercial invoice PDF for a consignment (used for international shipments). Args:
|
| machship_get_dangerous_goods_pdfA | Returns the dangerous goods declaration document PDF for a consignment. Args:
|
| machship_send_labels_to_printerA | Sends labels directly to a configured printer in Machship. Args:
|
| machship_group_consignments_for_printingA | Groups consignments for batch label printing and returns print groups. Args:
|
| machship_get_consignment_pdf_file_infoA | Returns file metadata (name, size, URL) for the consignment label PDF without downloading it. Args:
|
| machship_get_item_pdf_file_infoA | Returns file metadata for the item/package label PDF without downloading it. Args:
|
| machship_get_manifest_pdf_file_infoA | Returns file metadata for the manifest PDF without downloading it. Args:
|
| machship_get_dangerous_goods_pdf_file_infoA | Returns file metadata for the dangerous goods declaration PDF without downloading it. Args:
|
| machship_get_mo41_document_pdfB | Returns the MO41 document PDF for a consignment (used for specific carrier compliance documents). Args:
|
| machship_get_mo41_document_pdf_file_infoA | Returns file metadata for the MO41 document PDF without downloading it. Args:
|
| machship_get_special_instructions_pdfA | Returns the special instructions document PDF for a consignment. Args:
|
| machship_return_item_pdfs_for_consignmentsA | Returns item labels as a zip for up to 40 consignments (POST variant — use this when passing a body payload is preferred over query string). Args:
|
| machship_search_locationsA | Returns up to 10 Machship locations matching a suburb or postcode search string. Use this to look up valid delivery/pickup locationIds before creating consignments. Args:
Returns: Array of location objects: { "id": number, "suburb": string, "postcode": string, "state": string, "country": string } Examples:
|
| machship_get_locations_exactA | Returns locations that exactly match provided suburb/postcode combinations. Supports multiple location lookups in one call. Args:
|
| machship_get_locations_with_optionsC | Returns locations with additional search options/filters applied. Args:
|
| machship_get_manifestsA | Returns a paginated list of manifests for a company (max 200 per call). A manifest represents a carrier pickup booking for a group of consignments. Args:
Returns: Array of manifest summary objects: { "id": number, "manifestDate": string, "carrierName": string, "status": string, "consignmentCount": number } Examples:
|
| machship_group_all_for_manifestA | Groups ALL unmanifested consignments for a company into manifest groups (preview before manifesting). Args:
|
| machship_group_consignments_for_manifestA | Groups a specific set of consignments into manifest groups (preview before manifesting). Args:
|
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
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/devkindhq/machship-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server