Skip to content

Operations and Testing

Use the browser Integration Lab for routine checks. It exposes the important paths without requiring an operator to assemble API requests or handle credentials in a browser.

Entry points

Service URL Use
LibreChat chat.rapiddraft.ai Ask governed questions through the private ERP/PLM Agent
Integration Lab rapiddraft-enterprise-search-testing.up.railway.app Test search, CAD normalization, release planning, and DFM
Odoo ERP erp-demo.rapiddraft.ai Inspect operational test records
RapidDraft app.rapiddraft.io Load models and review DFM results

The search gateway also provides:

Path Purpose
/mcp Authenticated MCP transport used by LibreChat
/v1/search Cross-system search API
/v1/parts Canonical part-oriented lookup API
/openapi.json Machine-readable HTTP contract
/health Service health without exposing records

Test from LibreChat

  1. Sign in to LibreChat.
  2. Select the private RapidDraft ERP + PLM Agent.
  3. Ask a question that names a part number or business concept.
  4. Check that the answer distinguishes Odoo and Aras facts.
  5. Confirm that record IDs, lifecycle/status, and freshness are present when relevant.

Useful acceptance prompts:

Find RD-BAT-HOUSING-001 and compare its engineering lifecycle with its ERP product record.
Which supplier provides the battery housing, and what is the current operational context?
Show the BOM context for the battery module and identify any components that are not Released.
Which record is authoritative for the CAD revision of RD-BAT-HOUSING-001?

An answer fails acceptance if it invents a release, hides a source conflict, omits the owning system, or claims the Aras snapshot is live.

Test from the Integration Lab

  • Run a part-number query first because the expected identity is deterministic.
  • Then run a natural-language supplier, BOM, stock, or lifecycle query.
  • Inspect the returned source system, native record ID, and freshness.

CAD metadata

  • Leave Fictional fixture selected for browser-only tests.
  • Choose the matching SOLIDWORKS or NX adapter and extract the fixture.
  • Use Check localhost bridge only when the local bridge is running on this workstation.
  • Do not expect Railway to read a Windows file path directly.

The workstation bridge is started from the ERP integration repository:

cd D:\02_Code\15_ERP
.\scripts\cad\start-bridge.ps1

Release planning

  • Load a CAD fixture.
  • Build a release plan.
  • Confirm that only Released Aras revisions are eligible for Odoo publication.
  • Treat every console synchronization as a dry run unless a separate, authorized write step is deliberately invoked.

RapidDraft DFM

  • Confirm the DFM service first.
  • Use the RapidDraft model loader to upload or choose a model.
  • Return the model ID and component node to the Integration Lab.
  • Plan the DFM request before starting the review job.
  • Keep findings associated with the exact model and component identifiers.

MCP tools

LibreChat currently discovers two tools from the rapiddraft-erp-plm server:

Tool Use
search_erp_plm_mcp_rapiddraft-erp-plm Search products, suppliers, BOMs, stock, purchasing, lifecycle, documents, and CAD context
get_erp_plm_part_mcp_rapiddraft-erp-plm Retrieve the joined record for a known canonical part or part number

The tool names include the LibreChat MCP server suffix. Client code should use the configured tool schema rather than hard-coding display labels.

Credentials and writes

  • API keys belong in the protected local auth directory or Railway variables, never in this wiki or Git.
  • The Odoo data API identity is for routine product, supplier, BOM, stock, and purchasing operations.
  • The Odoo admin API identity is reserved for controlled setup and configuration.
  • Aras credentials stay behind the private integration boundary.
  • CAD bridge requests are local-only and should be accepted only from the workstation.
  • Search, health, and plan operations are read-only. A write requires a separately authorized command and an auditable result.

Verified acceptance

The 2026-07-29 implementation run recorded:

Check Result
Canonical dataset validation Passed
Agentic-search evaluation 8/8 passed
Gateway automated tests 12/12 passed
Odoo content and relationship checks 19/19 passed
Local CAD bridge smoke test Passed
MCP tool discovery Passed
Live LibreChat Agent answer Passed
Live RapidDraft DFM service check Passed
Browser Integration Lab workflow Passed
Audit and credential scan Passed

Troubleshooting order

  1. Check /health.
  2. Confirm the LibreChat Agent still lists both MCP tools.
  3. Run an exact part-number search.
  4. Compare Odoo live-read status with Aras snapshot freshness.
  5. For CAD only, check the localhost bridge from the workstation.
  6. For DFM only, confirm the RapidDraft service and model/component IDs.
  7. Stop before writes if release state, identity, or source ownership is ambiguous.

Open Questions

  • Should the Integration Lab show a persistent banner with the Aras snapshot timestamp?
  • Which write operations, if any, should become available in the browser after role-based approval is implemented?
  • Should acceptance tests run automatically after every Odoo import or Aras snapshot refresh?
  • Where should operational alerts for stale projections and failed MCP calls be routed?

Sources

  • D:\02_Code\15_ERP\docs\Agentic_Search_Integration_v1.md
  • D:\02_Code\15_ERP\docs\Phase_2_CAD_RapidDraft_Integration_Plan.md
  • D:\02_Code\15_ERP\docs\Implementation_Status_v1.md
  • D:\02_Code\15_ERP\services\search-gateway\