Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,070Paid calls: 1,521Letters: 13Defects: 1,321counted 3 min ago
teppi

Server definition

Hash
sha256:90a9f2d63d1f701604f96c88d0022891feb75ab85bbacdaac74139615dc5dd94
What it is
What a remote MCP server returned when asked what it offers: 12 tools

The blob, as servednamed by its sha256

{ "instructions": null, "tools": [ { "description": "Report the catalogue as at date: how many SKUs there are, how many price rows are in force, which rows a later row already replaces, and which SKUs carry no price in the profile's default currency. Reads only. Pro.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "date": { "description": "The day the report is in force, YYYY-MM-DD. Default today", "maxLength": 10, "type": "string" }, "limit": { "description": "Maximum rows listed in each section, default and ceiling 500", "maximum": 500, "minimum": 1, "type": "integer" } }, "type": "object" }, "name": "catalogue_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": "Turn a list of sku or role lines into invoice_create-ready and quote_create-ready items priced from the catalogue as of each line's date. An unknown code is refused by name and never priced. Free.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "client": { "description": "Client name or id, copied into both payloads. invoice_create and quote_create both need one", "maxLength": 200, "type": "string" }, "currency": { "$ref": "#/properties/lines/items/properties/currency", "description": "The currency for every line. Defaults to the shared business profile's" }, "date": { "description": "The day the whole list is priced as of, YYYY-MM-DD. Default today", "maxLength": 10, "type": "string" }, "lines": { "description": "The lines to price, each a sku with a quantity or a role with hours", "items": { "additionalProperties": false, "properties": { "currency": { "description": "Overrides the call's currency for this line. Every line on one payload must agree", "pattern": "^[A-Za-z]{3}$", "type": "string" }, "date": { "description": "The day this line is priced as of, YYYY-MM-DD. Overrides the call's date", "maxLength": 10, "type": "string" }, "description": { "description": "Override the catalogue name on the customer's document", "maxLength": 2000, "type": "string" }, "hours": { "description": "Hours worked, for a role line", "exclusiveMinimum": 0, "maximum": 100000, "type": "number" }, "quantity": { "description": "How many, for a sku line", "exclusiveMinimum": 0, "maximum": 1000000, "type": "number" }, "role": { "description": "A rate card role. One of sku or role, never both", "maxLength": 64, "type": "string" }, "sku": { "description": "A catalogue code or product name. One of sku or role, never both", "maxLength": 200, "type": "string" }, "tier": { "description": "Price tier for this line. Overrides the call's tier", "maxLength": 40, "type": "string" } }, "type": "object" }, "maxItems": 200, "minItems": 1, "type": "array" }, "tax_rate": { "description": "VAT percent for lines whose SKU carries no rate of its own, overriding the shared profile", "maximum": 1000, "minimum": 0, "type": "number" }, "tier": { "description": "Price tier for every line. Default standard", "maxLength": 40, "type": "string" } }, "required": [ "lines" ], "type": "object" }, "name": "lines_resolve", "outputSchema": null }, { "description": "Call this tool to render the price list for one currency and tier as an A4 HTML document laid out for print-to-PDF (this hosted endpoint has no PDF renderer) and return a download link valid for one hour: every SKU with its unit, its price in force and the day that price started. Pro.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "currency": { "description": "Defaults to the shared business profile's currency", "pattern": "^[A-Za-z]{3}$", "type": "string" }, "date": { "description": "The day the list is in force, YYYY-MM-DD. Default today", "maxLength": 10, "type": "string" }, "out_path": { "description": "Name for the downloaded file, e.g. trade-prices-april. Defaults to price-list-<currency>-<tier>-<date>; the list comes back as a download link valid for one hour", "maxLength": 1000, "type": "string" }, "tier": { "description": "One tier. Default standard", "maxLength": 40, "type": "string" } }, "type": "object" }, "name": "price_list_pdf", "outputSchema": null }, { "description": "Print the price list as plain text: every SKU with its unit, the price in force on a date and any later price booked, then the labour rate cards, under your business name. Also a .txt download link valid one hour. Free; price_list_pdf writes the A4 page.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "currency": { "description": "Defaults to the shared business profile's currency", "pattern": "^[A-Za-z]{3}$", "type": "string" }, "date": { "description": "The day the list is in force, YYYY-MM-DD. Default today", "maxLength": 10, "type": "string" }, "tier": { "description": "One tier, or omit for standard. Pass all for every tier, which is Pro", "maxLength": 40, "type": "string" } }, "type": "object" }, "name": "price_list_text", "outputSchema": null }, { "description": "Show the hourly rate for a role as of a date and currency: the row picked is the latest valid_from at or before that date, and the answer names it. With no role given, lists every card. Free.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "currency": { "description": "Defaults to the shared business profile's currency", "pattern": "^[A-Za-z]{3}$", "type": "string" }, "date": { "description": "The day the rate is wanted for, YYYY-MM-DD. Default today", "maxLength": 10, "type": "string" }, "role": { "description": "The role, e.g. senior developer. Omit to list every rate card", "maxLength": 64, "type": "string" } }, "type": "object" }, "name": "rate_get", "outputSchema": null }, { "description": "Set the hourly charge-out rate on a labour card: role, currency, hourly_minor in whole MINOR units and the day it starts. The same role, currency and date REPLACES that row rather than adding one. Free.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "currency": { "description": "ISO code this rate is in. Defaults to the shared business profile's currency", "pattern": "^[A-Za-z]{3}$", "type": "string" }, "hourly_minor": { "description": "The hourly rate in whole minor units. 8500 is EUR 85.00 an hour. Never a decimal", "maximum": 1000000000000, "minimum": 0, "type": "integer" }, "note": { "maxLength": 2000, "type": "string" }, "role": { "description": "The role charged for, e.g. senior developer. Lower case, this is what an hours line is priced from", "maxLength": 64, "type": "string" }, "sku": { "description": "A catalogue code this role bills under, so a resolved hours line carries the SKU's name and VAT rate", "maxLength": 64, "type": "string" }, "valid_from": { "description": "The first day this rate applies, YYYY-MM-DD. Default today", "maxLength": 10, "type": "string" } }, "required": [ "role", "hourly_minor" ], "type": "object" }, "name": "rate_set", "outputSchema": null }, { "description": "Delete a catalogue line no rate card points at and that never priced a resolved line, freeing a free-tier slot. Otherwise it is refused, naming what depends on it: reprice it to withdraw it instead.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "sku": { "description": "The SKU code, e.g. WEB-AUDIT, or the product name when only one product carries it", "maxLength": 200, "type": "string" } }, "required": [ "sku" ], "type": "object" }, "name": "sku_delete", "outputSchema": null }, { "description": "Show the price of one SKU as of a date, in one currency and tier: the row picked is the latest valid_from at or before that date, and the answer names the row and any later one already booked. Free.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "currency": { "description": "Defaults to the shared business profile's currency", "pattern": "^[A-Za-z]{3}$", "type": "string" }, "date": { "description": "The day the price is wanted for, YYYY-MM-DD. Default today", "maxLength": 10, "type": "string" }, "sku": { "description": "The SKU code, e.g. WEB-AUDIT, or the product name when only one product carries it", "maxLength": 200, "type": "string" }, "tier": { "description": "Price tier. Default standard", "maxLength": 40, "type": "string" } }, "required": [ "sku" ], "type": "object" }, "name": "sku_get", "outputSchema": null }, { "description": "List catalogue lines with the price in force today, filtered by code prefix, by currency and by tier. A SKU with no price in that currency and tier is listed and said to have none. Free.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "currency": { "description": "The currency the price in force is shown in. Defaults to the profile's", "pattern": "^[A-Za-z]{3}$", "type": "string" }, "date": { "description": "Show the price in force on this day instead of today, YYYY-MM-DD", "maxLength": 10, "type": "string" }, "limit": { "description": "Maximum rows returned, default and ceiling 500", "maximum": 500, "minimum": 1, "type": "integer" }, "prefix": { "description": "Only codes starting with this, e.g. HOST- for every hosting line", "maxLength": 64, "type": "string" }, "tier": { "description": "Price tier. Default standard", "maxLength": 40, "type": "string" } }, "type": "object" }, "name": "sku_list", "outputSchema": null }, { "description": "Add a catalogue line or reprice one: a code, a name, a unit, an optional VAT rate, and price_minor in whole minor units for one currency, tier and valid_from. A repriced line keeps its old rows. Free: 25 SKUs, one tier.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "currency": { "description": "ISO code this price is in. Defaults to the shared business profile's currency", "pattern": "^[A-Za-z]{3}$", "type": "string" }, "duplicate_ok": { "description": "Add it even though another code already carries the same product at the same price. Default false", "type": "boolean" }, "name": { "description": "What it is on the customer's document, e.g. Website audit", "maxLength": 200, "type": "string" }, "note": { "maxLength": 2000, "type": "string" }, "price_minor": { "description": "The price of ONE, in whole minor units. 45000 is EUR 450.00. Never a decimal", "maximum": 1000000000000, "minimum": 0, "type": "integer" }, "sku": { "description": "The code, e.g. WEB-AUDIT. Upper case, no spaces. This is what an invoice line is filed under", "maxLength": 64, "type": "string" }, "tier": { "description": "Price tier, e.g. trade or list. Default standard. A second tier is Pro", "maxLength": 40, "type": "string" }, "unit": { "description": "What one of it is: each, hour, month, 1000 words. Default each. Required the first time", "maxLength": 40, "type": "string" }, "valid_from": { "description": "The first day this price applies, YYYY-MM-DD. Default today", "maxLength": 10, "type": "string" }, "vat_rate": { "description": "VAT percent for this product, overriding the shared profile's default on a resolved line", "maximum": 1000, "minimum": 0, "type": "number" } }, "required": [ "sku", "name", "price_minor" ], "type": "object" }, "name": "sku_set", "outputSchema": null } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:90a9f2d63d1f701604f96c88d0022891feb75ab85bbacdaac74139615dc5dd94 | sha256sum