DEV Community

Kurt @ RokiPark
Kurt @ RokiPark

Posted on

Modernizing U2 UniData: From DICTionaies/UniBasic code to a Live CRM in Minutes using UOFastCoder Skills & Agents + MCP.

UOFastMCP + UOFastCoder let AI agents read your live U2 UniData schema and generate a complete Python Flask (WTForms) based CRM app.

If you're running a business on U2 UniData, your data is already there — CLIENTS, CONTACTS, ORDERS, INVENTORY. What's missing is a modern interface your team can actually use.

UOFastMCP and UOFastCoder are two open-source tools that let an AI agent read your live UniData schema and generate a complete React CRM — no manual BASIC coding, no bespoke REST adapters.

Here's what the finished result looks like:

Real data. Real app. Let's build it.


What you need

  • A running UniData instance with the DEMO account
  • Python 3.11+ and Node.js 20+
  • Claude Code (or any MCP-capable AI client) If using VSCode with Claude Extension, then please read README within UOFastCoder and UOFastMCP ---

How it works

Your AI Agent (Claude Code)
        │
        ▼
  UOFastMCP Server          ← connects to live UniData via uopy
        │
        ▼
  UniData DEMO Account      ← CLIENTS · CONTACTS · ORDERS · INVENTORY
        │
        ▼
  UOFastCoder Skills        ← generates TypeScript types + React components
        │
        ▼
  Your React CRM App        ← running at localhost:5173
Enter fullscreen mode Exit fullscreen mode

Step 1 — Install UOFastMCP

git clone https://github.com/rokipark/uofastmcp.git
cd uofastmcp
pip install -r requirements.txt
Enter fullscreen mode Exit fullscreen mode

Follow instruction in (https://github.com/rokipark/uofastmcp)

Illustration below

Start the server:

uofast-mcp
Enter fullscreen mode Exit fullscreen mode

Step 2 — Connect Claude Code to UOFastMCP

this adds connection string to your ~/.claude/settings.json:

claude mcp add --transport sse UOFastMCP http://localhost:8000/sse \
  --header "Authorization: Basic <your-base64-token>"
Enter fullscreen mode Exit fullscreen mode

Claude Code will now have access to your live UniData files as MCP tools — query_file, read_record, get_dict_items, and more.


Step 3 — Let UOFastCoder generate the app

  • Verify the connection /uo-setup

Confirms the MCP server is reachable and credentials are correct. If anything is wrong it gives exact steps to fix it.

  • Document your database (one-time setup)
    /uo-document --all

  • Next, Open Claude Code and type this single prompt:


Using UOFastMCP and UOFastCoder, introspect the CLIENTS,
CONTACTS, and ORDERS files in the demo connection, then
generate a complete React CRM app with:
  - A dashboard with summary cards and recent records
  - A paginated, searchable Clients list with view and edit
  - An Orders view with line items
  - An Express API gateway wiring everything together
Enter fullscreen mode Exit fullscreen mode

UOFastCoder reads your actual DICT definitions — field names, attribute numbers, conversion codes like MD2 for currency and D4/ for dates — and generates strongly-typed TypeScript interfaces and React components that match your real data structure.


Step 4 — Run it

cd crm-app
python app.py
Enter fullscreen mode Exit fullscreen mode

That's it. Your CRM is live at http://localhost:<Port>, reading directly from UniData.


What gets generated

The finished app includes everything you saw in the screenshots above:

  • Dashboard — Clients and Orders counts, quick-action cards, recent records at a glance
  • Clients CRUD — searchable paginated table, view detail, inline edit, New Client form
  • Orders — order list with client lookup and line item detail
  • Inventory — parts and pricing from your INVENTORY file
  • Express gateway — typed REST routes, multi-value field expansion, date conversion

All driven by your actual UniData DEMO data — Bank and Trust, Travelbooks, United Hospital, and the rest of the records you already have.


Go further

Once you have the DEMO working, pointing at your own account is one line change in connections.json. UOFastCoder's skills also cover:

  • Write-back forms — save edits back to UniData via write_record
  • ** ( not part of this demo ) SB+ screen extraction** — convert legacy Process screens to React
  • Docker deployment — containerize the full stack for production

Both tools are open source. Star the repos and check out the docs at rokipark.ai.

Top comments (0)