Plur-e
MCP servers

Business Central mobile flows

Do everything Plur-e Mobile does — receipts, put-away, picks, license plates, bins, counts, purchase and transfer orders, sales, time sheets, payments — from Claude through the Plur-e MCP server: skills per section, barcodes from photos, no-login capture page.

Quick answer

The Business Central server exposes the 262 ProcessMethod calls that Plur-e Mobile makes as 16 section tools (bc_wms_receipts, bc_sales, …), each documented by a skill the server serves itself (bc_get_skill, MCP resources and prompts). Codes on labels are decoded from an image with bc_decode_barcodes and typed with bc_resolve_codes; camera scanning, signatures and photos happen on a one-time Plur-e Web page opened with bc_handoff_start. Section tools default to read; writes are enabled per role and posting methods can require approval.

How it maps to Plur-e Mobile

Plur-e Mobile talks to Business Central through one Plure API endpoint (erp/processrequest) and one AL bound action, passing a ProcessMethod name and a Parameters array. The MCP server does exactly the same, with the same identity the app would use: the caller's Admin Center account is mapped to a Plur-e Mobile user by email, and its WMS / Sales module assignments provide the WarehouseEmployee and SalesPerson that Business Central expects. Tenants without mobile users set defaults under AI & MCP → Scopes → ERP identity.

SectionToolMethodsPlur-e Mobile module
Setup and lookupsbc_setup11Login, locations, users
Items and trackingbc_items_tracking18Item card, lots/serials, bin contents
Item journalsbc_item_journals11Positive/negative adjustments, reclassification
Warehouse receiptsbc_wms_receipts26WMS Receive
Put-awaybc_wms_put_away9WMS Put-away
Picks and shipmentsbc_wms_picks_shipments27WMS Pick, Ship
License platesbc_wms_license_plates30WMS License plates
Bins and movementsbc_wms_bins_movements13WMS Move, bin lookup
Inventory countsbc_wms_inventory_counts22WMS Physical inventory
Purchase ordersbc_purchase_orders8WMS Basic receive
Transfer ordersbc_transfer_orders13WMS Basic transfers
Sales order shipmentbc_sales_order_shipment14WMS Basic ship
Item classificationbc_item_classification10Classification with evidence
Time sheetsbc_time_sheets22Time sheets
Salesbc_sales19Sales (customers, orders, attachments)
Paymentsbc_payments9Payments (Business Central side)

Every section tool takes the same arguments:

{
  "name": "bc_wms_receipts",
  "arguments": {
    "method": "GetWarehouseReceipt",
    "parameters": { "WsheDocumentNo": "WHSE REC-000123" }
  }
}

parameters is an object (sent as a one-element array, as the app does) or an array when the skill says the array is the payload (count lines, pick lines, journal lines). The tool validates that the method belongs to the section, injects the identity keys when the method needs them, and returns Business Central's answer as JSON. Base64 PDFs and Excel files come back as an embedded resource; lists longer than 500 rows are truncated with truncated and totalCount.

Skills

The plugin ships nothing: every skill lives on the server and is gated by the tenant's licence and role scopes.

SkillRead it when
indexFirst contact — lists everything below
guides/connect-and-identityThe server answers erp_user_not_mapped or you need to know who Business Central will see
guides/process-requestYou want the request/response contract and the error shapes
guides/paging-and-limitsPaged lists (Limit/Offset), the 500-row cap, binary results
guides/writes-and-approvalsBefore any write; explains scope_denied, approvals and posting warnings
guides/scanning-and-codesAnything that starts from a label: GS1, bins, license plates, serials, documents
guides/handoffCamera, signature, photo or file capture on the user's phone
guides/printingLP labels, item barcodes and box labels through the Plur-e print queue
sections/<slug> (16)Every method of a section: parameters, response shape, effect, quirks (misspelled keys included)
flows/receive-purchase-order, pick-and-ship, physical-inventory, count-bins-from-photo, license-plate-lifecycle, sales-order-mobile, item-classification, time-sheet-weekEnd-to-end procedures across sections

Three ways to read them: the bc_get_skill tool ({ "name": "sections/wms-receipts" }), the MCP resource plure-bc://skills/sections/wms-receipts, or the prompt skill_bc_wms_receipts. bc_list_methods lists the methods of a section or searches the catalogue by text.

Editing skills in the Admin Center

AI & MCP → Skills lists every built-in document of both servers (Business Central and CRM). A tenant administrator can customize one (the built-in text is kept as revision 0 and every save adds a revision, so a reset is always possible), restrict it to web roles, disable it, export it as Markdown, import a .md file, or add custom skills of the tenant (flows/…, sections/… or a guide at the root). The MCP server serves the effective document — tenant copy, then a Plur-e global override, then the build — through bc_get_skill, the resources and the prompts, within about 15 seconds of a change.

Scanning: codes from an image

Labels on a shelf, a pallet or a delivery note can be read from a photo instead of one scan at a time.

  • bc_decode_barcodes({ image: { base64 | url | handoffId }, hints? }) finds every barcode in the picture (EAN/UPC, Code 128, GS1-128, QR, Data Matrix, PDF417…), keeps their position and returns them in shelf order (top-to-bottom, left-to-right) with the GS1 application identifiers already split (01 GTIN, 10 lot, 21 serial, 00 SSCC, 17 expiry). URLs are limited to the tenant's allow-list (SharePoint, Azure Blob, plur-e.com by default) and images to 4 MB.
  • bc_resolve_codes({ codes, locationCode? }) turns each string into a typed reference — bin, item, serial, licensePlate, document (receipt, pick, put-away, transfer, sales or purchase order by prefix) or unknown — by asking Business Central the same way the app does (GetBinByLocation, IsItemOrSerial, GetItemIdentifier, GetLicencesPlate).

A typical count: photo of the shelf → bc_decode_barcodesbc_resolve_codes → the bin and the items are known → bc_wms_inventory_counts writes the lines. The flows/count-bins-from-photo skill walks through it.

Handoff: camera, signature, photo, file without login

When the user is at the shelf or with the customer, the server opens a one-time page of Plur-e Web (https://app.plur-e.com/h/<token>): valid 15 minutes, single use, no login, bound to the caller's tenant and user. Nothing from Business Central is shown on it.

kindThe user doesThe result Claude gets
scanScans labels continuously with the phone camera (or uploads a photo, or types)codes[]bc_resolve_codes
photoTakes picturesassets[]bc_decode_barcodes({ handoffId }) or attach to a document
signatureSigns on the screensignature.png + signedByUploadICEvidence, AttachDocuments*
filePicks a file (PDF or image, 5 MB)assets[]

Clients that support URL elicitation (Claude Desktop, Claude Code) open the page and the tool waits for Done; other clients receive the link and call bc_handoff_result(handoffId) later. Assets are stored in the tenant's database for 24 hours and only the MCP server can read them: in any FileInfo array, { "HandoffId": "…", "AssetId": "…" } replaces the base64 and the server fills it in.

Payments

Customer payments are registered in Business Central with bc_payments (PaymentOrder, GetCustomerPayments, …). Card payments through Stripe are not offered: no Plur-e tenant processes them through Plur-e, so the payment handoff kind is reserved and not served.

Scopes, approvals and audit

  • Section tools are declared write but default to read for every role: a role with the default scope can call read methods only and receives scope_denied on writes.
  • Granting write to a role enables the write methods of that section; the tenant's Approvals setting decides whether writes are executed immediately, after an elicitation in the client, or after approval in the Admin Center. Methods marked posting in the skills (post receipt, register pick, post count, post journal, ship order) cannot be undone in Business Central.
  • Every call is audited with the method and a summary of the parameters (base64 payloads are stripped) under AI & MCP → Audit log.
  • Errors carry a machine-readable code: invalid_method (with a suggestion), invalid_arguments, erp_user_not_mapped, bc_error (Business Central's message), handoff_pending, handoff_expired.

Printing labels

bc_list_printers returns the tenant's printers (Plur-e print queue) and the templates with the fields each one needs; bc_print_document(printer, template, documentNo, fields) queues the label — LP labels (ZPL LPS), item barcodes (BarCode) and box / address labels — exactly as Plur-e Mobile does, and the Plur-e Print agent on the workstation prints it. It is a write tool (scope None until granted). Packing lists, receipts and vouchers are PDF renderings that only Plur-e Web and Mobile produce; the tool refuses those templates.

Not covered

Offline vouchers, package shipments through carriers and the Stripe payment screen of Plur-e Mobile do not touch Business Central and are not exposed.

To be validated

The server's tools/list and the index skill are the authoritative catalogue; counts above come from the generated _catalog.json of the server build.

Related: Business Central tools · Connect Claude · Security model

Was this page helpful?

On this page