LIMU Portal MCP
The LIMU Portal MCP server provides comprehensive read and write access to LIMU Portal's operational and financial data across clients, logistics, finance, HR, and reporting.
Health & Connectivity
Check database connectivity and verify accessible portal tables.
Client Management
Search/list clients with filters and associated cargo, shipment, invoice, payment, and lead summaries.
Retrieve a single client's full profile with all associated data.
Update editable client profile fields with dry-run preview and confirm-before-write safety.
Cargo & Packages
Search and retrieve cargo records with packages, collection details, and activity logs.
Search and retrieve cargo package groups with unit check progress and stage checks.
Shipments
Search and retrieve shipments with calendar, cargo, package totals, budget summaries, and recent logs.
Monthly Budgets & Purchase Scheduling
List and retrieve monthly budget entries with categories, spend, balance, and schedule splits.
Set/clear purchase dates or add/update/delete split schedule rows (with dry-run and confirm safety).
Shipment Budgets (Customs & Shipping)
List and retrieve customs and shipping budgets with income, expense, spend, balance totals, and logs.
Requisitions
List, view, approve/decline (at admin, finance, or management stage), and delete requisitions.
Payment Vouchers
List, view, approve/decline, delete, and mark vouchers as paid (posting spend to budget items and refreshing requisition status).
Reports
Client profile reports with cargo activity, lead counts, and order-form totals.
Lead reports with status, district, owner, volume, and time groupings.
Order form reports with status, value, assignee, client, and shipment context.
HR – Leave & Timesheets
List and approve/decline leave applications at admin or management stage.
Report on employee clock-in/clock-out timesheets and warehouse work timesheets.
All write operations (updates, approvals, deletions, scheduling) require explicit confirmation (confirm: true) and support a dry-run mode for previewing changes before committing.
Provides tools for interacting with a LIMU Portal database via MySQL, enabling management of clients, cargo, shipments, budgets, requisitions, payment vouchers, and leave applications.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@LIMU Portal MCPlist all pending payment vouchers"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
LIMU Portal MCP
Model Context Protocol server for LIMU Portal operational and finance data. It supports the original local stdio/MySQL mode and a Vercel HTTP mode that authenticates with LIMU OAuth and calls LIMU Portal APIs.
Exposed Data
Clients, including editable profile records plus cargo, package, shipment, invoice, payment, order-form, lead, KYC, query, and mobile-account summaries.
Cargo records, tracking numbers, clients, shipment links, package totals, and cargo logs.
Cargo package groups, package units, and stage-check summaries.
Shipments, calendars, status updates, cargo totals, and budget summaries.
Monthly budgets, detailed budget entries, and controlled purchase scheduling.
Shipment customs budgets and shipping budgets, including income rows, expense rows, and budget logs.
Requisitions, requisition items, payment vouchers, voucher items, payment proofs, and controlled approval/payment actions.
Client profile reports, lead reports, order form reports, leave applications, and timesheet reports.
Related MCP server: Universal Database MCP Server
Setup
cd /Applications/XAMPP/xamppfiles/htdocs/limu/mcp
cp .env.example .env
npm install
npm run smokeVercel HTTP MCP
The Vercel entrypoint is:
/api/mcpIt requires an OAuth bearer token issued by the LIMU Portal OAuth provider. The remote server validates tokens through:
GET /Api/v1/oauth/userinfo/Then each tool forwards that same bearer token to the relevant LIMU Portal API endpoint, keeping portal permissions as the source of truth.
Register the OAuth client after you know the exact Vercel callback URL:
LIMU_OAUTH_REDIRECT_URI=https://limu-mcp.vercel.app/api/auth/callback/limu \
npm run register-oauth-clientThe registration script needs either LIMU_ADMIN_TOKEN or LIMU_ADMIN_EMAIL/LIMU_ADMIN_PASSWORD in local .env. Do not set those admin credentials in Vercel.
Set these Vercel environment variables:
LIMU_PORTAL_BASE_URL=https://portal.limu.co.mw
LIMU_OAUTH_ISSUER=https://portal.limu.co.mw/Api/v1/oauth
LIMU_OAUTH_CLIENT_ID=limu-vercel-mcpThen deploy:
npm run buildVercel will serve the MCP route over Streamable HTTP through mcp-handler.
The first remote migration currently covers OAuth-protected health/userinfo, clients, cargo, cargo packages, and shipments. Finance, budget, requisition, payment voucher, leave, and report tools are registered with explicit "portal endpoint pending" responses until their matching /Api/v1/mcp/... endpoints are added to the portal.
Local Stdio MCP
Use a least-privilege MySQL user. A read-only user is enough for reporting tools, but write tools need narrowly scoped UPDATE access for Clients, monthly_budget_entry, and leave_applications, INSERT/UPDATE/DELETE access for monthly budget schedule splits, UPDATE/INSERT access for leave logs, requisitions, requisition logs, payment vouchers, and budget spend tables, plus DELETE access for eligible requisitions, requisition items/logs, payment vouchers, voucher items, and voucher proof rows.
Write tools require confirm: true; use dryRun: true first to preview the exact proposed change.
Client auth secrets, token hashes, KYC link tokens, and government ID numbers are intentionally omitted from client tool responses.
Run
cd /Applications/XAMPP/xamppfiles/htdocs/limu/mcp
npm startMost MCP clients should launch it over stdio. Example client config:
{
"mcpServers": {
"limu-portal": {
"command": "node",
"args": [
"/Applications/XAMPP/xamppfiles/htdocs/limu/mcp/src/server.js"
],
"env": {
"LIMU_DB_HOST": "127.0.0.1",
"LIMU_DB_PORT": "3306",
"LIMU_DB_NAME": "limutradee",
"LIMU_DB_USER": "root",
"LIMU_DB_PASSWORD": ""
}
}
}
}Tools
limu_healthlimu_get_clientslimu_get_clientlimu_update_clientlimu_list_cargolimu_get_cargolimu_list_packageslimu_get_packagelimu_list_shipmentslimu_get_shipmentlimu_list_monthly_budgetslimu_get_monthly_budgetlimu_list_purchase_schedulelimu_schedule_budget_purchaselimu_list_shipment_budgetslimu_get_shipment_budgetlimu_list_customs_budgetslimu_get_customs_budgetlimu_list_shipping_budgetslimu_get_shipping_budgetlimu_list_requisitionslimu_get_requisitionlimu_review_requisitionlimu_delete_requisitionlimu_list_payment_voucherslimu_get_payment_voucherlimu_review_payment_voucherlimu_delete_payment_voucherlimu_mark_payment_voucher_paidlimu_list_client_profile_reportslimu_get_client_profile_reportlimu_list_lead_reportslimu_get_lead_reportlimu_list_order_form_reportslimu_get_order_form_reportlimu_list_leave_applicationslimu_review_leave_applicationlimu_list_timesheet_reportslimu_list_warehouse_timesheet_reports
All tools return JSON text payloads and list tools enforce a configurable limit cap.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/gochi20/limuMCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server