Mango Inventory works with your AI
Mango Inventory is AI-first inventory management for companies, workshops, clubs, schools and any other organization that keeps track of things. It ships a hosted MCP server (Model Context Protocol — the open standard ChatGPT, Claude, Microsoft Copilot, Cursor and most agent platforms speak), so your agent works with your real inventory: it searches, assigns, reports, orders — and sets up a whole organization in one conversation.
Connect
Every user connects with their own access: in the app, open Settings → Connect your AI agent, pick your app and follow the two-click instructions. Interactive clients (ChatGPT, Claude, Cursor, Copilot) connect via OAuth — paste the URL, sign in, allow access. Headless callers (scripts, n8n, CI) use a personal access key as a bearer header:
URL: https://mcp.mangoinventory.com/mcp
Header: Authorization: Bearer <your access key> (scripts only — interactive clients just sign in)The connection acts as you: it can do exactly what your account can do, nothing more — and every change appears in the activity trail under your name, marked “(via AI agent)”. Access is revocable per connection, any time, in the same settings page.
ChatGPT (chatgpt.com)
- On chatgpt.com, open Settings → Connectors and add a new connector with the URL
https://mcp.mangoinventory.com/mcp— no key, no extra fields. - ChatGPT opens Mango Inventory in the browser: sign in, pick your organization, click Allow access.
- Ask ChatGPT something — “how many projectors do we have?”
Custom connectors require a paid ChatGPT plan in some regions. The ChatGPT desktop app (Codex) can set the connection up itself — the app's ChatGPT tab has a ready-made prompt to paste.
Claude (claude.ai and desktop)
- In Claude — on claude.ai or in the desktop app — open Settings → Connectors and click Add custom connector.
- Name it (e.g. “Mango Inventory”) and paste
https://mcp.mangoinventory.com/mcpas the connection URL — nothing else needed. - Claude opens Mango Inventory to sign in — click Allow access.
Custom connectors are available on all Claude plans (Free: one connector per account).
Claude Code
One command — create a key in the app under Settings → Connect your AI agent → “For scripts & automations” (the app shows this command pre-filled):
claude mcp add --transport http mango-inventory https://mcp.mangoinventory.com/mcp \
--header "Authorization: Bearer <your access key>"Cursor
Easiest: click Add to Cursor in the app's Cursor tab — Cursor opens, runs the Mango sign-in and configures itself. Manually, a URL-only entry in .cursor/mcp.json is enough; Cursor starts the OAuth sign-in on first contact:
{
"mcpServers": {
"mango-inventory": {
"url": "https://mcp.mangoinventory.com/mcp"
}
}
}Any other MCP client
OAuth-capable clients need only the URL. Clients that send static headers use a personal access key; for clients without header support, the app generates an mcp-remote bridge config. Generic JSON shape:
{
"mcpServers": {
"mango-inventory": {
"url": "https://mcp.mangoinventory.com/mcp",
"headers": { "Authorization": "Bearer <your access key>" }
}
}
}Set up your inventory by talking
The setup tools are built for spoken conversation: talk for a few minutes about what you manage; the agent drafts a structure, previews it without writing anything, and commits the whole tree after one confirmation.
You: “We're a small joinery. We've got the workshop and the warehouse, plus a van. We track our machines — saws, sanders, the CNC — and consumables like screws and finish. Machines have serial numbers and service dates…”
Agent: “Here's what I'd set up: locations Workshop, Warehouse, Van; categories Machines (fields: serial number — unique, last service — date) and Consumables, tracked by quantity. Does that match?”
You: “Yes — and add a ‘purchase year’ to machines.”
Agent: “Done: 3 locations, 2 categories, 3 fields created. Want me to take in the first machines now — just read me what's on the labels.”
And run the day-to-day
You: “Is the beamer BM-002 free on Thursday? If yes, hand it to Anna Weber.”
Agent: “BM-002 is available and currently in the storage room — no open tickets. There's one thing: an active order requests it. Assign it to Anna anyway?”
You: “Yes, the order can wait.”
Agent: “Assigned to Anna Weber. The activity trail shows it under your name.”
The tool catalog
44 tools, each running through the same permission checks as the app itself. Tool names and descriptions are English; the product speaks English and German (French planned).
Search & read
Read tools are marked read-only for the connecting client — most AI apps run them without confirmation prompts.
search_items | Find items by name or printed barcode/inventory code, with filters (holder, location, category, status). |
get_item | One item with its category, status and all relations, names resolved. |
check_item_availability | Is it free? Who holds it, open tickets, overdue maintenance, active order requests, stock distribution. |
get_item_requirements | Category tree + required custom fields — what an item of category X needs before it can be created. |
search_resources | Find people and locations by name (the id source for assignments). |
list_tickets | Defect/maintenance tickets with status, type and text filters. |
list_orders | Orders (material requests) grouped active vs closed — managers see all, members their own. |
stocktaking_status | Stocktake sessions with live per-location and per-counter progress. |
get_setup_status | Org type, setup progress and rough counts — the orientation call for setup conversations. |
list_members | Members with role and order/ticket responsibilities. |
Items & stock
Every write runs with the connected user's permissions and lands in the audit trail under their name, marked “(via AI agent)”.
create_item | Conversational item creation — collects required fields, supports drafts, idempotent via clientRequestId. |
update_item | Rename, edit description and custom field values; refuses edits that would clear required values. |
assign_item | Set holder, current location, responsible person or home location — with safety acknowledgments. |
set_item_status | Mark available / in repair / defect / lost / retired, with an optional note. |
transfer_stock | Move an amount of a quantity-tracked item between locations. |
Tickets & orders
The full lifecycle: report, work, close — request, fulfill, decline.
create_ticket | Report a defect or maintenance need on an item, optionally flipping the item's status. |
update_ticket | Change status, title, description, priority or due date; closing can restore the item to available. |
create_order | Request items or material in free text and/or concrete item lines. |
fulfill_order | Mark delivered (order managers) — with honest acknowledgments for incomplete fulfillments. |
reject_order | Decline with a reason the requester sees. |
cancel_order | Withdraw your own open order. |
Daily work
The everyday loop, one sentence away: what's on my plate, what maintenance is due, mark a check done, leave a note, fix a stock number.
my_tasks | Everything on the connected user's plate: assigned tickets and orders, stocktaking rooms, restock signals and maintenance-run work. |
maintenance_status | Maintenance overview — overdue, due soon, blocked, per-plan cards — or one item's plans and due dates. |
complete_maintenance_run | Close a generated maintenance-run ticket with result OK or issue found — moves the maintenance clock; issues open a follow-up defect ticket. |
add_comment | Leave a comment on an item, ticket or order — under the user's name, marked “(via AI agent)”. |
adjust_stock | Correct a quantity-tracked item's stock at a location: used up, received or recounted, with an optional reason. |
set_min_stock | Set or clear the restock threshold that raises a restock task when stock falls below it. |
create_team | Create an assignment team (admins only). |
add_team_member | Add an organization member to a team (admins only). |
list_teams | Teams with member counts — the id source for add_team_member. |
Organization setup
Setup is where agents shine: the scaffold tools return a dry-run plan by default and only write after an explicit confirm — one spoken confirmation covers a whole tree. The setup templates are also exposed as MCP resources for clients that support them.
get_setup_template | Opinionated starting templates for four kinds of organizations (school, office, workshop/trade, sports club) — category trees, fields, locations and interview guidance the agent adapts with you. |
scaffold_categories | A whole category tree with custom field definitions in one call — preview, confirm, commit atomically; existing nodes are reused, never duplicated. |
scaffold_locations | A whole location tree (buildings, rooms, storage) — same preview/confirm contract. |
create_category | One category under an optional parent. |
update_category | Rename a category. |
create_field_def | One custom field definition (text, number, date, select, boolean; required/unique flags). |
update_field_def | Rename a field, flip required, replace select options. |
create_location | One location under an optional parent. |
create_person | A person record items can be assigned to (not a login account). |
set_org_type | School, company, public works, club or other. |
set_org_defaults | Default home location, language, default order/ticket handlers. |
create_invite | Invite someone into the organization by email, with a role (admins only). |
add_sample_data | A small sample dataset to explore with. |
remove_sample_data | Removes exactly those sample records again. |
For developers & IT
- Transport: MCP Streamable HTTP (stateless), current and 2025-era protocol revisions. OAuth 2.1 with dynamic client registration, or static bearer keys.
- Honest tool metadata: read-only/idempotent annotations, structured error codes, acknowledgment round-trips for risky writes instead of silent overrides.
- Idempotency: creation tools accept a
clientRequestId; the scaffold tools reuse same-name nodes — safe retries by design. - Microsoft 365 Copilot: a ready-made declarative agent package for your tenant is available during the pilot — get in touch.
- Machine-readable overview: /llms.txt