lincos-mcp-connector
v0.15.3
Published
LincosInfo MCP Connector for external AI tools (Claude Desktop, etc.)
Maintainers
Readme
LincosInfo MCP Connector
Employee-facing MCP (Model Context Protocol) server for accessing the LincosInfo ERP from external AI tools like Claude Desktop.
All data access goes through PostgREST (db.lincos.io) with per-employee JWT authentication and role-based permission enforcement via db.api_action.
Setup
cd mcp-connector
npm install
cp .env.example .env
# Edit .env with your credentials
npm run buildClaude Desktop Configuration
Add to ~/.config/claude/claude_desktop_config.json (Linux) or ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):
{
"mcpServers": {
"lincos-erp": {
"command": "node",
"args": ["/absolute/path/to/lincosinfo4/mcp-connector/dist/index.js"],
"env": {
"POSTGREST_URL": "https://db.lincos.io",
"LINCOS_EMAIL": "[email protected]",
"LINCOS_PASSWORD": "your_password",
"LINCOS_COMPANY": "ZRT"
}
}
}
}Alternatively, create a .env file in the mcp-connector/ directory instead of passing env vars in the config.
Available Tools (65)
Tier 1: Read-Only (56 tools)
| Tool | Description |
|------|-------------|
| search_orders | Search sales orders by number, customer, state, date range |
| get_order_details | Full order details with items, totals, shipping |
| get_order_items | Line items for an order (products, quantities, prices) |
| search_products | Search products by code, name, brand, category |
| get_product_stock | Stock levels across warehouses/shelves |
| search_purchase_orders | Search POs by number, supplier, state, date |
| get_po_details | Full PO details with line items and received quantities |
| get_my_tasks | Your tasks filtered by state (doing/todo/idea) |
| get_cashflow | Receivables, payments, balances by type/date/partner |
| search_customers | Search organizations by name, email, phone, tax ID |
| get_stock_value | Stock value report by manufacturer/category/warehouse |
| search_all | Cross-entity search: orders, products, POs, customers at once |
| list_users | List ERP users for task assignment or @mentions |
| search_after_sales | After-sales cases: returns, warranties, repairs |
| search_invoices | Billing invoices by status, type, direction, date, partner |
| get_arriving_shipments | POs currently in transit (shipped/in-port/customs) |
| get_notifications | Your DMs, @mentions, and system alerts |
| get_supplier_profile | Supplier details: contacts, lead times, recent POs, products |
| search_emails | Business emails by subject, sender, text, thread |
| search_calendar | Calendar events: tasks, leaves, meetings with rich filtering |
| get_purchasing_dashboard | Purchasing KPIs, recent POs, upcoming payment dues |
| get_goods_to_order | Products below reorder threshold needing purchase |
| search_knowledge_base | AI knowledge base: guidelines, rules, processes, decisions |
| search_transfers | Warehouse transfers between locations |
| get_email_accounts | Email accounts with sync status and unread counts |
| get_conversations | Team messaging: channels, DMs, group chats with unreads |
| get_arriving_goods | Product-level incoming stock from open POs |
| get_employees | HR employee list with employment status, medical fitness, divisions |
| get_leave_balance | Your leave balances (vacation, sick, carried over, remaining) |
| get_warehouses | Physical warehouses with codes, names, types |
| get_holidays | Public holidays by country and year |
| get_settings | Company settings and configuration values |
| get_divisions | Company divisions/departments |
| get_stock_availability | Free vs reserved stock per product and warehouse |
| get_incoming_invoices | Supplier invoices with AI-extracted data and payment status |
| get_cs_tickets | Customer service tickets from webshop with AI triage |
| get_categories | Product categories (reference data) |
| get_manufacturers | Product manufacturers/brands (reference data) |
| get_feedback_reports | User feedback and bug reports from the feedback assistant |
| get_order_plans | Purchasing draft plans for supplier order coordination |
| get_replenishment_rules | Warehouse min/target/max stock rules with gap analysis |
| get_pickup_order_summary | Products needed for in-store pickup orders with stock at location |
| get_dashboard | User dashboard: bookmarks, widgets, available pages |
| get_delivery_methods | Delivery/shipping methods (reference data) |
| get_payment_methods | Payment methods (reference data) |
| get_collectible_goods | Orders ready for picking/collection in warehouse |
| get_stock_distribution | Warehouse transfer proposals with truck utilization |
| get_cmr_documents | CMR transport documents (consignment notes) |
| get_payment_allocations | Payment-to-invoice matching allocations |
| get_medical_fitness_alerts | Employees with expiring/expired medical certificates |
| get_changelog | App changelog: releases, features, fixes |
| get_job_postings | Job postings with application counts and required skills |
| get_sales_analysis | Product sales analytics: prices, margins, volumes, stock, competitors |
| get_product_prices | Product pricing per shop: purchase, selling, discounts |
| get_published_products | Which products are published on which webshops |
| get_product_suppliers | Supplier list with currencies, lead times, manufacturer links |
Tier 2: Write Tools (4 tools)
| Tool | Description |
|------|-------------|
| create_task | Create a task with FSM lifecycle, priority, tags |
| update_task | Edit task title, dates, priority, tags, etc. |
| add_comment | Comment on tasks/orders with @mention DM notifications |
| trigger_action | FSM transitions (TASK_START, SO_PROCESS, PO_CONFIRM, etc.) |
Tier 3: Meta/Context (5 tools)
| Tool | Description |
|------|-------------|
| whoami | Current user info: name, email, company, accessible modules |
| list_modules | All ERP modules the user can access |
| get_currency_rates | Exchange rates (all or specific currency) |
| translate | Look up ERP translations by caption code or text |
| get_fsm_workflow | State machine diagram for SO/PO/PICK/TASK/etc. |
Available Prompts (12)
| Prompt | Description |
|--------|-------------|
| check_order | Look up and summarize a sales order |
| stock_check | Check stock levels for a product |
| my_tasks | Show current tasks grouped by state |
| cashflow_overview | Overview of receivables and payments |
| find_product | Search for a product in the catalog |
| create_task | Create a new task and optionally assign it |
| daily_standup | Daily standup summary: active tasks, waiting items, priorities |
| check_after_sales | Look up after-sales cases for a product or customer |
| invoice_summary | Summary of recent invoices (outgoing or incoming) |
| shipment_tracker | Check status of arriving shipments |
| purchasing_overview | Purchasing dashboard with KPIs and dues |
| team_status | Team overview: employees, leaves, holidays |
Security
- Credentials stored locally in
.envor Claude Desktop config (never transmitted beyond PostgREST) - All API calls go through
db.api_actionwhich enforces role-based permissions - Multi-tenant isolation via
current_company_code()— employees only see their company's data - Write tools use the same permission model — the logged-in user can only perform actions they're authorized for
Development
npm run dev # Run with tsx (hot reload)
npm run build # Compile TypeScript
npm start # Run compiled versionArchitecture
Claude Desktop ──MCP/stdio──> mcp-connector ──HTTPS/JWT──> PostgREST (db.lincos.io)
│
db.api_action
│
backend.*_list
backend.*_filter