mcpbeat Sign in

Sortly MCP by usefulapi MCP Server

answering

Sortly MCP by usefulapi is answering right now. Last checked 11 min ago. It exposes 20 tools. Last commit 10 Oct 2026.

Search inventory items and folders, low-stock alerts, jobs and purchase orders, and update stock.

Uptime history 13 days of history
13 days agonow
100.0%
Uptime 24h
91 of 91 checks
20
Tools
read from the server
105 ms
Response time
average over 24h
0
Stars
last commit 10 Oct 2026

What changed 7

Every tool that appeared, vanished or quietly changed what it asks for. Recorded since 30 September 2026. No other catalogue keeps this.

9 Oct a tool changed version4 times that day
1 Oct a tool changed version2 times that day
30 Sep a tool changed version
and 4 more, back to 30 September 2026

Nothing serious here today

Today is the operative word: we check Sortly MCP by usefulapi every 15 minutes and re-read its code on every release. Watch it and you find out the day that stops being true.

Three servers free · no card

Connect this server

Endpoint below is the one we actually reach during checks — not the one copied from a README. Last verified 11 min ago.

run in your terminal
claude mcp add sortly --transport http https://sortly.usefulapi.io/mcp
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "sortly": {
      "url": "https://sortly.usefulapi.io/mcp"
    }
  }
}
~/.codex/config.toml
[mcp_servers.sortly]
url = "https://sortly.usefulapi.io/mcp"
.cursor/mcp.json
{
  "mcpServers": {
    "sortly": {
      "url": "https://sortly.usefulapi.io/mcp"
    }
  }
}
.vscode/mcp.json
{
  "mcpServers": {
    "sortly": {
      "url": "https://sortly.usefulapi.io/mcp"
    }
  }
}

Available tools 20

Read directly from the server with tools/list, grouped by what they act on. If a tool disappears, we record the date.

sortly
sortly_create_alert
Create a stock alert on an item (type Quantity, e.g. threshold_method quantity_less_than with threshold_value 5, or less_than_or_equal_to_min_quantity), or a DateReminder on a datetime custom field (custom_attribute_id + before/after/same_day + threshold_interval). WRITE. Sortly: POST /api/v1/alerts.
sortly_create_item
Create a trackable item (type item) or a folder (type folder), optionally inside a folder via parent_id, with quantity, price, tags, custom fields, barcodes and a measured quantity. WRITE. Sortly: POST /api/v1/items.
sortly_create_job
Create a job (and its job folder) in not_started status. Name must be unique in the company. Then use sortly_pull_items_into_job to record the stock it uses. WRITE. Sortly: POST /api/v1/jobs.
sortly_create_purchase_order
Create a purchase order in draft status (no stock or ordering happens until it is moved on in Sortly). Sortly computes amounts, sub_total and total from the lines; omit purchase_order_number to have one generated. Needs Purchase Orders on the plan (else 402). WRITE. Sortly: POST /api/v1/purchase_orders.
sortly_get_item
Fetch a single item or folder by numeric id: quantity, min_quantity, price, tags, sid, barcodes, and optionally custom field values and photos. Sortly: GET /api/v1/items/{item_id}.
sortly_get_job
Fetch a single job: status, folder_id (where its pulled items sit), dates, notes, custom field values and the version needed for updates. Sortly: GET /api/v1/jobs/{job_id}.
sortly_get_purchase_order
Fetch a single purchase order with its line_items (quantity vs received_quantity), vendor, addresses, charges, totals and version. Sortly: GET /api/v1/purchase_orders/{purchase_order_id}.
sortly_get_purchase_order_receive_status
Report the most recent receive against a purchase order: pending / completed / failed, with the line ids received, pending and failed (and why). Returns 404 until something has been received. Sortly: GET /api/v1/purchase_orders/{purchase_order_id}/receive/status.
sortly_list_alerts
List stock (Quantity) and date (DateReminder) alerts, with is_fired showing which have already triggered — the quick way to find low-stock items. Sortly: GET /api/v1/alerts.
sortly_list_custom_fields
List the account's custom fields (id, name, type, applies_to). Call this before writing custom_attribute_values to get the right custom_attribute_id. Sortly: GET /api/v1/custom_fields.
sortly_list_items
List items and folders, newest first. By default the root level; pass folder_id for a folder's direct contents, plus include_subfolders for everything nested under it. Paginated via meta.next_page_url / total_pages. Sortly: GET /api/v1/items.
sortly_list_jobs
List jobs (work orders that pull stock out), most recently updated first, filterable by name prefix and status. Paginated via meta.pagination.has_next. Sortly: GET /api/v1/jobs.
sortly_list_purchase_orders
List purchase orders, most recently updated first, filterable by PO number and status. The list leaves out notes, terms, sub_total and line_items — use sortly_get_purchase_order for those. Needs Purchase Orders on the plan (else 402). Sortly: GET /api/v1/purchase_orders.
sortly_list_recently_updated_items
List items and folders changed since a Unix timestamp — the incremental-sync read ('what moved since yesterday?'). Without updated_since it behaves like sortly_list_items. Sortly: GET /api/v1/items/recent.
sortly_list_units
List the units of measure available to the account (unit_name, unit_type, scale) — the values measured_quantity and purchase-order lines expect. Sortly: GET /api/v1/units.
sortly_move_item
Move some or all of an item's quantity to another folder (items only — relocate a folder with sortly_update_item parent_id). A partial move splits off a new item with the same sid; a full move relocates the item; a matching item at the destination is merged, and the returned id is the destination's. Undo by moving it back. WRITE. Sortly: POST /api/v1/items/{item_id}/move.
sortly_pull_items_into_job
Move quantities of existing items (from any folders) into a job's folder — how usage on a job is recorded. Up to 100 items per call; items are processed independently, so ALWAYS check data.errors (a partial failure still returns 200). Undo with sortly_return_items_from_job. Returns 403 on a completed job. WRITE. Sortly: POST /api/v1/jobs/{job_id}/items.
sortly_return_items_from_job
Move items off a job's folder back into inventory (destination_folder_id, or All Items if omitted). Up to 100 per call; check data.errors — items are processed one by one. WRITE. Sortly: POST /api/v1/jobs/{job_id}/items/return.
sortly_search_items
Search items and folders by name, optionally limited to items or folders and scoped to specific folders. Read-only despite being a POST. Paginated: send the same arguments with the next page number. Sortly: POST /api/v1/items/search.
sortly_update_item
Change fields on an existing item or folder — e.g. set a new quantity after a stock count, rename it, or relocate a folder via parent_id. Only the fields you pass change; pass null to clear a nullable field. Sending tags or custom_attribute_values replaces them. WRITE. Sortly: PUT /api/v1/items/{item_id} (returns 204).

Endpoints

URLTransportStateLatencyChecked
https://sortly.usefulapi.io/mcp streamable-http answering 128 ms 11 min ago

Alternatives to Sortly MCP by usefulapi

same job, measured the same way
StatusPal MCP by usefulapi
by usefulapi

Read status-page status, services, incidents and metrics; create, update and publish incidents.

11 tools answering
Cronitor MCP by usefulapi
by usefulapi

Manage Cronitor monitors and send telemetry pings — list, inspect, create, update, delete.

6 tools answering
Virtuous MCP by usefulapi
by usefulapi

Search donors and contacts, giving history, notes and projects, and log notes, tags and gifts.

20 tools answering
Atera MCP by usefulapi
by usefulapi

Check devices, alerts and tickets in Atera, and open tickets, comment or resolve alerts.

20 tools answering
All Quiet MCP by usefulapi
by usefulapi

Manage incidents and on-call: list/create/update incidents, who is on call, on-call overrides.

11 tools answering
Paymo MCP by usefulapi
by usefulapi

Browse Paymo projects, tasks, timesheets and invoices, and create tasks, log time or run timers.

21 tools answering
Clockify MCP by usefulapi
by usefulapi

Track time in Clockify: time entries, projects, clients, tags and reports; start, stop and log time.

21 tools answering
Bloomerang MCP by usefulapi
by usefulapi

Search Bloomerang constituents and donations; log interactions, notes and tasks.

20 tools answering

Sortly MCP by usefulapi — questions

Answers built from our own checks of this server.

What can Sortly MCP by usefulapi do?
It exposes 20 tools, read directly from the server on our last check. Among them: sortly_create_alert, sortly_create_item, sortly_create_job, sortly_create_purchase_order, sortly_get_item, sortly_get_job and 14 more. The full list with descriptions is on this page — we take it from the server itself via tools/list, not from a README. How MCP servers expose tools in the first place →
Is Sortly MCP by usefulapi working right now?
We send a real MCP handshake every 15 minutes. Over the last 24 hours 91 of 91 checks got a reply (100.0%), average response time 105 ms. The bar chart above shows every period we have measured.
How do I connect Sortly MCP by usefulapi?
Copy the ready config from this page — we generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each with the file path that client actually reads. It is a remote server, so there is nothing to install — the client connects to the address.
Does Sortly MCP by usefulapi need an API key?
No. Sortly MCP by usefulapi completed a full MCP handshake with us as an anonymous client and listed its tools without asking for anything. All 20 of them are readable on this page. This is what we observed, not what the docs claim.
How fast is Sortly MCP by usefulapi?
It answers our handshake in 105 ms on average, which is faster than 83% of all working MCP servers we measure. That puts it in the quick quarter of the ecosystem. The comparison comes from our own checks across the whole registry, every 15 minutes.
Is Sortly MCP by usefulapi open source?
Yes — it is published under the MIT licence, written in JavaScript, 0 stars on GitHub and 1 open issue. The source link is on this page, so you can read exactly what it does with your data before you connect it.