Server definition
- Hash
- sha256:d2a78f2958f86199ce7a0024d2ff178c05845ba2745beb4f99186d7f222df281
- What it is
- What a remote MCP server returned when asked what it offers: 11 tools
The blob, as servednamed by its sha256
{
"instructions": null,
"tools": [
{
"description": "Create a goods-receipt note (GRN) against an open purchase order. Give one cell per PO line: the whole units received and/or damaged. received is checked against the line's ordered quantity and the PO's over tolerance; receiving past the over tolerance is refused unless declared damaged. Shortage is recorded automatically (ordered minus received, floored at zero) and shown as a discrepancy. Partial deliveries are fine: raise several GRNs against the same PO. Free tier, full CRUD.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"carrier": {
"description": "Delivered by",
"maxLength": 60,
"type": "string"
},
"lines": {
"description": "Which PO lines you are receiving now",
"items": {
"additionalProperties": false,
"properties": {
"damageNote": {
"description": "What was damaged",
"maxLength": 400,
"type": "string"
},
"damaged": {
"description": "Whole units received but damaged",
"maximum": 1000000,
"minimum": 0,
"type": "integer"
},
"line": {
"description": "PO line to receive, e.g. L01",
"maxLength": 40,
"type": "string"
},
"received": {
"description": "Whole units of good stock",
"maximum": 1000000,
"minimum": 0,
"type": "integer"
},
"shortage": {
"description": "Whole units short; when you know the count",
"maximum": 1000000,
"minimum": 0,
"type": "integer"
},
"shortageNote": {
"description": "Why it is short",
"maxLength": 400,
"type": "string"
}
},
"required": [
"line",
"received"
],
"type": "object"
},
"maxItems": 200,
"minItems": 1,
"type": "array"
},
"note": {
"description": "Memo for the whole GRN",
"maxLength": 400,
"type": "string"
},
"po": {
"description": "Purchase-order id or reference, e.g. PO-0001",
"maxLength": 40,
"type": "string"
},
"receivedAt": {
"description": "ISO date of physical receipt (default today)",
"maxLength": 10,
"type": "string"
}
},
"required": [
"po",
"lines"
],
"type": "object"
},
"name": "grn_add",
"outputSchema": null
},
{
"description": "Close an open GRN. A closed GRN can no longer take lines, and its discrepancies are treated as resolved. Closing is free-tier and never mutates the PO.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"grn": {
"description": "Open GRN id, e.g. GRN-0001",
"maxLength": 40,
"type": "string"
}
},
"required": [
"grn"
],
"type": "object"
},
"name": "grn_close",
"outputSchema": null
},
{
"description": "List lines that are not as ordered: damaged units, a declared shortage, or received below the PO line's under tolerance. Optionally filter to one PO.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"includeResolved": {
"default": false,
"description": "Include GRNs that are closed (resolved)",
"type": "boolean"
},
"po": {
"description": "Only discrepancies on this purchase order",
"maxLength": 40,
"type": "string"
}
},
"type": "object"
},
"name": "grn_discrepancy",
"outputSchema": null
},
{
"description": "Pro. Export every GRN (or just one PO's GRNs) as CSV with a header row: grn,po,po_reference,received_at,carrier,status,line,sku,received,damaged,shortage,damage_note,shortage_note. Watermark-free and not truncated.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"po": {
"description": "Export GRNs for one purchase order only",
"maxLength": 40,
"type": "string"
}
},
"type": "object"
},
"name": "grn_export_csv",
"outputSchema": null
},
{
"description": "Get a single goods-receipt note by id, with its lines, damage and shortage per line.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"grn": {
"description": "GRN id, e.g. GRN-0001",
"maxLength": 40,
"type": "string"
}
},
"required": [
"grn"
],
"type": "object"
},
"name": "grn_get",
"outputSchema": null
},
{
"description": "Add another PO line (or more units on a line already open on this GRN) to an existing open goods-receipt note. Useful when one delivery arrives in batches. The over-tolerance gate still applies to the PO line's cumulative received count across every GRN. Free tier, full CRUD.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"damageNote": {
"description": "What was damaged",
"maxLength": 400,
"type": "string"
},
"damaged": {
"description": "Whole units received but damaged",
"maximum": 1000000,
"minimum": 0,
"type": "integer"
},
"grn": {
"description": "Open GRN id, e.g. GRN-0001",
"maxLength": 40,
"type": "string"
},
"line": {
"description": "PO line to receive, e.g. L01",
"maxLength": 40,
"type": "string"
},
"received": {
"description": "Whole units of good stock",
"maximum": 1000000,
"minimum": 0,
"type": "integer"
},
"shortageNote": {
"description": "Why it is short",
"maxLength": 400,
"type": "string"
}
},
"required": [
"grn",
"line",
"received"
],
"type": "object"
},
"name": "grn_line_add",
"outputSchema": null
},
{
"description": "List goods-receipt notes, newest first, optionally filtered to one purchase order.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"includeLines": {
"default": false,
"description": "Include line detail",
"type": "boolean"
},
"po": {
"description": "Only GRNs against this purchase order",
"maxLength": 40,
"type": "string"
}
},
"type": "object"
},
"name": "grn_list",
"outputSchema": null
},
{
"description": "Reconcile every purchase order against every GRN: open POs (not yet fully received), POs fully received within tolerance, POs with at least one discrepancy, and per-line open/short/damaged counts. Nothing is written.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"includeOnlyDiscrepancies": {
"default": false,
"description": "Only list POs with at least one discrepancy",
"type": "boolean"
}
},
"type": "object"
},
"name": "grn_status_report",
"outputSchema": null
},
{
"description": "Turn Pro on for this connection with key, an MCPL1.<payload>.<signature> issued at checkout for this server or the bundle. Data under your token stays; a wrong or expired key changes nothing. license_status confirms it.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"key": {
"description": "License key from checkout, MCPL1.<payload>.<signature>",
"type": "string"
}
},
"required": [
"key"
],
"type": "object"
},
"name": "license_activate",
"outputSchema": null
},
{
"description": "Report this endpoint's licence state for your token as JSON: the product, the tier free or pro, why it is not Pro, and the checkout URL. Call it to explain a free-tier refusal. No arguments, nothing changes.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {},
"type": "object"
},
"name": "license_status",
"outputSchema": null
},
{
"description": "Create a purchase order to receive goods against. Lines carry a sku, a description and an ordered whole-unit quantity. Over/under tolerances are whole percentages allowed above/below ordered before a GRN is flagged. Ids look like PO-0001. Free tier, full CRUD.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"lines": {
"description": "Lines on this purchase order",
"items": {
"additionalProperties": false,
"properties": {
"description": {
"description": "What it is",
"maxLength": 160,
"type": "string"
},
"ordered": {
"description": "Whole units ordered",
"maximum": 1000000,
"minimum": 1,
"type": "integer"
},
"sku": {
"description": "Stock-keeping unit / model code",
"maxLength": 40,
"type": "string"
}
},
"required": [
"sku",
"description",
"ordered"
],
"type": "object"
},
"maxItems": 200,
"minItems": 1,
"type": "array"
},
"overTolerancePct": {
"default": 10,
"description": "Whole % extra allowed above ordered (default 10)",
"maximum": 100,
"minimum": 0,
"type": "integer"
},
"reference": {
"description": "Your own purchase-order number",
"maxLength": 60,
"type": "string"
},
"supplier": {
"description": "Who you ordered from",
"maxLength": 60,
"type": "string"
},
"underTolerancePct": {
"default": 10,
"description": "Whole % short allowed below ordered (default 10)",
"maximum": 100,
"minimum": 0,
"type": "integer"
}
},
"required": [
"reference",
"supplier",
"lines"
],
"type": "object"
},
"name": "po_add",
"outputSchema": null
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:d2a78f2958f86199ce7a0024d2ff178c05845ba2745beb4f99186d7f222df281 | sha256sum