_ registry / mcp streamable-http · checked 2h ago

ordoro-mcp

https://ordoro.usefulapi.io

Registry code: 81066d657cf6eec9

api record

Tools for Ordoro, hosted by usefulapi.io. Read-only tools never change data; ask the user before a tool that creates, changes or deletes Ordoro data. Free plan: 100 tool calls per month. Run ordoro_usage_status to see the calls used this month. Pro (unlimited calls, $9/month or $90/year): when the user wants more calls or reaches the limit, run ordoro_upgrade; it returns a Stripe Checkout link for the user to open. ordoro_cancel_subscription cancels Pro at the end of the paid period.

endpoint
https://ordoro.usefulapi.io/mcp
protocol
streamable-http ·2025-06-18
authentication
none observed
public key
none — nobody has proven they own this listing · is it yours? claim it
karma
0 · newcomer
_ is it live, free and safe measured by this hub
Is ordoro-mcp live?
Yes — it answered the hub's last check (checked 2h ago). It answered 100% of checks over the last 30 days.
Is ordoro-mcp free to use?
Not measured yet.
What tools does ordoro-mcp have?
18 tools: ordoro_get_order_counts, ordoro_get_order_tracking, ordoro_list_order_comments, ordoro_list_order_tags, ordoro_list_return_orders, ordoro_list_products, ordoro_list_suppliers, ordoro_list_orders, ….
Is ordoro-mcp safe to connect?
The hub found no text in its card or tool descriptions aimed at the agent reading them. It measures what the server answers, not its code — grant it only the access its tools need.
reachable
live
uptime, 30 days
100%

90 days 100%· all time 100%

latency
363ms

last good check

priced tools
0

of 18 tools

_ answered our checks, 90 days 1 checks · signed record
  • unknown → live
_ usage and payments 30 days

Calls placed through this hub's router, from its own receipts. Every caller and every payer counts the same; the chain total is counted from three payers.

accounts
0

through this hub

calls served
0

successful

paid through this hub
0 USDC

what callers paid

_ what it can do 18 tools
18 never probed 0 of 18 classified

Price is per tool, not per server. An agent whose handshake is open can hold tools that demand a key or a payment, and one figure for the whole agent sends callers into a wall.

  • ordoro_get_order_counts unknown never probed

    Count orders per status: all, awaiting_fulfillment, shipped, unprinted_shipped, cancelled, dropshipment_requested. A quick fulfillment-backlog overview. Ordoro API: GET /v3/order/counts.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {}
    }
    arguments 5 lines
  • ordoro_get_order_tracking unknown never probed

    Get the shipment and tracking details of one order: carrier, shipping method, tracking number and tracking URL, ship date, estimated delivery, label cost, plus any return shipment and dropship info. Ordoro API: GET /v3/order/{order_number} (shipping_info).

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "order_number"
      ],
      "properties": {
        "order_number": {
          "type": "string",
          "minLength": 1,
          "description": "The Ordoro order number, including its sales-channel prefix (for example \"1-1001\"), from ordoro_list_orders."
        }
      }
    }
    arguments 14 lines
  • ordoro_list_order_comments unknown never probed

    List the comments (internal notes and the order's activity log) of one order, with user and date. Paginated: returns { count, limit, offset, comment: [...] }; use offset for the next page. Ordoro API: GET /v3/order/{order_number}/comment.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "order_number"
      ],
      "properties": {
        "limit": {
          "type": "integer",
          "maximum": 100,
          "minimum": 1,
          "description": "Max results per page (default 10, max 100)."
        },
        "offset": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 0,
          "description": "Number of results to skip (pagination)."
        },
        "order_number": {
          "type": "string",
          "minLength": 1,
          "description": "The Ordoro order number, including its sales-channel prefix (for example \"1-1001\"), from ordoro_list_orders."
        }
      }
    }
    arguments 26 lines
  • ordoro_list_order_tags unknown never probed

    List the account's order tags (id, name, color). Use the id with ordoro_add_order_tag / ordoro_remove_order_tag. Ordoro API: GET /v3/order/tag.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "limit": {
          "type": "integer",
          "maximum": 100,
          "minimum": 1,
          "description": "Max results per page (default 10, max 100)."
        },
        "offset": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 0,
          "description": "Number of results to skip (pagination)."
        }
      }
    }
    arguments 18 lines
  • ordoro_list_return_orders unknown never probed

    List return orders (RMAs) with reference id, status, original order, lines and return label info. Ordoro API: GET /v3/return_order.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "sort": {
          "type": "string",
          "description": "Sort: (-)reference_id, (-)status, (-)warehouse_name, (-)created_date, (-)updated_date."
        },
        "limit": {
          "type": "integer",
          "maximum": 100,
          "minimum": 1,
          "description": "Max results per page (default 10, max 100)."
        },
        "offset": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 0,
          "description": "Number of results to skip (pagination)."
        },
        "search": {
          "type": "string",
          "description": "Free-text search."
        },
        "status": {
          "type": "string",
          "description": "Return order status filter (e.g. all)."
        }
      }
    }
    arguments 30 lines
  • ordoro_list_products unknown 2h ago

    List products with inventory totals (total_on_hand, available_on_hand, total_committed, total_allocated, to_be_shipped, po_total_committed). Filter by search, active, low inventory, oversold, needs_sync, warehouse, supplier, tag, kit status and updated date. Returns { count, limit, offset, products: [...] }. Ordoro API: GET /product/.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "kit": {
          "type": "boolean",
          "description": "true = only kit parents."
        },
        "tag": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Only products with these tag names."
        },
        "sort": {
          "enum": [
            "name",
            "-name",
            "sku",
            "-sku",
            "created",
            "-created",
            "total_committed",
            "-total_committed",
            "total_available",
            "-total_available",
            "total_on_hand",
            "-total_on_hand"
          ],
          "type": "string",
          "description": "Sort field; prefix '-' for descending."
        },
        "limit": {
          "type": "integer",
          "maximum": 100,
          "minimum": 1,
          "description": "Max results per page (default 10, max 100)."
        },
        "active": {
          "type": "boolean",
          "description": "true = active products only, false = archived only."
        },
        "offset": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 0,
          "description": "Number of results to skip (pagination)."
        },
        "search": {
          "type": "string",
          "description": "Search by SKU or name."
        },
        "category": {
          "type": "string",
          "description": "Product category."
        },
        "dropship": {
          "type": "boolean",
          "description": "true = only dropshippable products."
        },
        "oversold": {
          "type": "boolean",
          "description": "true = only oversold products."
        },
        "supplier": {
          "type": "array",
          "items": {
            "type": "integer",
            "maximum": 9007199254740991,
            "minimum": -9007199254740991
          },
          "description": "Only products from these supplier ids."
        },
        "needs_sync": {
          "type": "boolean",
          "description": "true = only products whose inventory needs syncing to a sales channel."
        },
        "warehouse_id": {
          "type": "array",
          "items": {
            "type": "integer",
            "maximum": 9007199254740991,
            "minimum": -9007199254740991
          },
          "description": "Only products stocked in these warehouse ids."
        },
        "to_be_shipped": {
          "type": "boolean",
          "description": "true = only products with committed (to-be-shipped) inventory."
        },
        "updated_after": {
          "type": "string",
          "description": "Updated after this date (ISO 8601)."
        },
        "low_inventory_aoh": {
          "type": "boolean",
          "description": "true = only products low on available-on-hand inventory."
        }
      }
    }
    arguments 101 lines
  • ordoro_list_suppliers unknown 2h ago

    List suppliers and dropshippers with id, company name, address, contact email and dropship settings. Ordoro API: GET /supplier/.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "limit": {
          "type": "integer",
          "maximum": 100,
          "minimum": 1,
          "description": "Max results per page (default 10, max 100)."
        },
        "offset": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 0,
          "description": "Number of results to skip (pagination)."
        },
        "search": {
          "type": "string",
          "description": "Free-text search."
        }
      }
    }
    arguments 22 lines
  • ordoro_list_orders unknown never probed

    List orders across all sales channels, newest first by default. Filter by status (awaiting_fulfillment, shipped, cancelled, dropshipment_requested, all), free-text search, SKU, tag, warehouse, and created/updated/shipped date ranges. Returns { count, limit, offset, order: [...] } with lines, addresses, shipping_info (tracking), tags and financials. Ordoro API: GET /v3/order.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "sku": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Only orders containing these SKUs."
        },
        "tag": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Only orders with these tag names."
        },
        "sort": {
          "enum": [
            "order_placed_date",
            "-order_placed_date",
            "created_date",
            "-created_date",
            "updated_date",
            "-updated_date",
            "ship_date",
            "-ship_date",
            "grand_total",
            "-grand_total",
            "order_number",
            "-order_number",
            "status",
            "-status",
            "ship_by_date",
            "-ship_by_date",
            "deliver_by_date",
            "-deliver_by_date"
          ],
          "type": "string",
          "description": "Sort field; prefix '-' for descending."
        },
        "limit": {
          "type": "integer",
          "maximum": 100,
          "minimum": 1,
          "description": "Max results per page (default 10, max 100)."
        },
        "offset": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 0,
          "description": "Number of results to skip (pagination)."
        },
        "search": {
          "type": "string",
          "description": "Free-text search."
        },
        "status": {
          "enum": [
            "all",
            "awaiting_fulfillment",
            "shipped",
            "cancelled",
            "dropshipment_requested"
          ],
          "type": "string",
          "description": "Order status filter (default: Ordoro's default view)."
        },
        "warehouse_id": {
          "type": "array",
          "items": {
            "type": "integer",
            "maximum": 9007199254740991,
            "minimum": -9007199254740991
          },
          "description": "Only orders assigned to these warehouse ids."
        },
        "created_after": {
          "type": "string",
          "description": "Created on/after this date (ISO 8601, e.g. 2026-10-01)."
        },
        "sales_channel": {
          "type": "array",
          "items": {
            "type": "integer",
            "maximum": 9007199254740991,
            "minimum": -9007199254740991
          },
          "description": "Only orders from these sales channel (cart) ids."
        },
        "shipped_after": {
          "type": "string",
          "description": "Shipped on/after this date (ISO 8601)."
        },
        "updated_after": {
          "type": "string",
          "description": "Updated on/after this date (ISO 8601)."
        },
        "created_before": {
          "type": "string",
          "description": "Created before this date (ISO 8601)."
        },
        "shipped_before": {
          "type": "string",
          "description": "Shipped before this date (ISO 8601)."
        },
        "allocation_status": {
          "enum": [
            "could_not_allocate",
            "unallocated",
            "partial",
            "allocated",
            "overallocated"
          ],
          "type": "string",
          "description": "Inventory allocation status filter."
        }
      }
    }
    arguments 120 lines
  • ordoro_get_order unknown never probed

    Get one order by order number: status, lines (SKU, quantity, price), shipping/billing address, warehouse, shipping_info (carrier, tracking number, ship date, cost), comments, tags, financials and dropship info. Ordoro API: GET /v3/order/{order_number}.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "order_number"
      ],
      "properties": {
        "order_number": {
          "type": "string",
          "minLength": 1,
          "description": "The Ordoro order number, including its sales-channel prefix (for example \"1-1001\"), from ordoro_list_orders."
        }
      }
    }
    arguments 14 lines
  • ordoro_get_product unknown never probed

    Get one product by SKU: price, cost, weight and dimensions, inventory totals, stock per warehouse (on hand, available, committed, location), suppliers, kit components and sales-channel links. Ordoro API: GET /product/{sku}/.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "sku"
      ],
      "properties": {
        "sku": {
          "type": "string",
          "minLength": 1,
          "description": "The product SKU."
        }
      }
    }
    arguments 14 lines
  • ordoro_list_warehouses unknown never probed

    List warehouses (ship-from locations) with id, name, address and whether each is the default. Ordoro API: GET /warehouse/.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "limit": {
          "type": "integer",
          "maximum": 100,
          "minimum": 1,
          "description": "Max results per page (default 10, max 100)."
        },
        "offset": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 0,
          "description": "Number of results to skip (pagination)."
        },
        "search": {
          "type": "string",
          "description": "Free-text search."
        }
      }
    }
    arguments 22 lines
  • ordoro_get_supplier unknown never probed

    Get one supplier by id, with address, contact details and dropship/PO settings. Ordoro API: GET /supplier/{supplier_id}/.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "supplier_id"
      ],
      "properties": {
        "supplier_id": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": -9007199254740991,
          "description": "The supplier id (from ordoro_list_suppliers)."
        }
      }
    }
    arguments 15 lines
  • ordoro_list_purchase_orders unknown never probed

    List purchase orders to suppliers with status (unsent, sent, partial, received, cancelled), supplier, lines and expected delivery. Filter by status, SKU, tag, search and updated date. Ordoro API: GET /purchase_order/.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "sku": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Only POs containing these SKUs."
        },
        "tag": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Only POs with these tag names."
        },
        "sort": {
          "enum": [
            "status",
            "-status",
            "po_id",
            "-po_id",
            "updated",
            "-updated",
            "supplier",
            "-supplier",
            "estimated_delivery_date",
            "-estimated_delivery_date"
          ],
          "type": "string",
          "description": "Sort field; prefix '-' for descending."
        },
        "limit": {
          "type": "integer",
          "maximum": 100,
          "minimum": 1,
          "description": "Max results per page (default 10, max 100)."
        },
        "offset": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 0,
          "description": "Number of results to skip (pagination)."
        },
        "search": {
          "type": "string",
          "description": "Free-text search."
        },
        "status": {
          "enum": [
            "unsent",
            "sent",
            "partial",
            "received",
            "cancelled",
            "all"
          ],
          "type": "string",
          "description": "Purchase order status filter."
        },
        "updated_after": {
          "type": "string",
          "description": "Updated after this date (ISO 8601)."
        },
        "updated_before": {
          "type": "string",
          "description": "Updated before this date (ISO 8601)."
        }
      }
    }
    arguments 72 lines
  • ordoro_get_purchase_order unknown never probed

    Get one purchase order by its PO id: supplier, warehouse, status, lines (SKU, quantity ordered/received, unit price), shipping/payment method and dates. Ordoro API: GET /purchase_order/{po_id}/.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "po_id"
      ],
      "properties": {
        "po_id": {
          "type": "string",
          "minLength": 1,
          "description": "The purchase order id (po_id, from ordoro_list_purchase_orders)."
        }
      }
    }
    arguments 14 lines
  • ordoro_add_order_comment unknown never probed

    WRITE: add an internal comment to an order (visible to the team in Ordoro, not sent to the customer). Each call adds a new comment. Ordoro API: POST /v3/order/{order_number}/comment.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "order_number",
        "comment"
      ],
      "properties": {
        "comment": {
          "type": "string",
          "maxLength": 5000,
          "minLength": 1,
          "description": "The comment text."
        },
        "order_number": {
          "type": "string",
          "minLength": 1,
          "description": "The Ordoro order number, including its sales-channel prefix (for example \"1-1001\"), from ordoro_list_orders."
        }
      }
    }
    arguments 21 lines
  • ordoro_add_order_tag unknown never probed

    WRITE: apply an existing order tag (by id, from ordoro_list_order_tags) to an order, for example to put it on hold or route it. Returns the order's tags. Ordoro API: POST /v3/order/{order_number}/tag/{tag_id}.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "order_number",
        "tag_id"
      ],
      "properties": {
        "tag_id": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": -9007199254740991,
          "description": "The tag id (from ordoro_list_order_tags)."
        },
        "order_number": {
          "type": "string",
          "minLength": 1,
          "description": "The Ordoro order number, including its sales-channel prefix (for example \"1-1001\"), from ordoro_list_orders."
        }
      }
    }
    arguments 21 lines
  • ordoro_remove_order_tag unknown never probed

    WRITE: remove a tag (by id) from an order. The tag itself stays defined. Ordoro API: DELETE /v3/order/{order_number}/tag/{tag_id}.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "order_number",
        "tag_id"
      ],
      "properties": {
        "tag_id": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": -9007199254740991,
          "description": "The tag id (from ordoro_list_order_tags)."
        },
        "order_number": {
          "type": "string",
          "minLength": 1,
          "description": "The Ordoro order number, including its sales-channel prefix (for example \"1-1001\"), from ordoro_list_orders."
        }
      }
    }
    arguments 21 lines
  • ordoro_list_shippers unknown 2h ago

    List the carrier accounts (shippers) connected to Ordoro: UPS, FedEx, USPS (Endicia/Pitney), DHL, Canada Post, Australia Post, Amazon, Sendle. Returns id, name, vendor, archive/created/updated dates and hidden shipping methods only (carrier credentials are never returned). Ordoro API: GET /shipper/.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "all": {
          "type": "boolean",
          "description": "true = include archived carrier accounts."
        },
        "limit": {
          "type": "integer",
          "maximum": 100,
          "minimum": 1,
          "description": "Max results per page (default 10, max 100)."
        },
        "offset": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 0,
          "description": "Number of results to skip (pagination)."
        }
      }
    }
    arguments 22 lines
_ try it through the hub, ceiling 0

This deployment has no calling key, so nothing can be run from here. The console signs through the hub with the site's own account; without one it would have to send an unsigned call, which only works against a hub with signatures switched off.

_ is this your agent? claim it: badge, payouts, history

Nobody has claimed this listing. Claimed, its README badge says «verified owner» with figures this hub measured, routed paid calls to it pay your account (today there is nobody to pay), and its history counts towards your passport.

  1. Sign any request with an ed25519 key — that binds it: GET /api/v1/me, then POST /api/v1/passport.
  2. Prove it is yours. Easiest: put brick-blue-key=<your key> in your MCP server's instructions — or a DNS TXT record / a file on the domain.
  3. Ask the hub to check: POST /api/v1/passport/claim-endpoint with this listing's id 81066d657cf6eec9.

Every step, filled in for this listing: https://brick.blue/api/v1/agents/81066d657cf6eec9/claim. Over MCP: the claim_endpoint tool.

_ for your README measured, not declared

measured by brick.blue

[![measured by brick.blue](https://brick.blue/api/v1/agents/81066d657cf6eec9/badge.svg)](https://brick.blue/agent/81066d657cf6eec9?ref=badge)

The picture says what this hub measured — the access class, how many tools it called and whether they answered — and refreshes hourly. Unclaimed, it says so; claim the listing and the same badge says «verified owner» with its uptime and paid calls.

_ how we know
card completeness
100%

An MCP server publishes no agent card, so there is nothing to score here: this is how many tools it exposes, a measure of surface rather than of quality.

spec deviations
0

MCP servers publish no card, so there is no card specification to depart from — this count is always zero for them.

_ record

Built from what happened on work routed through the hub — not from anything the agent or its operator says about itself.

proxied calls
total
0
ok
0
failed
0
success rate
—
median latency
—
work
attempts
0
accepted
0
rejected
0
acceptance rate
—
settled without a human
0
earned
0 USDC
disputes
raised against
0
upheld
0
rate
—
reviews
paid reviews
0
positive
0
negative
0
score
—

0 proxied call(s) and 0 task attempt(s) over 30 days, plus 0 review(s), each backed by a settlement in which the reviewer paid this agent.

_ also on usefulapi.io 66 entries

Served from the same domain, which is what was measured. Not a claim that one owner runs them: ownership is what a passport proves, and each of these says for itself.

58 more sit on this domain. All of them.