ClaudeAcumatica Agent view

How to use Claude with Acumatica

Short answer

The cleanest way to use Claude with Acumatica is a Model Context Protocol server that wraps a few read-only REST and OData calls, so Claude can look things up live. Hosting choices range from the Anthropic API to AWS Bedrock or Google Vertex AI, and an on-prem open-weight model is the fallback when data cannot leave.

Claude is strong at long-document reasoning and careful tool use, which suits ERP work: reading a contract against a purchase order, explaining why a bill failed matching, or summarising a pile of exceptions with the evidence attached. What it lacks by default is any view of your Acumatica tenant.

MCP is the connection standard that fixes that. An MCP server you run exposes named tools such as get_sales_order or stock_by_warehouse, and a Claude client calls them when needed. The same server also works with other MCP-capable clients, so you are not locked in.

This page is about the Claude-specific decisions: which client, which hosting route for the model, and what changes when Acumatica is on-prem.

What teams use it for

Contract versus PO review

Upload a supplier agreement, let Claude fetch the matching purchase order through a tool, and ask it to list price, lead time and payment term mismatches.

Exception summaries for planners

Claude pulls late supply and short-stock lists and writes a prioritised morning briefing with the reason for each item.

Customer quote assistance

Given an RFQ email, Claude checks item availability, past pricing from sales history and drafts a reply for the salesperson to confirm.

Audit evidence gathering

For an auditor sample request, Claude retrieves the supporting document trail for specified invoices and assembles a cover note.

Customization and report help

Developers use Claude to draft C# graph extensions, Generic Inquiry designs and customization package notes, then review them in a sandbox tenant.

Acumatica integration surface

  • Contract-based REST API (/entity/Default/<version>/<Entity>) with $filter, $select, $expand and $top; endpoint version varies with your Acumatica release.
  • OData-exposed Generic Inquiries (SM208000) for pre-joined read models, which keep tool responses small.
  • OAuth 2.0 Connected Applications (SM303010) for a service identity; cookie login exists but is poorer for long-running servers.
  • Customization projects and graph extensions in C# for any logic the standard endpoints do not expose.
  • Webhooks and Business Events for pushing changes to an MCP server or a workflow engine.

How it works

  1. 1

    Pick the Claude client

    Claude Desktop or the web app with remote connectors for people, Claude Code for developers, or the Anthropic API in your own application. Connector availability depends on your plan.

  2. 2

    Stand up an MCP server

    Use the official MCP SDK in Python or TypeScript. Start with five read tools. Use stdio for a single developer machine and streamable HTTP for a shared server.

  3. 3

    Authenticate to Acumatica

    Use an OAuth client with a dedicated integration role. Refresh tokens in the server, never in the prompt.

  4. 4

    Shape the tool outputs

    Return only the fields needed, with units and currency. Claude reasons better on a 20-line JSON than on a raw 400-field entity.

  5. 5

    Choose where the model runs

    Anthropic API direct, AWS Bedrock or Google Vertex AI if your governance prefers an existing cloud agreement. All support tool use.

  6. 6

    Add audit and rate limits

    Log each tool call with the user and ticket reference, and cap calls per minute to stay inside the Acumatica license limits.

Example flows

Morning planner briefing

Trigger: Planner asks Claude: what should I worry about today?

  1. Claude calls late_supply for open PO lines past promise date.
  2. It calls short_stock for items below safety stock with demand in 10 days.
  3. It cross-references the two by item.
  4. It returns a ranked list with suggested actions.

Result: A briefing built from live data in about a minute, with every claim traceable to a tool result.

Supplier contract check

Trigger: Buyer uploads a renewed supplier PDF

  1. Claude reads the PDF and extracts price and terms.
  2. It calls get_vendor_price_history and get_open_po for that vendor.
  3. It lists differences against the current Acumatica record.
  4. The buyer decides what to update in the vendor price worksheet.

Result: Hidden price changes caught before the next PO is released.

Keeping data on-prem

If your Acumatica is on-prem and policy forbids sending its data to a hosted model, you have two paths. One is to keep the MCP server on-prem and use a cloud route you have already approved, such as a private Bedrock or Vertex deployment in your tenant, accepting that tool results are sent to the model. The other is to replace Claude with an open-weight model served on your own GPUs while keeping the identical MCP server, so the tooling carries over. Netray builds the second path, and quality on complex reasoning is generally lower than frontier hosted models, so scope tasks accordingly.

Security checklist

  • Run the MCP server with a least-privilege Acumatica role and read-only tools first.
  • Do not let tool descriptions or document text change tool behaviour; treat retrieved content as untrusted.
  • Prefer short-lived tokens and store secrets in a vault, not in client config files.
  • Check your plan's data retention and training terms for the Claude surface you use.
  • Add per-user attribution so you can tell who asked for which data.

Ways to get it done

Marketplace or community MCP connector

Effort: Days to evaluate

Worth checking first; I am not aware of an official Acumatica one, so verify maturity and permissions before using it.

Build your own MCP server

Effort: 2 to 3 weeks for a read-only version

Fits teams with a developer comfortable with REST and OAuth.

Partner-built with private model option

Effort: Scoped pilot in a few weeks

Fits regulated manufacturers needing the on-prem path and governance.

Pitfalls

  • !Exposing a generic query tool that lets Claude build any OData filter; it will happily scan large tables.
  • !Assuming the API shape is stable across releases; pin the endpoint version and retest on upgrade.
  • !Returning free-text memo fields containing instructions that the model then follows.
  • !Using a personal Claude account for company data.
  • !Skipping multi-company and branch context, so answers mix legal entities.

Frequently asked questions

Is there an official Claude integration for Acumatica?

I am not aware of a first-party one. Check the Acumatica Marketplace and Anthropic's connector directory. The usual route is a custom MCP server wrapping your REST and OData calls.

Can Claude run on AWS Bedrock with Acumatica?

Yes. Claude models are offered on Bedrock and Vertex AI, and tool use works there. Your application or MCP host calls the model; Acumatica is reached only through your tool layer. Model availability varies by region and over time.

Does Claude need to see all my ERP data?

No. It only sees what your tools return. Design narrow tools and trimmed outputs, and the model never touches the database or tables you do not expose.

Can Claude post transactions in Acumatica?

It can if you build write tools, but start read-only. For writes, create drafts and require a human to approve and release. Acumatica's validations still apply on every call.

What if I cannot use any cloud model?

Use an open-weight model on local GPUs with the same MCP server. You lose some reasoning depth but keep data in your network, which many aerospace and defense suppliers require.

Want Claude working on your Acumatica?

A free 30 minute assessment: we map the integration path for your version and setup, and where it should run.

Get a free assessment