Skip to content

Connectors · Commerce

Linnworks MCP server for AI agents.

actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to Linnworks and the rest of your systems. It gives your agent 629 Linnworks actions (298 reads, 249 writes and 82 that wait for a confirmation) and holds the Linnworks credential itself, so the agent never does. It paces Linnworks'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/mcp
the first call
do {  action: "linnworks.inventory.get_stock_locations",  intent: "check which Linnworks account is connected"}# Get Stock Locations · read · 1 upstream call
  • 629actionsin one signed file
  • 298readlook, never change
  • 249writecreate and update
  • 82wait for a yesdestructive, confirmed first

Set up

Connect Linnworks in three steps.

  1. 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
  2. 02

    Connect Linnworks.

    Session login. actionlake opens the session and renews it when it expires. actionlake stores what you paste write-only, sealed under your tenant's key.

    • application_idApplication ID of your Linnworks developer app (developer.linnworks.com > My Apps > the app > Edit)
    • application_secretApplication Secret of the same Linnworks app
    • tokenInstallation token: the token issued when the app is installed on the Linnworks account (shown on install, or under…

    Found for you at connect: base url.

    account { op: "connections.requirements", service: "linnworks" }
    # free: exactly what to paste, and what is found for you
  3. 03

    Make the first call. Check before a write.

    Ask in plain words; Claude picks the action. Before anything changes, check validates the call and prices it, for free.

    do    { action: "linnworks.inventory.get_stock_locations" }# get stock locations · read · 1 upstream callcheck { action: "linnworks.inventory.add_inventory_item", input: { … } }# free: inputs, permissions, cost and confirmations, nothing sent

Linnworks at a glance

Sign-in
Session login. actionlake opens the session and renews it when it expires.
You provide
application_idapplication_secrettoken
Found for you
base url
Limits we pace to
150 calls a minute, per connection
API covered
Linnworks API 1.0 (Swagger 2.0, LinnSystems/PublicApiSpecs), at your Linnworks instance's API base URL, which you enter when connecting
Built from
Linnworks's documentation, read 23 October 2026GitHubapidocs.linnworks.net
Service file
Version 1.0.0, signed (Ed25519)
Cached reads
298 of 298 reads, for up to 5 minutes; a write clears what it affects
Shared entities
4, so ask can line Linnworks up with your other systems
Data
Processed and stored in Sydney, Australia. No US region yet

Capabilities

What an AI agent can do in Linnworks.

629 actions in 25 areas. Every one carries its effect, so a key can allow the reads and hold the rest.

  • 298readlook, never change
  • 249writecreate and update
  • 82destructivewait for a confirmation
  1. Inventory

    141

    60 read · 58 write · 23 destructive

    Get Stock Locations · Add Inventory Item · Get Suppliers · Get Inventory Item By Id

  2. Orders

    102

    47 read · 48 write · 7 destructive

    Get Order By Id · Cancel Order · Add Coupon · Add Extended Properties

  3. Stock

    51

    30 read · 16 write · 5 destructive

    Get Stock Items · Add Rolling Stock Take · Add Variation Items · Book In Stock Batch

  4. Warehouse transfer

    49

    23 read · 21 write · 5 destructive

    Add Item To Transfer · Add Items To Transfer · Add Transfer Bin Note · Add Transfer Item Note

  5. Purchase order

    40

    15 read · 20 write · 5 destructive

    Add Additional Cost Types · Add Purchase Order Extended Property · Add Purchase Order Item · Add Purchase Order Note

  6. Processed orders

    36

    22 read · 9 write · 5 destructive

    Search Processed Orders · Add Order Note · Add Return Category · Create Exchange

  7. Rules engine

    35

    17 read · 15 write · 3 destructive

    Add Action · Copy Action · Copy Condition · Create Draft From Existing

  8. Returns refunds

    32

    15 read · 8 write · 9 destructive

    Create Refund · Create Returns Refunds CSV · Create RMABooking · Get Booked Returns Exchange Orders

17 more areas · 143 actions
  • Listings 22
  • Open orders 18
  • Picking 15
  • Generic listings 12
  • Import export 11
  • WMS 11
  • Print service 9
  • Dashboards 7
  • Settings 7
  • Locations 6
  • Shipping service 6
  • Postal services 5
  • Shipstation 5
  • Email 4
  • Macro 2
  • Post sale 2
  • Print zone 1

Top actions

The Linnworks API, shaped for agents.

The ids your agent types, what each does, and the one name it shares with other systems. 9 of Linnworks's 9 action names are shared with at least one other connector, so an agent learns them once.

ActionWhat it doesEffectSame name in
linnworks.inventory.get_stock_locationsGet Stock LocationsUse this call to get all stock locationsreadcommerce.warehouse.list32 connectors
linnworks.inventory.add_inventory_itemAdd Inventory ItemUse this call to add stock item. Use null for MinimumLevel to use Default Minimum Level from Settingswritecommerce.product.create92 connectors
linnworks.inventory.get_suppliersGet SuppliersUse this call to retrieve list of all Suppliers' namesreadasset.supplier.list41 connectors
linnworks.inventory.get_inventory_item_by_idGet Inventory Item By IdUse this call to get all product detailsreadcommerce.product.get112 connectors
linnworks.orders.get_order_by_idGet Order By IdRetrieves the order detail for a unique system order id identifier (pkOrderId) For working with open orders recommended to use OpenOrders/GetOpenOrdersDetailsreadcommerce.order.get87 connectors
linnworks.inventory.delete_inventory_itemsDelete Inventory ItemsUse this call to delete inventory item. All associated information will be unlinked/removed from this stock item.destructivecommerce.product.delete80 connectors
linnworks.processed_orders.search_processed_ordersSearch Processed OrdersSearch Processed Ordersreadcommerce.order.search13 connectors
linnworks.stock.get_stock_itemsGet Stock ItemsUse this call to retrieve report about "Found stock items"readthis connector
linnworks.open_orders.get_open_ordersGet Open OrdersGet Open Ordersreadthis connector
linnworks.orders.add_couponAdd CouponAdd a coupon to a specific orderwritethis connector
linnworks.orders.get_ordersGet OrdersGet list of open ordersreadthis connector
linnworks.inventory.add_supplierAdd SupplierUse this call to create a new supplierwritethis connector

Try it

Prompts to paste into Claude.

Each one names the Linnworks actions it will call, so you know what it reads and what it changes before you send it.

  1. Readread

    Which Linnworks orders from the last seven days are still unfulfilled?

    callslinnworks.open_orders.get_open_orders

  2. Writewrite

    Add Inventory Item in Linnworks. Show me exactly what you will send before you save it.

    callslinnworks.inventory.add_inventory_item

Governance for Linnworks

Destructive actions wait for a yes.

82 Linnworks actions are destructive. The first 10:

  • Delete Inventory Itemslinnworks.inventory.delete_inventory_items
  • Cancel Orderlinnworks.orders.cancel_order
  • Create Refundlinnworks.returns_refunds.create_refund
  • Create RMABookinglinnworks.returns_refunds.create_rma_booking
  • Refund Orderlinnworks.returns_refunds.refund_order
  • Action Refundlinnworks.returns_refunds.action_refund
  • Refund Serviceslinnworks.processed_orders.refund_services
  • Refund Shippinglinnworks.processed_orders.refund_shipping
  • Refund Free Textlinnworks.processed_orders.refund_free_text
  • Delete Movelinnworks.stock.delete_move

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.

dolinnworks.inventory.delete_inventory_itemsconfirm_policy: human

Delete Inventory Items?

intent: the user asked me to delete Inventory Items

run suspended · waiting for a named person · key linnworks-agent cannot confirm itself
In the console, or from an emailed signed link.
a key for this connector
account {  op: "keys.create", name: "linnworks-agent",  allowed_actions: ["linnworks.*"], cap_calls: 2000,  confirm_policy: "human_for_writes",  approval_rules: [    { match: "linnworks.inventory.delete_inventory_items", approver: "[email protected]" },    { match: "linnworks.orders.cancel_order", approver: "[email protected]" },    { match: "linnworks.returns_refunds.create_refund", approver: "[email protected]" }  ]}
Illustrative. Scoped to Linnworks only, capped at 2,000 upstream calls, every write confirmed, and the destructive ones approved by a named person.

Cost

What Linnworks costs on actionlake.

Every Linnworks action is one upstream call, the only thing actionlake bills. Searching, check, cost, account and any call Linnworks 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 629 Linnworks actions
  • 629actions pageeach page of a long list is one call
  • 298reads can be cacheda cache hit costs nothing
  • 100,000calls a month, freepaid plans from US$49 a month for 250,000

See pricing

Action index

Every Linnworks action.

629 actions by area: the id your agent calls, what it does, and its effect.

Inventory141
  • linnworks.inventory.add_inventory_itemAdd Inventory Itemwrite
  • linnworks.inventory.get_inventory_item_by_idGet Inventory Item By Idread
  • linnworks.inventory.get_stock_locationsGet Stock Locationsread
  • linnworks.inventory.get_suppliersGet Suppliersread
  • linnworks.inventory.add_image_to_inventory_itemAdd Image To Inventory Itemwrite
  • linnworks.inventory.add_inventory_item_bulkAdd Inventory Item Bulkwrite
  • and 135 more in this area
Orders102
  • linnworks.orders.add_couponAdd Couponwrite
  • linnworks.orders.add_extended_propertiesAdd Extended Propertieswrite
  • linnworks.orders.cancel_orderCancel Orderdestructive
  • linnworks.orders.get_order_by_idGet Order By Idread
  • linnworks.orders.add_order_itemAdd Order Itemwrite
  • linnworks.orders.add_order_serviceAdd Order Servicewrite
  • and 96 more in this area
Stock51
  • linnworks.stock.add_rolling_stock_takeAdd Rolling Stock Takewrite
  • linnworks.stock.add_variation_itemsAdd Variation Itemswrite
  • linnworks.stock.book_in_stock_batchBook In Stock Batchwrite
  • linnworks.stock.get_stock_itemsGet Stock Itemsread
  • linnworks.stock.batch_stock_level_deltaBatch Stock Level Deltawrite
  • linnworks.stock.book_in_stock_itemBook In Stock Itemwrite
  • and 45 more in this area
Warehouse transfer49
  • linnworks.warehouse_transfer.add_item_to_transferAdd Item To Transferwrite
  • linnworks.warehouse_transfer.add_items_to_transferAdd Items To Transferwrite
  • linnworks.warehouse_transfer.add_transfer_bin_noteAdd Transfer Bin Notewrite
  • linnworks.warehouse_transfer.add_transfer_item_noteAdd Transfer Item Notewrite
  • linnworks.warehouse_transfer.add_transfer_noteAdd Transfer Notewrite
  • linnworks.warehouse_transfer.add_transfer_propertyAdd Transfer Propertywrite
  • and 43 more in this area
Purchase order40
  • linnworks.purchase_order.add_additional_cost_typesAdd Additional Cost Typeswrite
  • linnworks.purchase_order.add_purchase_order_extended_propertyAdd Purchase Order Extended Propertywrite
  • linnworks.purchase_order.add_purchase_order_itemAdd Purchase Order Itemwrite
  • linnworks.purchase_order.add_purchase_order_noteAdd Purchase Order Notewrite
  • linnworks.purchase_order.change_purchase_order_statusChange Purchase Order Statuswrite
  • linnworks.purchase_order.create_pos_from_inventoryCreate POs From Inventorywrite
  • and 34 more in this area
Processed orders36
  • linnworks.processed_orders.add_order_noteAdd Order Notewrite
  • linnworks.processed_orders.add_return_categoryAdd Return Categorywrite
  • linnworks.processed_orders.create_exchangeCreate Exchangewrite
  • linnworks.processed_orders.search_processed_ordersSearch Processed Ordersread
  • linnworks.processed_orders.change_order_noteChange Order Notewrite
  • linnworks.processed_orders.check_order_fully_returnedCheck Order Fully Returnedread
  • and 30 more in this area
Rules engine35
  • linnworks.rules_engine.add_actionAdd Actionwrite
  • linnworks.rules_engine.copy_actionCopy Actionwrite
  • linnworks.rules_engine.copy_conditionCopy Conditionwrite
  • linnworks.rules_engine.create_draft_from_existingCreate Draft From Existingwrite
  • linnworks.rules_engine.check_condition_name_existsCheck Condition Name Existsread
  • linnworks.rules_engine.create_new_conditionCreate New Conditionwrite
  • and 29 more in this area
Returns refunds32
  • linnworks.returns_refunds.create_refundCreate Refunddestructive
  • linnworks.returns_refunds.create_returns_refunds_csvCreate Returns Refunds CSVwrite
  • linnworks.returns_refunds.create_rma_bookingCreate RMABookingdestructive
  • linnworks.returns_refunds.get_booked_returns_exchange_ordersGet Booked Returns Exchange Ordersread
  • linnworks.returns_refunds.acknowledge_refund_errorsAcknowledge Refund Errorswrite
  • linnworks.returns_refunds.acknowledge_rma_errorsAcknowledge RMAErrorswrite
  • and 26 more in this area
Listings22
  • linnworks.listings.create_bigcommerce_configuratorsCreate Bigcommerce Configuratorswrite
  • linnworks.listings.create_bigcommerce_templatesCreate Bigcommerce Templateswrite
  • linnworks.listings.create_ebay_configuratorsCreate eBay Configuratorswrite
  • linnworks.listings.create_ebay_templatesCreate eBay Templateswrite
  • linnworks.listings.cancel_listing_bulk_operationCancel Listing Bulk Operationdestructive
  • linnworks.listings.create_templates_from_view_in_bulkCreate Templates From View In Bulkwrite
  • and 16 more in this area
Open orders18
  • linnworks.open_orders.filter_not_processed_open_ordersFilter Not Processed Open Ordersread
  • linnworks.open_orders.get_identifiersGet Identifiersread
  • linnworks.open_orders.get_identifiers_by_order_idsGet Identifiers By Order Idsread
  • linnworks.open_orders.get_open_ordersGet Open Ordersread
  • linnworks.open_orders.assign_order_identifierAssign Order Identifierwrite
  • linnworks.open_orders.assign_stock_to_ordersAssign Stock To Orderswrite
  • and 12 more in this area
Picking15
  • linnworks.picking.check_allocatable_to_pickwaveCheck Allocatable To Pickwaveread
  • linnworks.picking.generate_picking_waveGenerate Picking Wavewrite
  • linnworks.picking.get_all_picking_wave_headersGet All Picking Wave Headersread
  • linnworks.picking.get_pickingwave_despatch_data_by_locationGet Pickingwave Despatch Data By Locationread
  • linnworks.picking.delete_orders_from_picking_wavesDelete Orders From Picking Wavesdestructive
  • linnworks.picking.get_all_picking_wavesGet All Picking Wavesread
  • and 9 more in this area
Generic listings12
  • linnworks.generic_listings.create_configuratorCreate Configuratorwrite
  • linnworks.generic_listings.create_templatesCreate Templateswrite
  • linnworks.generic_listings.get_configurator_dataGet Configurator Dataread
  • linnworks.generic_listings.get_configurator_descriptionGet Configurator Descriptionread
  • linnworks.generic_listings.delete_configuratorsDelete Configuratorsdestructive
  • linnworks.generic_listings.get_configurators_info_pagedGet Configurators Info Pagedread
  • and 6 more in this area
Import export11
  • linnworks.import_export.enable_exportEnable Exportwrite
  • linnworks.import_export.enable_importEnable Importwrite
  • linnworks.import_export.run_now_exportRun Now Exportwrite
  • linnworks.import_export.run_now_importRun Now Importwrite
  • linnworks.import_export.delete_exportDelete Exportdestructive
  • linnworks.import_export.delete_importDelete Importdestructive
  • and 5 more in this area
WMS11
  • linnworks.wms.add_warehouse_zoneAdd Warehouse Zonewrite
  • linnworks.wms.add_warehouse_zone_typeAdd Warehouse Zone Typewrite
  • linnworks.wms.get_binrack_zones_by_binrack_id_or_nameGet Binrack Zones By Binrack Id Or Nameread
  • linnworks.wms.get_binrack_zones_by_zone_id_or_nameGet Binrack Zones By Zone Id Or Nameread
  • linnworks.wms.delete_warehouse_zoneDelete Warehouse Zonedestructive
  • linnworks.wms.delete_warehouse_zone_typeDelete Warehouse Zone Typedestructive
  • and 5 more in this area
Print service9
  • linnworks.print_service.create_pdf_from_job_force_templateCreate PDFfrom Job Force Templatewrite
  • linnworks.print_service.create_pdf_from_job_force_template_stock_inCreate PDFfrom Job Force Template Stock Inwrite
  • linnworks.print_service.create_pdf_from_job_force_template_with_quantitiesCreate PDFfrom Job Force Template With Quantitieswrite
  • linnworks.print_service.create_return_shipping_labels_pdfCreate Return Shipping Labels PDFwrite
  • linnworks.print_service.create_return_shipping_labels_pdf_with_skusCreate Return Shipping Labels PDFWith SKUswrite
  • linnworks.print_service.get_template_listGet Template Listread
  • and 3 more in this area
Dashboards7
  • linnworks.dashboards.get_inventory_location_categories_dataGet Inventory Location Categories Dataread
  • linnworks.dashboards.get_inventory_location_dataGet Inventory Location Dataread
  • linnworks.dashboards.get_low_stock_levelGet Low Stock Levelread
  • linnworks.dashboards.get_performance_table_dataGet Performance Table Dataread
  • linnworks.dashboards.get_inventory_location_products_dataGet Inventory Location Products Dataread
  • linnworks.dashboards.get_performance_detailGet Performance Detailread
  • and 1 more in this area
Settings7
  • linnworks.settings.get_available_time_zonesGet Available Time Zonesread
  • linnworks.settings.get_currency_conversion_ratesGet Currency Conversion Ratesread
  • linnworks.settings.get_latest_currency_rateGet Latest Currency Rateread
  • linnworks.settings.insert_currency_conversion_ratesInsert Currency Conversion Rateswrite
  • linnworks.settings.delete_currency_conversion_ratesDelete Currency Conversion Ratesdestructive
  • linnworks.settings.get_measuresGet Measuresread
  • and 1 more in this area
Locations6
  • linnworks.locations.add_locationAdd Locationwrite
  • linnworks.locations.get_locationGet Locationread
  • linnworks.locations.get_warehouse_totesGet Warehouse TOTEsread
  • linnworks.locations.update_locationUpdate Locationwrite
  • linnworks.locations.delete_locationDelete Locationdestructive
  • linnworks.locations.delete_warehouse_toteDelete Warehouse TOTEdestructive
Shipping service6
  • linnworks.shipping_service.get_consignments_by_manifestGet Consignments By Manifestread
  • linnworks.shipping_service.get_filed_manifests_by_vendorGet Filed Manifests By Vendorread
  • linnworks.shipping_service.get_integrationsGet Integrationsread
  • linnworks.shipping_service.post_shipment_uploadPost Shipment Uploadwrite
  • linnworks.shipping_service.cancel_order_shipping_labelCancel Order Shipping Labeldestructive
  • linnworks.shipping_service.get_shipping_quoteGet Shipping Quoteread
Postal services5
  • linnworks.postal_services.create_postal_serviceCreate Postal Servicewrite
  • linnworks.postal_services.get_channel_linksGet Channel Linksread
  • linnworks.postal_services.get_postal_servicesGet Postal Servicesread
  • linnworks.postal_services.update_postal_serviceUpdate Postal Servicewrite
  • linnworks.postal_services.delete_postal_serviceDelete Postal Servicedestructive
Shipstation5
  • linnworks.shipstation.create_shipstation_integrationCreate Ship Station Integrationwrite
  • linnworks.shipstation.edit_shipstation_integrationEdit Ship Station Integrationwrite
  • linnworks.shipstation.get_shipstation_integrationGet Ship Station Integrationread
  • linnworks.shipstation.get_shipstation_integrationsGet Ship Station Integrationsread
  • linnworks.shipstation.delete_shipstation_integrationDelete Ship Station Integrationdestructive
Email4
  • linnworks.email.generate_adhoc_emailGenerate Adhoc Emailwrite
  • linnworks.email.generate_free_text_emailGenerate Free Text Emailwrite
  • linnworks.email.get_email_templateGet Email Templateread
  • linnworks.email.get_email_templatesGet Email Templatesread
Macro2
  • linnworks.macro.get_installed_macrosGet Installed Macrosread
  • linnworks.macro.get_macro_configurationsGet Macro Configurationsread
Post sale2
  • linnworks.post_sale.create_cancellationCreate Cancellationwrite
  • linnworks.post_sale.get_cancellation_optionsGet Cancellation Optionsread
Print zone1
  • linnworks.print_zone.get_all_print_zonesGet All Print Zonesread

This index shows a sample of each area. All 629 actions, with their inputs and prices, are in the catalogue, which a free sandbox key can search.

Questions

The Linnworks MCP server, answered.

Is there a Linnworks MCP server for Claude?

Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 629 Linnworks actions across inventory, orders, stock and warehouse transfer, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by Linnworks.

What do I need to connect Linnworks?

Application ID of your Linnworks developer app (developer.linnworks.com > My Apps > the app > Edit), Application Secret of the same Linnworks app and Installation token: the token issued when the app is installed on the Linnworks account (shown on install, or under…. actionlake finds base url for you when you connect. The free call account { op: "connections.requirements", service: "linnworks" } lists exactly what to paste.

Can an AI agent delete or change things in Linnworks?

Only if its key allows it, and only with an explicit confirmation. 82 Linnworks actions are destructive, including delete Inventory Items, cancel Order and create Refund. 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 Linnworks API limit?

actionlake paces every call to the limits in the Linnworks service file: 150 calls a minute per connection. Repeated reads are answered from cache (298 Linnworks actions can be), which never reaches Linnworks.

What does a Linnworks action cost?

One upstream call, the only unit actionlake bills. A list that pages bills one call per page (629 Linnworks actions page). Cache hits, searches, dry runs and calls Linnworks 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 Linnworks API does it cover?

The Linnworks API 1.0 (Swagger 2.0, LinnSystems/PublicApiSpecs) at your Linnworks instance's API base URL, which you enter when connecting. It is built from Linnworks's documentation as read on 23 October 2026. 629 actions in 25 areas, each one in the signed service file (version 1.0.0).

Does actionlake keep my Linnworks data, and where?

actionlake processes and stores data in Sydney, Australia; there is no US region yet. Reads may be cached for up to 5 minutes, 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 Linnworks 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 Linnworks today.

Start free - 100,000 calls/month, no card. No signup. Hard caps on every key. Cached answers are free.