AI PlatformProfessional ServicesRepresentative case study

Turning a Decade of Case Studies Into a Searchable Assistant

How Meridian Systems' consultants went from asking around the office to querying years of institutional knowledge directly.

View project overview →

Customer context

Meridian Systems is an operations consultancy serving manufacturing and logistics clients, with over a decade of case studies, proposals, and methodology documentation accumulated across hundreds of engagements.

The challenge

New consultants — and often experienced ones — regularly re-solved problems Meridian had already worked through for a previous client, simply because there was no effective way to search the firm's own archive. Their existing document management system supported keyword search, but with years of accumulated content, keyword search returned too many marginally relevant results to be useful, and consultants generally gave up and asked a colleague instead.

Requirements

Discovery

Early conversations with Meridian's leadership revealed a permissions complexity that shaped the entire technical approach: not all case studies were accessible to all consultants, due to client confidentiality agreements specific to certain engagements. A knowledge assistant that ignored this — surfacing content a consultant shouldn't see because it happened to be relevant — would have been a non-starter, regardless of how good the answers were.

Solution

We built a permission-aware RAG assistant that indexes Meridian's document repository and enforces the same access controls as the source system at query time. Consultants ask questions in plain language through a simple internal web interface, and every answer includes a link back to the specific source document and location.

Technical architecture

Documents are ingested from Meridian's existing document management system via a scheduled sync that also captures each document's access control metadata. That metadata is preserved through chunking and embedding, so retrieval at query time filters candidate passages by the querying user's actual permissions before anything reaches the language model — permission enforcement happens before generation, not as a post-hoc filter on the output.

Implementation approach

We built and validated the permission-filtering logic first, independent of the retrieval quality work, and tested it explicitly against known-restricted documents before allowing any general use. Only once we could demonstrate the system reliably respected access boundaries did we move on to tuning retrieval relevance and answer quality — treating permissions as the requirement that couldn't be approximately right.

Key features

Integrations

Challenges & decisions

We considered filtering restricted content out of the answer after generation instead of before retrieval, which would have been simpler to build. We rejected that approach because it risked the model being influenced by restricted content even if the final answer text was scrubbed — permission enforcement needed to happen at retrieval time, before any restricted content reached the model at all.

Representative outcomes

Faster access to prior work

Consultants can find relevant past case studies in seconds instead of asking around.

Reduced duplicated effort

Less re-solving of problems the firm had already worked through before.

Faster onboarding

New consultants can query institutional knowledge directly instead of relying on tenure.

Permission boundaries verified, not assumed

Access control enforcement was tested explicitly, not left to trust.

Technology stack

TypeScriptPythonPostgreSQLOpenAI

In their words

The permission-aware retrieval work was the part I was most worried about, and it's the part they got right first. They tested it against restricted documents before they let anyone near the general product. That order of operations told us a lot about how they think.

DO

David Okonkwo

Director of Operations, Meridian Systems

Related services

Interested in a similar outcome?

We're glad to walk through how this approach would translate to your situation.