# Uniconta MCP

> Uniconta MCP Server lets your AI agent run complex ERP reports instantly. Get debtor details, audit invoices, check GL journals, and list inventory directly from Uniconta without logging into the web app. It handles all global accounting ledgers via natural chat.

## Overview
- **Category:** erp-operations
- **Price:** Free
- **Tags:** accounting, general-ledger, debtor-management, inventory-tracking, billing, financial-reporting

## Description

You gotta connect your Uniconta ERP right to your AI client. This server gives your agent direct access to core financial data—no logging into the clunky web app required. Your agent runs complex reports instantly by calling specific tools that read debtor records, audit invoices, check General Ledger (GL) journals, and list inventory without you having to click a single button.

**Getting Customer and Vendor Information:**
When you need details on a customer or vendor, you don't waste time searching. To get the full roster of active customers, use `list_debtors`, which gives you every registered account ID and basic contact info. If you know the specific ID, running `get_debtor_details` pulls all the metadata for that single debtor—you'll grab everything from their legal name to their credit limit.
Tracking what your company supplies is just as easy; use `list_debtor_invoices` when you need a list of every invoice sent out to one specific debtor ID, letting you track outstanding balances over time. You can also get the complete picture of who owes money by calling `list_creditors`, which lists every vendor and company registered in the system that supplies your business.

**Mastering Accounting Ledgers:**
When it comes to bookkeeping, your agent handles all the complexity. To audit the General Ledger, you run `list_daily_journals`. This tool pulls the raw transaction log for daily journal entries, giving you the full history needed for any accounting review. Before diving into transactions, you can use `list_gl_accounts` to pull a directory listing of every single general ledger account code used in Uniconta. You'll also find that your agent can list all employee accounts registered within the system by calling `list_employees`, which keeps HR data available for financial context.

**Managing Assets and Stock:**
For asset management, you don't need to guess what’s on hand. Running `list_inventory_items` gives you a complete catalog of every product your company sells, including current stock counts and accurate pricing details right away. If you need a quick check on who provided goods or services, running `list_creditors` gets you the full list of vendors supplying those items.

Your AI client uses these tools to read all this data natively through conversation. You simply tell your agent what you need—say, "Show me all invoices for customer ID 123." It runs `list_debtor_invoices`, and bam, the data appears. No more jumping between dashboards just to find a specific address or reconcile an old balance. Your agent handles it, pulling exact company data directly from Uniconta's core system.

## Tools

### get_debtor_details
Fetches all metadata for a single debtor (customer) ID from Uniconta.

### list_gl_accounts
Provides a directory listing of every General Ledger (GL) account code available for reporting.

### list_creditors
Lists every vendor or company registered as a creditor in the system.

### list_debtors
Lists every active customer record in Uniconta, giving you access to their unique IDs and basic info.

### list_employees
Retrieves a list of all employee accounts registered within the Uniconta system.

### list_debtor_invoices
Generates a list of all invoices issued to a specific debtor ID by your company.

### list_inventory_items
Lists all products in your catalog, including current stock count and pricing details.

### list_daily_journals
Retrieves daily journal entries, providing the raw transaction log for general ledger auditing.

## Prompt Examples

**Prompt:** 
```
Please provide the exact unformatted list of debtors actively open on this company's Uniconta profile.
```

**Response:** 
```
I've fetched 22 root debtors successfully. The top three are "Global Tech Solutions" (RowId: 100), "Beta Widgets" (RowId: 104), and "Alpha Retail" (RowId: 121). Shall I grab more specific properties of any?
```

**Prompt:** 
```
Look up our daily general ledger journals using the API.
```

**Response:** 
```
Daily journals have been gathered. You have 3 pending batches currently registered under the accounting period mapping 'Q3'. Do you want the AI to analyze specific sub-transactions?
```

**Prompt:** 
```
Fetch the metadata and details of Debtor ID 993 running in Uniconta.
```

**Response:** 
```
Details isolated for ID 993: Legal Name represents "Acme Wholesale UK". Address logged sits at 1st London Ave. Their credit limit stands currently at max $250,000 threshold.
```

## Capabilities

### Get Debtor Details
Retrieves specific metadata (like legal name, address, credit limit) for any single debtor ID.

### List All Debtors
Generates a list of every active customer registered in Uniconta, including their unique IDs.

### Audit Invoices by Debtor
Pulls all invoices issued to a specific debtor ID, allowing you to track outstanding balances over time.

### List Creditors (Vendors)
Retrieves a complete list of vendors and companies who supply services or goods to your business.

### Review General Ledger Journals
Lists all daily journal entries, giving you access to the raw transaction history for accounting audits.

### Check Inventory Status
Retrieves a complete list of products in the catalog, including current stock levels and pricing.

### List GL Accounts
Provides a full directory of every general ledger account code used within Uniconta.

## Use Cases

### Pre-Meeting Credit Check
An Account Executive is about to meet a client and needs to know if they have any outstanding balances. Instead of logging into the ERP, they prompt their agent: 'What's the current status for Global Tech Solutions?' The agent calls `get_debtor_details` and `list_debtor_invoices`, reporting back if payments are due.

### End-of-Day Reconciliation
The Bookkeeper needs to confirm the day's transactions. They ask the agent: 'List today's general ledger journals.' The agent calls `list_daily_journals`, providing a real-time summary of all recorded movements, bypassing manual journal entry review.

### Urgent Inventory Count
The Sales team needs to confirm stock levels for three different products immediately. They prompt the agent: 'List items with less than 50 units.' The agent uses `list_inventory_items` and gives them a precise list of low-stock SKUs, preventing overselling.

### Vendor Verification
The Purchasing Agent needs to confirm if 'Widget Supply Co' is still an active vendor before submitting a PO. They prompt the agent: 'What are my registered creditors?' The agent uses `list_creditors` and confirms the necessary details, saving them a phone call.

## Benefits

- **Check Debtor Status Instantly:** Instead of logging into Uniconta to find a client's address or unpaid balance, just ask the AI. Use `get_debtor_details` or `list_debtor_invoices` and get the answer in seconds.
- **Audit Books Without CSVs:** Financial auditors can query daily journals using `list_daily_journals`. This pulls transaction histories directly into your chat window, skipping the pain of exporting massive Excel files for review.
- **Inventory on Demand:** Need to verify stock while building an order? Call `list_inventory_items` right from a conversation. You get item records, prices, and available stock simultaneously.
- **Better AP/AR Visibility:** Keep track of who you owe money to or who owes you money using `list_creditors` or `list_debtors`. It’s a single source of truth for all your receivables and payables.
- **Master the Ledger:** Use `list_gl_accounts` alongside `list_daily_journals` to map out how every dollar moves through your company's books. It makes complex financial oversight simple.

## How It Works

The bottom line is: You talk to your AI client like a teammate; it talks to Uniconta's API for you. No manual dashboard navigation needed.

1. First, you manually subscribe this core server context and provide your Uniconta credentials (Username, Password, Company ID) to the AI client.
2. Next, you instruct your agent with a plain language query (e.g., 'Show me all unpaid invoices for debtor 104').
3. The agent calls the appropriate tool (`list_debtor_invoices`), receives the structured data from Uniconta, and presents it to you in natural text.

## Frequently Asked Questions

**How do I list all my customers using list_debtors?**
You prompt the agent with a simple request like, 'List all active debtors.' It runs `list_debtors` and returns an unformatted list of every customer ID and name registered in Uniconta.

**Can I use get_debtor_details to check a client's credit limit?**
Yes. You pass the debtor's ID to `get_debtor_details`. The tool returns metadata that includes their current maximum credit threshold, allowing you to check compliance instantly.

**What is the best way to audit invoices using list_debtor_invoices?**
Just give the debtor's ID and ask for outstanding invoices. The agent calls `list_debtor_invoices`, returning a comprehensive list of billing records associated with that specific client.

**Do I need to use list_gl_accounts before running list_daily_journals?**
No, you don't. While `list_gl_accounts` gives you the directory, calling `list_daily_journals` pulls the actual transactions directly. You can check both for full context.

**When I use `list_creditors`, can my agent distinguish between active and archived vendors in Uniconta?**
Yes, the tool includes a status field. This allows your AI client to separate current suppliers from inactive or archived ones immediately.

**If I run `list_inventory_items`, what is the maximum number of product records I can retrieve in one call?**
The tool handles batch retrieval, typically supporting up to 500 items per request. For larger sets, you must use the pagination parameters.

**Using `list_employees`, how do I determine if a user account has been deactivated or is pending termination?**
The output includes an 'account status' field. Your agent reads this to tell you instantly whether the employee record is active, suspended, or retired.

**How can I filter the results from `list_daily_journals` to include only transactions from a specific date range?**
You pass start and end dates directly into the call. This ensures your agent retrieves all ledger entries within that exact historical window.

**Can it search through all GL accounts at once?**
Yes. Command the LLM to 'list_gl_accounts'. It connects directly to the ERP tables handling your General Ledger mappings and provides a comprehensive, raw listing natively within seconds.

**How do I securely retrieve the data from a single specific Debtor when preparing for a client call?**
Have the agent execute 'get_debtor_details' by supplying their account code or RowID. It extracts all assigned contacts, limits, local address formats, and primary balance metrics directly into reading text.

**Is it possible to inspect pending inventory items and pricing directly dynamically and easily?**
Yes, trigger 'list_inventory_items' via standard chat protocols. The bot will automatically retrieve available catalogs, yielding active identifiers and current pricing arrays inherently.