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 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| 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
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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