Assist

Features • Installation • Architecture • API • Documentation

Install Assist

bench get-app https://github.com/samletnorge/assist

Add the Frappe Gems badge to your README

Maintain Assist? Paste this into your README:

[![Listed on Frappe Gems](https://frappegems.com/api/method/frappe_gems.seo.badge?app=samletnorge%2Fassist)](https://frappegems.com/gems/apps/samletnorge/assist)

About Assist

# Assist
**AI-powered tools for extending ERPNext with MCP (Model Context Protocol) integration** [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT) [![Python 3.10+](https://img.shields.io/badge/python-3.10+-blue.svg)](https://www.python.org/downloads/) [![ERPNext](https://img.shields.io/badge/ERPNext-v15-orange.svg)](https://erpnext.com) [Features](#features) • [Installation](#installation) • [Architecture](#architecture) • [API](#api-endpoints) • [Documentation](#documentation)
--- ## 🎯 Overview Assist is a comprehensive Frappe/ERPNext app that extends your ERP system with AI-powered automation, marketplace integrations, and Norwegian business tools. It bridges the gap between traditional ERP systems and modern AI capabilities through the Model Context Protocol (MCP). ### Key Capabilities - 📸 **Smart Image Processing** - AI-powered background removal and enhancement for product photography - 🧾 **Intelligent Receipt Scanning** - OCR and automatic item extraction from receipts - 🏪 **Multi-Platform Marketplace** - Seamlessly post to Facebook Marketplace, FINN.no, leid.no - 💰 **Price Intelligence** - Real-time price comparison across vendors and Prisjakt.no - 🚚 **Smart Logistics** - Optimized pickup route planning for marketplace orders - 🏢 **Norwegian Compliance** - Skatteetaten, Kommune, and NS 4102 accounting integration - 📦 **Warehouse Discovery** - Automated warehouse finding on FINN.no - 🤖 **AI Integration** - Full MCP server for AI model interaction - 📝 **Technical Standards** - RDS 81346 and S1000D documentation generation - 🔧 **DevOps Integration** - GitHub repository management as ERP assets --- ## 🏗️ Architecture ```mermaid graph TB subgraph "External Services" AI[AI Models via MCP] Marketplaces[Marketplaces
FB • FINN • leid.no] Norwegian[Norwegian Services
Skatteetaten • Kommune] ImageAPI[Image APIs
rembg • altlokalt] Prisjakt[Price Services
Prisjakt.no] end subgraph "Assist App" direction TB API[API Layer
assist/api.py] MCP[MCP Server
mcp_server/server.py] Utils[Utilities
Image Processing] Doctypes[Custom Doctypes
Tool Drafts • Listings] API --> Utils API --> MCP MCP --> Utils MCP --> Doctypes end subgraph "ERPNext Core" Items[Items & Stock] Assets[Assets] Accounting[Accounting] Warehouse[Warehouses] end subgraph "User Interfaces" UI[ERPNext Desk UI] Mobile[Mobile/Camera] AIUI[AI Assistants] end UI --> API Mobile --> API AIUI --> MCP API --> Items API --> Assets API --> Accounting API --> Warehouse MCP --> AI API --> Marketplaces API --> Norwegian Utils --> ImageAPI API --> Prisjakt style Assist App fill:#e1f5ff style ERPNext Core fill:#fff4e6 style External Services fill:#f3e5f5 style User Interfaces fill:#e8f5e9 ``` ### Data Flow Example: Camera Item Addition ```mermaid sequenceDiagram participant User participant Mobile participant API participant ImageProc as Image Processing participant AI as AI Service participant ERPNext User->>Mobile: Capture product photo Mobile->>API: POST quick_add_item(image, warehouse) API->>ImageProc: process_camera_image() alt Use AI Background Removal ImageProc->>AI: remove_background() AI-->>ImageProc: cleaned image end ImageProc->>ImageProc: enhance_image() ImageProc-->>API: processed image API->>ERPNext: Create Item with image ERPNext->>ERPNext: Attach to warehouse ERPNext-->>API: Item created API-->>Mobile: Success + Item details Mobile-->>User: Show confirmation ``` --- ## ✨ Features ### 📸 Image Processing & OCR - **AI Background Removal** - Local processing with rembg - Cloud API via altlokalt.com - Automatic fallback mechanism - **Image Enhancement** - Brightness, contrast, sharpness adjustment - Batch processing support - Multiple format support (PNG, JPG, WebP) - **Camera Stock Upload** ⭐ NEW! - Quick add items using phone camera - Batch upload for multiple items at once - Automatic background removal and enhancement - Intuitive mobile-first interface - Real-time processing status tracking - **Receipt Scanning** - OCR text extraction - Automatic item detection - Line item parsing with prices ### 🏪 Marketplace Integration **Supported Platforms:** - Facebook Marketplace - FINN.no (Norway's leading classifieds) - leid.no (rental marketplace) - bruktdel.no (used car parts) ⭐ NEW! - Custom marketplace support **Features:** - Automated listing creation - Image optimization - Price suggestion - Listing synchronization - Phone-control automation - - **Google Maps Route Generation** ⭐ NEW! - Automatic route link generation for pickup locations - Multi-listing route optimization - Seller contact tracking - **Packaging Management** ⭐ NEW! - Track packaging status (Pending/In Progress/Completed) - Packaging notes and requirements - **Auto Photoshoot** ⭐ NEW! - Automated multi-angle product photography - Integration with camera batch upload - Background removal and enhancement ======= - **Car Parts Tracking** - Monitor bruktdel.no for new car parts linked to owned vehicle assets - **Marketplace Hustle Routine** ⭐ NEW! - Automatic monitoring of saved marketplace searches - Smart matching with Material Requests and Tasks - Real-time notifications when needed items appear - Tracks building materials, pallets, equipment, and more - Scheduled hourly checks for new listings ### 🏢 Norwegian Business Tools - **Accounting Standards** - NS 4102 (private sector) - DFØ standard (government) - Automatic chart of accounts import - **Government Services** - Skatteetaten API integration - Employee registration - Tax report submission - Deadline monitoring - **Municipal Services** - Building permit applications - Property upgrade requests - Renovation permits - **Norwegian Support Programs Index** ⭐ NEW! - Comprehensive database of grants and deductions (støtte og fradrag) - Support for private persons, companies, housing, and farms - Enova støtte programs (energy efficiency, solar, heat pumps) - Kommune support and building permits (byggesøknad) - Tax deductions from Skatteetaten (BSU, etc.) - Husbanken loans and grants - Innovasjon Norge business support - Agricultural support from Landsbruksdirektoratet - Kommune newsletter tracking with highlighted news - Search and filter by entity type, provider, category - Detailed requirements and document lists ### 🤖 MCP Server (AI Integration) The MCP server exposes ERPNext operations to AI models: **Built-in Tools:** - Inventory queries (natural language) - Item creation and management - Receipt processing - Price comparison - Route optimization - Marketplace posting **Dynamic Tools:** - Create custom tools via UI - Non-programmer friendly - Automatic registration - Parameter validation ### 📝 Technical Documentation - **RDS 81346** - Reference designation system - **S1000D Issue 6** - Technical publication standard - **GitHub Integration** - Repository as asset management --- ## 🚀 Installation ### Prerequisites - Frappe/ERPNext v15+ - Python 3.10+ - bench CLI tool ### Quick Install ```bash # Navigate to your bench directory cd $PATH_TO_YOUR_BENCH # Get the app bench get-app https://github.com/minfuel/assist.git # Install on your site bench --site your-site-name install-app assist # Install Python dependencies cd apps/assist pip install -r requirements.txt # Restart services bench restart ``` ### Optional Dependencies Install based on features you need: ```bash # Image processing (background removal, enhancement) pip install rembg pillow # MCP server (AI integration) pip install "mcp[cli]" # OCR capabilities (receipt scanning) pip install pytesseract # All optional features pip install -e ".[all]" ``` ### Verifying Installation ```bash # Check app is installed bench --site your-site-name list-apps # Run in console to test bench --site your-site-name console >>> import assist >>> assist.__version__ '0.0.1' ``` --- ## 🔄 Migration from Assist-v0 If you're upgrading from the old `erpnext_assist` app: ### Migration Steps ```bash # 1. Backup your site (IMPORTANT!) bench --site your-site-name backup --with-files # 2. Uninstall old version bench --site your-site-name uninstall-app erpnext_assist # 3. Get new version bench get-app https://github.com/minfuel/assist.git # 4. Install new version bench --site your-site-name install-app assist # 5. Install dependencies cd apps/assist pip install -r requirements.txt # 6. Restart services bench restart ``` ### What's Preserved ✅ All custom doctypes and their data ✅ Marketplace listings ✅ Tool drafts ✅ Configuration settings ### What Changed - App name: `erpnext_assist` → `assist` - Import paths updated - Enhanced documentation - Optional dependency structure See [MIGRATION.md](MIGRATION.md) for detailed migration guide. --- ## 📚 API Endpoints All endpoints are whitelisted and accessible via REST API. ### Image Processing ```python # Remove background from image POST /api/method/assist.api.remove_image_background { "image_data": "base64_string", "enhance": true, "use_altlokalt_api": false } # Enhance image quality POST /api/method/assist.api.enhance_image { "image_data": "base64_string", "brightness": 1.1, "contrast": 1.1, "sharpness": 1.2 } ``` ### Item Management ```python # Quick add item with camera POST /api/method/assist.api.quick_add_item { "image_data": "base64_string", "warehouse": "Main Warehouse", "item_group": "Products", "valuation_rate": 100.00, "remove_background": true, "enhance_image_quality": true } # Scan receipt and add items POST /api/method/assist.api.scan_receipt { "receipt_image": "base64_string", "add_as": "stock", "warehouse": "Main Warehouse" } ``` ### Marketplace Operations ```python # Compare prices across vendors POST /api/method/assist.api.compare_prices { "item_name": "Product Name", "search_prisjakt": true } # Plan pickup route POST /api/method/assist.api.plan_pickup_route { "listings": ["listing-1", "listing-2"], "start_location": "Oslo", "preferred_date": "2026-01-20" } # Generate Google Maps route for multiple listings ⭐ NEW! POST /api/method/assist.api.generate_marketplace_route { "listing_ids": "[\"ML-00001\", \"ML-00002\", \"ML-00003\"]", "start_location": "Oslo, Norway" } # Auto photoshoot for rental items ⭐ NEW! POST /api/method/assist.api.auto_photoshoot_rental_item { "listing_id": "ML-00001", "remove_background": true, "enhance_image": true, "num_angles": 4 } # Run marketplace hustle routine (manual trigger) POST /api/method/assist.api.run_marketplace_hustle_routine {} # Get marketplace hustle routine status POST /api/method/assist.api.get_marketplace_hustle_status {} ``` ### Norwegian Business ```python # Import Norwegian chart of accounts POST /api/method/assist.api.import_norwegian_accounts { "standard": "NS4102", # or "DFO" "company": "Your Company" } # Interact with Skatteetaten POST /api/method/assist.api.interact_with_skatteetaten { "action": "employee_registration", "data": "{...}" } # Get Norwegian support programs POST /api/method/assist.api.get_norwegian_support_programs { "entity_type": "private_person", # or "company", "housing", "farm" "provider": "Enova", "category": "Energi" } # Get Enova support programs POST /api/method/assist.api.get_enova_support_p

Related Integrations apps for Frappe & ERPNext

  • Insights — Open Source Business Intelligence Tool
  • Raven — Simple, open source team messaging platform
  • Frappe Whatsapp — WhatsApp cloud integration for frappe
  • Frappe Assistant Core — Infrastructure that connects LLMs to ERPNext. Frappe Assistant Core works with the Model Context Protocol (MCP) to expose ERPNext functionality to any compatible Language Model
  • Biometric Attendance Sync Tool — A simple tool for syncing Biometric Attendance data with your ERPNext server
  • Frappe React Sdk — React hooks for Frappe
  • Frappe Js Sdk — TypeScript/JavaScript library for Frappe REST API
  • Mcp — Frappe MCP allows Frappe apps to function as MCP servers