So having written an MCP server now and spending a lot of time working through this exact problem space, I actually think Epicor is moving in the right direction here.
Giving an agent or an LLM completely unrestricted access to the entire Epicor API surface sounds great in theory, but in practice it turns into the model shotgun blasting random endpoints and BO methods based on probabilistic guesses. That gets dangerous fast, especially in ERP systems where context matters and where two endpoints that look similar can have completely different accounting or transactional implications.
The approach Epicor is taking now, and the same one we took with our own MCP implementation, is to expose curated tools/endpoints instead. Things like controlled BAQs, Functions, and selected BO operations that are intentionally designed for AI consumption. That lets you tightly control:
-
what data the model can see
-
how the data is shaped
-
what actions are allowed
-
and what business context accompanies the request
I know it feels counterintuitive because as developers we look at it and think, “I can already build BAQs myself, why do I need Prism for that?” But the value is less about the BAQ itself and more about creating reliable semantic tooling for the AI layer so that it can answers questions in an accurate and methodic way without infering too much or hallucinating.
One thing that’s important to understand is that these models operate within a limited context window and they do not natively understand Epicor’s full end-to-end accounting, manufacturing, fulfillment, and transactional ecosystem. Throwing 2,000+ loosely documented endpoints at an LLM and expecting it to infer the correct workflow consistently is honestly a recipe for hallucinations and bad data interpretation. This is what Epicor tried to do at first and it was abysmal in performance it gave it access to every BAQ in the system and the system just randomly picked one that looked ‘related’ to the topic at hand without understanding IF the content suited the question.
What works far better is having specialized tools and agents that each understand one or two things extremely well. A tightly scoped endpoint with good business context produces dramatically more reliable answers than unrestricted API access ever will.
The systems that work best are the ones built on curated, intentional data contracts rather than unrestricted raw API access.
Glad you enjoyed the session on the EpiUsers panel, it was super fun, and some of the tooling being built is really fun.
