← All projects

AI Assistant for ERP Data (Claude + MCP)

Wholesale Distribution, ERP / Accounting PythonClaudeMCPClaude SkillsSQLiteSQLPydanticpytest
AI Assistant for ERP Data (Claude + MCP)

A read-only AI assistant that lets staff ask Claude about stock, orders, customer balances and sales in plain English and get answers in seconds. It also prepares a weekly sales summary and customer payment-reminder drafts from a single sentence.

1 Problem

In most companies, simple questions like "Which products are running out?", "How much does this customer owe?" or "Are we selling better than last month?" mean clicking through ERP screens or waiting for someone to pull a report. Recurring work such as weekly sales summaries and payment reminders is still done by hand.

Connecting AI to business data raises serious concerns: Can it change data? Can it see everything? Can we tell who asked what?

2 Solution

I built a read-only MCP server that connects Claude to ERP data, running on a realistic sample wholesale company (customers, products, a year of orders, invoices and payments). No real company data is used.

  • 5 tools: stock, order status, customer balance and credit limit, late orders, KPIs (revenue, top products, top customers, overdue receivables)
  • 2 Claude Skills: a one-sentence weekly management summary and customer payment-reminder email drafts (never sent automatically; a person reviews them)
  • Security: the database is opened read-only in two independent ways; the AI cannot write its own SQL and can only pick from pre-written queries; results are capped at 50 rows; every query is logged
  • Adaptable: database access is isolated in two files, so moving to SQL Server, PostgreSQL or ERPs such as Netsis, Logo or Odoo only changes that layer

3 Result

  • Stock, order, balance and revenue questions answered in seconds from live data (database queries ~2-3 ms)
  • Weekly sales summary and payment-reminder drafts produced from a single sentence
  • 52 automated tests covering data integrity, every tool, and blocked write attempts
  • Every query is written to an audit log with timestamp, parameters, row count and duration
  • About 5 minutes from clone to a working setup; code and docs are public on GitHub
Planning a similar project? Leave a short message referencing this project and let's talk about how it could work for you.
Ask about this project →
GitHub