Server definition
- Hash
- sha256:5ee7a56149fc2870ce95c72748966542ca06e6d16569d122072a64ae6b8c6a1b
- What it is
- What a remote MCP server returned when asked what it offers: 16 tools
The blob, as servednamed by its sha256
{
"instructions": null,
"tools": [
{
"description": "Over a date range: what was credited back per currency and against how many invoices, what is still on order per currency, and every open order past its delivery date with days late. Pro; the list tools are free.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"from": {
"description": "YYYY-MM-DD, earliest document date to count",
"type": "string"
},
"to": {
"description": "YYYY-MM-DD, latest document date to count",
"type": "string"
}
},
"type": "object"
},
"name": "billing_docs_report",
"outputSchema": null
},
{
"description": "Credit one invoice: the whole invoice, a GROSS amount_minor split over its VAT rates, or named lines. Amounts store negative, reusing the invoice's own rates. Free: 5 a month. Send it with credit_note_text.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"amount_minor": {
"description": "Credit this GROSS amount, VAT included, in minor units. Split across the invoice's VAT rates in proportion to each rate's share of the total",
"exclusiveMinimum": 0,
"maximum": 1000000000000,
"type": "integer"
},
"invoice": {
"description": "The invoice number to credit, e.g. INV-2026-0001",
"minLength": 1,
"type": "string"
},
"issue_date": {
"description": "YYYY-MM-DD, defaults to today in your business profile's timezone",
"type": "string"
},
"lines": {
"description": "Credit only these invoice lines. Leave out with amount_minor for a full credit note",
"items": {
"additionalProperties": false,
"properties": {
"line": {
"description": "1-based position of the line on the invoice, as shown by invoice_get",
"exclusiveMinimum": 0,
"type": "integer"
},
"quantity": {
"description": "Credit only this many units. Defaults to the whole line",
"exclusiveMinimum": 0,
"maximum": 1000000000000,
"minimum": -1000000000000,
"type": "number"
}
},
"required": [
"line"
],
"type": "object"
},
"maxItems": 200,
"minItems": 1,
"type": "array"
},
"notes": {
"description": "Free text printed under the totals",
"maxLength": 10000,
"type": "string"
},
"reason": {
"description": "Why the money is being given back, e.g. \"returned goods\" or \"billed twice\". Printed on the document",
"maxLength": 1000,
"minLength": 1,
"type": "string"
}
},
"required": [
"invoice",
"reason"
],
"type": "object"
},
"name": "credit_note_create",
"outputSchema": null
},
{
"description": "Remove one credit note never posted to its invoice and never rendered, freeing that month's slot; the invoice becomes creditable again. One with a dependent is refused: issue a fresh note to reverse a sent one.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"id": {
"description": "Credit note id such as CN-2026-0001, or an exact client name",
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"name": "credit_note_delete",
"outputSchema": null
},
{
"description": "Return one credit note in full by id or exact client name: every negated line, VAT lines, totals, the reason, and the invoice number and date it reverses. Reads only. Use credit_note_list for the ids.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"id": {
"description": "Credit note id such as CN-2026-0001, or an exact client name",
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"name": "credit_note_get",
"outputSchema": null
},
{
"description": "List credit notes newest first: id, invoice, client, basis, reason, currency and the NEGATIVE total, with the amount credited per currency. Filter by invoice, client or issue date range.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"client": {
"description": "Only credit notes for clients whose name contains this text",
"type": "string"
},
"from": {
"description": "YYYY-MM-DD, earliest issue date",
"type": "string"
},
"invoice": {
"description": "Only credit notes issued against this invoice number",
"type": "string"
},
"to": {
"description": "YYYY-MM-DD, latest issue date",
"type": "string"
}
},
"type": "object"
},
"name": "credit_note_list",
"outputSchema": null
},
{
"description": "Call this tool to render one credit note as an A4 print-ready document and return a download link valid for one hour: the invoice layout titled CREDIT NOTE, with the invoice it reverses. Pro.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"id": {
"description": "Credit note id such as CN-2026-0001",
"type": "string"
},
"out_path": {
"description": "Name for the downloaded file, e.g. acme-credit. Defaults to the document id; the document comes back as a download link valid for one hour",
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"name": "credit_note_pdf",
"outputSchema": null
},
{
"description": "Turn a credit note into a plain-text summary to paste into an email: the negated line table, VAT lines, total, reason, and what now comes off the invoice. Also a .txt download link valid one hour. Free; credit_note_pdf writes the A4 document.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"greeting": {
"description": "Opening line, default \"Hello\" plus the client name",
"type": "string"
},
"id": {
"description": "Credit note id such as CN-2026-0001",
"type": "string"
},
"sign_off": {
"description": "Closing line, default your business name from the shared profile",
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"name": "credit_note_text",
"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": "Raise a purchase order to a supplier from items and return its PO number and totals. unit_price is in MAJOR units; currency, VAT and the buyer block come from the shared profile. Free: 5 documents a calendar month.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"currency": {
"description": "Defaults to your business default currency",
"pattern": "^[A-Za-z]{3}$",
"type": "string"
},
"discount_percent": {
"description": "Discount applied to every line, in percent",
"maximum": 100,
"minimum": 0,
"type": "number"
},
"expected_delivery_date": {
"description": "YYYY-MM-DD, when the goods or work are due",
"type": "string"
},
"issue_date": {
"description": "YYYY-MM-DD, defaults to today in your business profile's timezone",
"type": "string"
},
"items": {
"description": "What is being ordered",
"items": {
"additionalProperties": false,
"properties": {
"currency": {
"description": "Only to state the line's currency; every line on one document must agree",
"pattern": "^[A-Za-z]{3}$",
"type": "string"
},
"description": {
"description": "every line needs a description, 500 characters or fewer",
"maxLength": 500,
"minLength": 1,
"type": "string"
},
"quantity": {
"description": "Units ordered, must be greater than zero",
"exclusiveMinimum": 0,
"maximum": 1000000000000,
"minimum": -1000000000000,
"type": "number"
},
"tax_rate": {
"description": "VAT percent for this line, overrides the business default",
"maximum": 1000,
"minimum": 0,
"type": "number"
},
"unit_price_minor": {
"description": "Price per unit in MINOR units: 9000 = 90.00 EUR, 90 = JPY 90. Never a decimal",
"maximum": 1000000000000,
"minimum": 0,
"type": "integer"
}
},
"required": [
"description",
"quantity",
"unit_price_minor"
],
"type": "object"
},
"maxItems": 200,
"minItems": 1,
"type": "array"
},
"notes": {
"description": "Free text printed under the totals, e.g. delivery address or terms",
"maxLength": 10000,
"type": "string"
},
"supplier": {
"description": "Supplier name or client id. A name the invoice server already knows brings its address, email and VAT id onto the order",
"maxLength": 200,
"minLength": 1,
"type": "string"
},
"supplier_address": {
"description": "Postal address for the SUPPLIER block, newlines allowed",
"maxLength": 2000,
"type": "string"
},
"supplier_email": {
"description": "Only if the user gave it; otherwise the stored client's email is used",
"maxLength": 320,
"type": "string"
},
"supplier_vat_id": {
"description": "Supplier VAT / tax registration id",
"maxLength": 64,
"type": "string"
},
"tax_rate": {
"description": "VAT percent for lines with no rate of their own. Defaults to the business default",
"maximum": 1000,
"minimum": 0,
"type": "number"
}
},
"required": [
"supplier",
"items"
],
"type": "object"
},
"name": "purchase_order_create",
"outputSchema": null
},
{
"description": "Remove one purchase order with nothing received and never rendered, freeing that month's slot. One with a receipt is refused, naming it. The PO number is never reissued. purchase_order_receive logs arrivals.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"id": {
"description": "Purchase order id such as PO-2026-0001, or an exact supplier name",
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"name": "purchase_order_delete",
"outputSchema": null
},
{
"description": "Return one purchase order in full by id or exact supplier name: buyer and supplier blocks, every line with unit price and VAT, totals, the delivery date, status and every receipt with its date and note.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"id": {
"description": "Purchase order id such as PO-2026-0001, or an exact supplier name",
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"name": "purchase_order_get",
"outputSchema": null
},
{
"description": "List purchase orders newest first: id, supplier, order and expected delivery dates, status open, partially_received or received, currency, total and received date. Filter by status, supplier or date range.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"from": {
"description": "YYYY-MM-DD, earliest order date",
"type": "string"
},
"status": {
"description": "Default \"all\"",
"enum": [
"open",
"partially_received",
"received",
"all"
],
"type": "string"
},
"supplier": {
"description": "Only orders to suppliers whose name contains this text",
"type": "string"
},
"to": {
"description": "YYYY-MM-DD, latest order date",
"type": "string"
}
},
"type": "object"
},
"name": "purchase_order_list",
"outputSchema": null
},
{
"description": "Call this tool to render one purchase order as an A4 print-ready document and return a download link valid for one hour: the invoice layout titled PURCHASE ORDER, with the buyer and supplier. Pro.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"id": {
"description": "Purchase order id such as PO-2026-0001",
"type": "string"
},
"out_path": {
"description": "Name for the downloaded file, e.g. acme-credit. Defaults to the document id; the document comes back as a download link valid for one hour",
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"name": "purchase_order_pdf",
"outputSchema": null
},
{
"description": "Record that an order arrived. partial keeps it open and can be repeated, each receipt kept with its date and note; a full receipt closes it. An order already received, or a date before the order date, is refused.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"date": {
"description": "YYYY-MM-DD, defaults to today",
"type": "string"
},
"id": {
"description": "Purchase order id such as PO-2026-0001",
"type": "string"
},
"note": {
"description": "What arrived, e.g. \"8 of 10 units, 2 back-ordered\"",
"maxLength": 10000,
"type": "string"
},
"partial": {
"description": "True when only some of the order arrived. The order stays open and can be received again. Default false",
"type": "boolean"
}
},
"required": [
"id"
],
"type": "object"
},
"name": "purchase_order_receive",
"outputSchema": null
},
{
"description": "Turn a purchase order into a plain-text order to paste into an email: the line table, VAT lines, total, and a line asking the supplier to deliver by the date and quote the PO number. Also a .txt download link valid one hour. Free on every tier.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"greeting": {
"description": "Opening line, default \"Hello\" plus the supplier name",
"type": "string"
},
"id": {
"description": "Purchase order id such as PO-2026-0001",
"type": "string"
},
"sign_off": {
"description": "Closing line, default your business name from the shared profile",
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"name": "purchase_order_text",
"outputSchema": null
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:5ee7a56149fc2870ce95c72748966542ca06e6d16569d122072a64ae6b8c6a1b | sha256sum